唐 亞,白治江
(上海海事大學 信息工程學院,上海 201306)
基于LDA主題相似度的SVM遷移學習
唐 亞,白治江
(上海海事大學 信息工程學院,上海201306)
針對文本分類領域中的遷移學習方法,提出了一種基于LDA(LatentDirichletAllocation)主題生成模型相似度的支持向量機(SVM)遷移學習新思路?;诖怂枷?,提出了遷移學習算法LDA-TSVM。本算法通過對目標域的主題進行分類,依據(jù)主題分類信息熵對訓練數(shù)據(jù)進行篩選,分別計算每個訓練樣本的權重,使得訓練集與目標集有很高的相似度,從而達到遷移學習的目的。本算法不僅未引入輔助集,而且還考慮了樣本本身的差異,有效地提高了源域數(shù)據(jù)集與目標域數(shù)據(jù)集的相似性。實驗結果表明了新遷移算法的有效性。
遷移學習;LDA;信息熵;分類;支持向量機
傳統(tǒng)的機器學習是建立在兩個基本的假設上:(1)用于學習的訓練數(shù)據(jù)與測試數(shù)據(jù)服從相同的數(shù)據(jù)分布;(2)必須有足夠可利用的訓練樣本。然而這些條件在許多實際應用中并不成立。通常,新的數(shù)據(jù)領域中只有少量的有標記數(shù)據(jù),而直接對該領域數(shù)據(jù)進行大量的人工標注代價昂貴,甚至可能不存在大量的樣本供用戶進行標注。然而人們在其他相關領域中已經(jīng)積累了大量數(shù)據(jù),盡管它們可能已經(jīng)過時,但仍然包含一些可供借鑒的知識。這正是遷移學習所要解決的問題[1-3]。
遷移學習是指通過已有的知識來學習新的知識,從而解決新的問題。例如人的舉一反三能力,學會C語言的人,對Java和Python等其他語言也可以很快掌握;會下象棋的人,學習國際象棋也會很容易。這就是人類在相似領域通過知識的遷移解決新的問題的能力。然而,傳統(tǒng)的機器學習和數(shù)據(jù)挖掘中僅僅只關注同一個領域或相同的任務,即學會了下象棋,對國際象棋的學習也沒有任何幫助,從頭學習反而浪費了大量的時間和精力。根據(jù)源域和目標域的相似度,可以將遷移學習分為歸納式遷移學習、無監(jiān)督遷移學習和直推式遷移學習。其中歸納式遷移學習是目前研究的熱門,即源域包含有大量標簽數(shù)據(jù),而目標域已標簽的數(shù)據(jù)不足以訓練可用的模型,同時源域和目標域分布不同。
本文研究的同樣是歸納式遷移學習,提出了一種新的歸納式遷移學習算法(LDA-TSVM),該算法是基于主題模型相似度,依據(jù)信息熵對訓練集進行篩選,選出與目標相關度高的樣本數(shù)據(jù)和少量已標記的目標數(shù)據(jù),分別計算出每個樣本的權重,最后用SVM進行訓練,將原始領域學習到的模型成功遷移到目標領域。
LDA模型是一種文檔主題生成模型。它是非監(jiān)督機器學習技術對文本數(shù)據(jù)的主題信息進行建模的方法。它有3層生成式貝葉斯網(wǎng)絡結構[4],基于這樣一種前提假設:文檔是由若干個隱含主題構成,而這些主題是由文本中若干個特定詞匯構成,忽略文檔中的句法結構和詞語出現(xiàn)的先后順序[5]。其結構圖如圖1所示,LDA模型的層次結構依次為文檔集合層、主題層(C1,C2,…,Cn)和特征詞層。
圖1 LDA模型隱含主題的拓撲結構示意圖
如圖2所示,LDA模型是有向概率圖模型[6],α和β表示語料級別的參數(shù),其中α是與文檔中主題分布相關的狄利克雷超參數(shù),β是各個主題對應的單詞概率分布相關的狄利克雷超參數(shù),一般依據(jù)經(jīng)驗提前設定。 本文依據(jù)LDA概率主題模型生成文本的過程[7]對數(shù)據(jù)集進行主題建模。
圖2 LDA模型有向概率圖
本文提出的LDA-TSVM算法主要考慮源域和目標域的主題相似度,從樣本本身的差異著手,去除影響遷移效果的噪聲數(shù)據(jù),達到更好的遷移效果。
2.1LDA-TSVM算法思想
LDA-TSVM算法思想是,對相似但不相同的兩個領域數(shù)據(jù)Td、Ts(Td為訓練樣本集,Ts為目標樣本集)分別做LDA主題模型分類,在LDA建模時需要對所建模型做相應的評估,即在對文本進行LDA迭代時,依據(jù)信息熵的理論得到信息熵最小的一次迭代系數(shù),即為LDA模型的迭代參數(shù)的最優(yōu)解。當獲得最優(yōu)主題分類模型后,通過對訓練集和目標集的主題進行相似度的計算篩選出訓練樣本主題集中相似度最高的幾個主題。將以上篩選出的主題中的所有訓練樣本以及少量已標簽的目標集樣本共同作為最終的訓練集,對訓練集加上相應的權重值后,通過分類器SVM進行訓練。圖3即為LDA-TSVM算法模型的流程框架圖。
圖3 LDA-TSVM算法模型的流程框架圖
2.2LDA-TSVM算法流程
基于以上思想設計的基于主題相似度的SVM遷移學習算法LDA-TSVM如下:
輸入:Td,Ts;
輸出:h;
(1)對訓練集Td、目標集Ts分別做LDA主題模型分類,得到訓練集主題TopicDi(i=1,2,3,…,m)、文檔主題概率矩陣Ad和主題詞概率矩陣Bd、目標集主題TopicSj(j=1,2,3,…,n)、文檔主題概率矩陣As和主題詞概率矩陣Bs;
(2)對LDA主題模型分別進行評估,分別計算訓練集樣本分布類的信息熵以及目標域中已標記T的樣本分布類信息熵,得到最優(yōu)的LDA迭代參數(shù)K,L;
(3)計算訓練集和目標集的主題相似度,篩選出訓練集中與目標集主題相似度最高的N(1≤Nlt;m)個主題;
(4)為每個篩選后的訓練集Td增加權重W=1+Pd(Pd為Ad中每個文檔相對該主題的概率),已標記的目標集T的權重設為1;
(6)用SVM在集合Ntrain上訓練,得到分類器h;
(7)結束。
2.3LDA信息熵評估
在以上應用LDA對測試集和目標集進行主題分類時,對于LDA主題分類模型的評估,即算法的迭代參數(shù)進行選擇時,應用到了信息論中信息熵的理論。
熵這個概念來自于統(tǒng)計熱力學,它是系統(tǒng)混亂程度的量度,若系統(tǒng)的混亂程度越高,則其熵值就越高;反之,若系統(tǒng)是接近有序的,則其熵值越低。信息理論中,熵通常也稱作信息熵或Shannon熵,用熵來表示不確定性和無組織性的度量,它主要刻畫信息含量的多少。
因此在LDA模型里,依據(jù)以上理論推斷,信息熵越小,分類的模型純度越高,效果越好。經(jīng)過實驗表明,該評估方法是有效的。現(xiàn)進行如下定義:類別標簽數(shù)C,LDA主題建模后的主題數(shù)為N,主題Tj=(t1,t2,t3,…,tN),j為LDA迭代次數(shù),ti為第j次迭代的第i個主題,信息熵函數(shù)為H(),數(shù)據(jù)集為D,主題ti下的文檔集為Di,數(shù)據(jù)集的文檔個數(shù)為D。則有以下公式:
(1)
其中根據(jù)信息熵公式,對于任意一個隨機變量C,每個主題的信息熵Hi有:
(2)
其中P(c)為該主題下文本屬于類c的分布概率。
根據(jù)之前的推斷,可得到信息熵取最小值時的迭代系數(shù)Tmin:
(3)
Tmin即為LDA模型的迭代參數(shù)的最優(yōu)主題劃分。
2.4相似度計算
當獲得最優(yōu)主題分類模型后,假設m為訓練集主題數(shù),n為目標集主題數(shù),接下來一步便是訓練集和目標集的主題相似度的計算。本算法應用了歐幾里得最小距離,其思想是算出每個訓練集主題的詞向量對于每個目標集主題的詞向量的相似度Sij(i=1,2,3,…,m,j=1,2,3,…,n),選擇每個訓練集主題對于所有目標集主題的最小值作為這個主題對于目標集的距離Si(i=1,2,3,…,m),即Si=minSij(j=1,2,3,…,n)。篩選出相似度最高的N(1≤N≤m)個主題作為最終的訓練集。若訓練集詞向量為Vd,目標集主題詞向量為Vs,則其中兩向量之間相似度S算法的算法流程如下:
輸入:Vd,Vs;
輸出:S;
(1)依次提取訓練集詞向量Vd=(x1,x2,x3,…,xk),目標集主題詞向量Vs=(y1,y2,y3,…,yl);
(4)對兩向量做歐幾里得距離計算:
(4)
(5)結束。
3.1實驗數(shù)據(jù)
本文實驗數(shù)據(jù)集是20Newsgroup,它是文本分類中常用的語料庫,分為7個大類別和20個子類別,大約20 000個新聞類文檔。使用與文獻[8]中相類似的預處理方法來生成本文所需要的數(shù)據(jù)集分布,即將大類別下不同子類別的數(shù)據(jù)重新組合來生成原始領域和目標領域數(shù)據(jù)集,使得原始領域和目標領域的分布相似但分布不相同。如表1所示,從rec大類中選擇autos和motorcycle小類,從talk中選擇politics.guns和politics.mics小類,用這四小類作為訓練集,其中rec類的樣本為正,talk類的樣本為負。然后以rec大類中剩下的sport.basketball小類,talk大類中剩下的politics.mideast小類作為目標集。同理對rec和sci兩大類進行重新組合。因為各大類中選取的小類有所不同,這就使得訓練集和目標集的分布達到一定的差異性。為了驗證其差異性,通過相對熵來進行計算,相對熵又稱為KL散度(Kullback-Leibler divergence),常被用來衡量兩個概率分布的差異。KL散度的計算公式如下:
(5)
其中p(x)和q(x)為兩個概率分布函數(shù)。利用公式(5),可計算出實驗中訓練集與目標集的KL散度分別為1.102和1.055,因此它們的訓練集與目標集的分布都達到了實驗所需要的差異性。
表1 20Newsgroup數(shù)據(jù)集分布
3.2實驗性能對比
在對數(shù)據(jù)集進行LDA分類時,依據(jù)數(shù)據(jù)集的數(shù)量特點,將訓練集主題數(shù)選為5,alpha為11,beta為0.01,測試集主題數(shù)選為2,alpha為26,beta為0.01,依據(jù)第2.3節(jié)的理論,計算出訓練集迭代次數(shù)為500,測試集迭代次數(shù)為120。為驗證LDA-TSVM算法的有效性,本文分別從傳統(tǒng)機器學習和遷移學習兩個方面設計多組實驗進行了對比,如表2所示。
表2 實驗中采用的對比算法
表2中,SVMs、SVMd和SWMt分別表示經(jīng)典的SVMlight[9]算法,它們的訓練集分別為Ts、Td、Td∪Ts,經(jīng)過對比實驗結果的精確度以證明本文算法的優(yōu)越性。以上算法均在Windows 10操作系統(tǒng)、12 GB內(nèi)存、Intel core i7 2.5 GHZ CPU、Java和Python編程環(huán)境下實驗。
3.3實驗結果與分析
實驗中采用Precision、Recall、F1-Measure等數(shù)據(jù)衡量實驗的結果。表3、表4展示了傳統(tǒng)機器學習算法和遷移學習算法在數(shù)據(jù)集上的分類結果。
表3 數(shù)據(jù)集rec/talk的LDA-TSVM實驗結果
表4 數(shù)據(jù)集rec/sci的LDA-TSVM實驗結果
通過實驗結果可以看出,在rec/talk屬性的實驗中,LDA-TSVM分類比傳統(tǒng)的SVM提高了14%,F(xiàn)1-Measure提高了37.2%,Recall值提高了28%,相比于SVMd以及SVMt都有將近15%的提高,這是因為LDA-TSVM算法過濾了訓練樣本中的有害樣本,使得訓練集與目標集的相似度有了一定的提高。在屬性rec/sci的實驗中,從SVMs與SVMt的比較中發(fā)現(xiàn),SVMt的分類結果略差于SVMs,這一現(xiàn)象的出現(xiàn)是由于在SVMt的訓練過程中,包含了一些有害樣本,使得SVMt算法的訓練精度相比于SVMs有所降低,該現(xiàn)象也表明了消除有害樣本對遷移學習的重要性。
在實驗中還發(fā)現(xiàn),隨著目標域數(shù)據(jù)集中已標簽樣本數(shù)的增加,不同算法的分類精度也有著一定的影響。 實驗在rec/talk 數(shù)據(jù)集上進行。其中已標簽樣本數(shù)依次取樣本總數(shù)的1%,5%,10%, 20%, 30%, 40%, 50%,分別比較SVMs、LDA-TSVM兩方法的分類精度, 如圖4所示。
圖4 目標域已標記樣本變化對分類精度的影響
由圖4可知,隨著目標域已標記樣本數(shù)量增加,SVMs分類精度也增加,當比例達到30%時分類精度趨于穩(wěn)定;當目標域已標記樣本小于10%時,LDA-TSVM效果顯著高于SVMs,大于10%時效果相當,當增大到50%時,LDA-TSVM效果則不如SVMs,這是因為源域數(shù)據(jù)集中不僅有有助于目標域訓練的有用數(shù)據(jù),同時也存在一些有害數(shù)據(jù)。當已標記樣本的數(shù)量不足以訓練出一個模型時,源域中有用的數(shù)據(jù)會幫助目標域訓練,然而當已標記的樣本數(shù)足夠訓練出一個較好的分類模型時,有害數(shù)據(jù)則會對分類效果產(chǎn)生負作用。
本文采用遷移學習的思想,針對數(shù)據(jù)不同主題分類的相似度計算,依據(jù)主題分類信息熵對訓練數(shù)據(jù)篩選出對目標域有用的數(shù)據(jù)進行訓練,從而達到遷移學習的效果,提出了LDA-TSVM算法。如何快速選擇合適的參數(shù)是一個關鍵性問題,對本算法性能有很大的影響。使用LDA進行評估的時候去掉部分主題的文檔,可能造成數(shù)據(jù)分布不平衡的問題[10],后續(xù)工作會對此深入研究。
[1] PAN S J, Yang Qiang. A survey on transfer learning [J]. IEEE Transactions on Knowledge and Data Engineering, 2010, 22(10):1345-1359.
[2] Tao Jianwen, CHUNG F L, Wang Shitong. A kernel learning framework for domain adaptation learning[J]. Science China Information Sciences, 2012, 55(9): 1983-2007.
[3] Tao Jianwen, CHUNG F L, Wang Shitong. On minimum distribution discrepancy support vector machine for domain adaptation[J]. Pattern Recognition, 2012, 45(11):3962-3984.
[4] Dong Xiaolei,Wang Licheng, Cao Zhenfu. New public key cryptosystems with lite certification authority[EB/OL].(2013-3-16)[2017-04-20]http://ePrint.iacr.org/2016/154.
[5] 潘耘, 王勵成, 曹珍富,等. 基于輕量級CA的無線傳感器網(wǎng)絡密鑰預分配方案[J]. 通信學報, 2009, 30(3):130-134.
[6] 徐戈, 王厚峰. 自然語言處理中主題模型的發(fā)展[J]. 計算機學報, 2011, 34(8):1423-1436.
[7] 張明慧, 王紅玲, 周國棟. 基于LDA主題特征的自動文摘方法[J]. 計算機應用與軟件, 2011, 28(10):20-22.
[8] Wu Pengcheng, DIETTERICH T G. Improving SVM accuracy by training on auxiliary data sources[J]. ICML’04 Proceedings of the twenty-first International Conference on Machine Learning, 2004.
[9] JOACHIMS T. Learning to classify text using support vector machines[M]. Kluwer Academic Publishers, 2002.
[10] 徐麗麗, 閆德勤. 不平衡數(shù)據(jù)加權集成學習算法[J]. 微型機與應用, 2015, 34(23):7-10.
2017-04-24)
唐亞(1988-),男,碩士,主要研究方向:信息處理與模式識別。
白治江(1962-),男,博士,副教授,主要研究方向:模式識別、人工智能。
SVM transfer learning based on LDA subject similarity
Tang Ya, Bai Zhijiang
(Information Engineering College, Shanghai Maritime University, Shanghai 201306, China)
In order to discuss the method of transfer learning in the field of text classification, a new transfer learning method of Support Vector Machine (SVM) based on the LDA(Latent Dirichlet Allocation) similarity is presented. Based on this method, this paper proposes transfer learning algorithm LDA-TSVM. By classifying the subject of target domain, the algorithm selects the training data according to the information entropy of subject classification and calculates weights of the training samples respectively to improve the similarity between the training set and the non-classified set, so as to achieve the purpose of transfer learning. This algorithm does not introduce the auxiliary set, and considers the differences of the sample itself, which effectively enhances the similarity between the data set from the source domain and the data set from the target domain. Extensive experiments have verified the efficiency of the new transfer algorithm.
transfer learning; LDA; information entropy; classification; SVM
TP31
A
10.19358/j.issn.1674- 7720.2017.22.017
唐亞,白治江.基于LDA主題相似度的SVM遷移學習J.微型機與應用,2017,36(22):62-65.