趙傳君,王素格,2*,李德玉,2
(1.山西大學 計算機與信息技術學院,山西 太原 030006; 2.計算智能與中文信息處理教育部重點實驗室,山西 太原 030006)
傳統(tǒng)的情感分類一般假設用于訓練和測試數(shù)據(jù)的情感分布是一致的。然而在現(xiàn)實條件下,情感的表達是領域依賴的,不同領域的情感分布是不一致的[1-2]。在社會媒體中,用戶傾向于在不同的領域中用不同的情感詞來表達情感,而且同一個情感詞或者短語在不同的領域中的情感極性可能是不同的[3]。因此,當一個源領域訓練的分類器轉移到另一個與源領域特征集和特征分布不一致的目標領域時,效率和精度會出現(xiàn)明顯下降??珙I域的情感分類被定義為通過遷移源領域的情感信息到目標領域,利用相關源領域帶標簽的數(shù)據(jù)學習一個精確的情感分類器,實現(xiàn)對目標領域不帶標簽數(shù)據(jù)的情感極性分類任務[4]。在解決跨領域的情感分類任務時,遷移學習(Transfer learning,TL)通過實例遷移、特征遷移、模型遷移和相關知識遷移等手段將源領域的情感知識遷移到目標領域的情感分類任務中。遷移學習的引入,有效減少了目標領域訓練數(shù)據(jù)的規(guī)模,還可以有效避免過度擬合現(xiàn)象。此外,遷移學習能夠通過發(fā)現(xiàn)大數(shù)據(jù)和小數(shù)據(jù)問題之間的關聯(lián),把從大數(shù)據(jù)中發(fā)現(xiàn)的知識遷移到特定的小數(shù)據(jù)問題中[5]。
在深度學習(Deep Learning,DL)背景下,目標領域的帶標簽數(shù)據(jù)往往不足以訓練一個有效的深度神經網(wǎng)絡模型。在此情況下,標注大量的目標領域訓練數(shù)據(jù)是非常耗時耗力的。深度遷移學習(Deep Transfer Learning,DTL)能夠通過共享源領域和目標領域的特征表示和部分模型參數(shù),將源領域中學到的特征表示遷移到目標領域中,以此利用神經網(wǎng)絡的可遷移性提高目標領域任務的表現(xiàn)[6]??珙I域情感分類任務往往存在多個用于訓練的源領域數(shù)據(jù)。集成學習作為機器學習的研究熱點之一,其目的是利用多個模型的差異性提高學習系統(tǒng)的泛化性能[7]。集成深度遷移學習(Ensemble of Deep Transfer Learning,EnDTL)利用集成學習和深度遷移學習的優(yōu)勢,通過共享領域間的模型參數(shù)和特征表示,將多個源領域信息進行融合,相比較單源領域可減少過擬合的風險,有效避免負遷移現(xiàn)象[8]。通過遷移兩個或更多的源領域的知識來輔助目標領域分類,與目標領域有較高相關度的源領域數(shù)據(jù)集應具有較高的遷移率[9-10]。
目前,多源領域情感遷移問題存在以下兩點挑戰(zhàn):(1)不是所有的源領域知識都可以應用到目標領域中,相關性較低的樣本會引入大量負遷移知識,反而會降低目標領域預測分類器的分類性能;(2)多個源領域情感知識之間往往存在共性和交叉,如何有效融合多個源領域的信息來輔助目標領域的分類成為關鍵。
本文從參數(shù)遷移和集成學習的角度,提出了一種多源信息融合的集成深度遷移學習跨領域文本情感分類框架。首先采用字符向量增強的深度卷積神經網(wǎng)絡模型(Characters Enhanced Deep CNNs Model)進行深度特征提取。通過遷移模型中的共享網(wǎng)絡部分和重新訓練領域特定層,完成從源領域訓練模型到目標領域訓練模型的遷移。采用目標領域帶標簽數(shù)據(jù)來確定每個分類模塊的權重系數(shù),利用集成學習策略融合多個源領域知識提高框架的魯棒性。在英文多領域數(shù)據(jù)集上的實驗表明,本文提出的集成深度遷移學習框架較基準方法可有效提高多源跨領域情感分類的準確率。
已有很多學者利用遷移學習算法實現(xiàn)源領域到目標領域的情感遷移[11],而目標領域分類預測有效性很大程度上取決于源領域與目標領域之間的相關性程度和所采用的遷移算法[12]。按照可用的源領域的個數(shù),跨領域情感分類可分為單源領域(Single-source Domain)和多源領域(Multi-source Domains)的跨領域遷移。本文相關工作主要介紹在單領域上的深度情感遷移學習和多源跨領域遷移學習。
單源跨領域情感分類往往是根據(jù)單個源領域的數(shù)據(jù)完成到目標領域的情感遷移。最新的研究是利用端到端的深度神經網(wǎng)絡來實現(xiàn)源領域到目標領域的情感遷移任務,主要是利用參數(shù)遷移的手段實現(xiàn)訓練模型的遷移。Bollegal等人[13]將跨領域情感分類看作嵌入學習任務,構造了三種目標函數(shù),分別是共同特征的分布式屬性、源領域文本的標簽約束信息、源領域和目標領域不帶標記樣本的幾何特性。Zhao等人[14]針對短文本跨領域情感分類任務提出了一種兩階段的雙向長短時記憶模型(Bi-LSTM)和參數(shù)遷移框架,通過使用少量的目標領域訓練樣本共享Bi-LSTM網(wǎng)絡的底層參數(shù)和重新訓練高層參數(shù)。為了解決源領域訓練的分類器在其他目標領域表現(xiàn)不佳的問題,Zhu等人[15]將特征抽取方法合并到神經網(wǎng)絡模型中,并應用到跨領域情感分類中。針對跨領域的情感分類問題,Li等人[16]提出了兩種端到端的對抗記憶網(wǎng)絡框架,分別是情感分類和領域分類記憶網(wǎng)絡。同樣,為了解決情感分類的領域適應性問題,Bach等人[17]提出了特征學習和特征子空間映射方法,并將詞嵌入和典型相關性分析應用到跨領域情感分類任務上。在深度神經網(wǎng)絡基礎上,遷移學習用于特定任務將會受到大規(guī)模語料集的限制,Wei等人[18]提出了一種兩層的卷積神經網(wǎng)絡,用于跨領域的產品評論分類任務。Glorot等人[19]提出了一種深度學習策略來解決情感分類的領域適應性問題。通過使用一種無監(jiān)督的深度學習范式來獲得每篇評論的表示,在Amazon四種類型的產品評論上進行實驗,表明了使用高層次特征訓練的情感分類器優(yōu)于基準方法。Yu等人[20]使用神經網(wǎng)絡架構來研究跨領域的情感分類問題,借鑒結構一致化學習策略,利用兩個輔助的任務并引入句子嵌入跨領域情感分類框架中。
當存在多個源領域數(shù)據(jù)集的情況下,多源遷移學習方法提取的遷移知識已不再局限于單個的源領域數(shù)據(jù)集,而是來自于兩個或多個源領域數(shù)據(jù)集。大部分多源遷移學習主要采用基于樣本遷移或者參數(shù)遷移的學習方法。與本文較相關的為參數(shù)遷移。從參數(shù)遷移的角度看,Yao等人[21]提出了TaskTrAdaBoost算法,假設目標領域預測模型與具有強遷移性的源領域數(shù)據(jù)集共享某些模型參數(shù)。在多個領域情況下,Hoffman等人[22]在分層聚類技術基礎上,利用可用的目標類別信息,從而成功地發(fā)現(xiàn)潛在的源領域。Tan等人[23]定義了多視角和多源領域的遷移學習,提出了一種利用不同視角和源領域知識的協(xié)同算法。通過不同源領域互相協(xié)同訓練的方法,可以彌補不同領域之間的分布差異。Ge等人[24]提出了一種快速的、可擴展的在線多領域遷移學習框架。此框架在目標領域的信息指導下從多個源領域中遷移知識。Zhuang 等人[25]提出了一種多個源領域的遷移學習框架(CRA)。該框架利用自編碼器構造從初始的樣本到隱含表示的特征映射,從源領域的數(shù)據(jù)中訓練多個分類器,最后通過執(zhí)行基于熵一致正則化矩陣完成目標領域樣本的預測。
為了實現(xiàn)多源領域帶標簽數(shù)據(jù)到單個目標領域的情感遷移,利用深度集成遷移學習,建立深度特征抽取、模型遷移學習、集成學習訓練和測試三個階段。具體思路為結合目標任務給定語料資源類型,將多個源領域與目標領域分別組合,利用字符增強的深度卷積神經網(wǎng)絡模型訓練情感分類器,之后進行深度情感遷移學習,最后采用集成學習框架完成對目標領域數(shù)據(jù)的分類任務。
在文本分類任務中,卷積神經網(wǎng)絡(Convolutional Neural Networks,CNNs)可以捕捉句子的局部相關性信息。因此,可以利用CNNs來提取句子中類似多元語法的關鍵信息。本文使用字符向量增強的深度卷積神經網(wǎng)絡模型(Characters Enhanced Deep CNNs Model)抽取有用和判別性的特征,框架圖如圖1所示。深度特征抽取主要包含四個主要層:(1)字符和詞輸入層;(2)卷積層;(3)池化層;(4)全連接輸出層。
Fig.1 Framework of characters enhanced deep CNNs model圖1 字符向量增強的深度卷積神經網(wǎng)絡模型圖
(1)輸入層:字符級別層利用字符的序列特征輸出字符層面的信息表示。詞層面聯(lián)合字符的特征表示和詞向量,通過組合上下文信息來輸出一個新的特征表示,可以有效捕捉底層語義特征。對于每篇評論文本,輸入詞序列x=(w1,w2,…,wn),wi∈Rd為第i個詞的詞向量表示,d是詞向量的維度。詞wi的字符序列為wi=(c1,c2,…,cj),cj∈Rd為第j個字符的字符向量,對字符向量執(zhí)行平均池化并加入到wi中。圖1中評論文本有n個詞,輸入層是句子中的詞語對應的詞向量依次(從上到下)排列的矩陣,評論文本的表示矩陣為W∈Rn×d,作為CNNs的輸入。
(2)卷積層:輸入層經過卷積操作可以得到若干個特征映射。卷積窗口大小分別對應unigram、bi-gram和tri-gram,這三種大小的窗口可以捕捉諸如“l(fā)ike”、“not hate”和 “do not love”等詞的語義信息。wi:i+m-1代表wi,wi+1,…,wi+m-1,表示m個縱向詞語。新的特征gi由窗口wi:i+m-1生成,gi=f(eT·Wi:i+h-1+b),其中,f為非線性激活函數(shù),e∈Rm×d為卷積核,b∈R為偏置項。卷積操作被應用于所有可能的窗口,得到卷積后的矩陣為g=[g1,g2,…,gn-h+1].
跨領域深度情感遷移學習過程:首先在源領域訓練集上預訓練一個神經網(wǎng)絡情感分類器,然后通過模型遷移的手段遷移部分參數(shù)到目標領域中,最后使用目標領域的帶標簽情感數(shù)據(jù)重新訓練和提升分類器,完成目標領域數(shù)據(jù)的情感分類任務。已有的研究表明在目標領域使用預訓練的深度遷移網(wǎng)絡要比隨機初始化權重效果好,也說明了深度神經網(wǎng)絡模型具有良好的可遷移性[14]。本文提出的深度卷積神經網(wǎng)絡模型遷移學習框架如圖2所示,通過遷移模型中的參數(shù),實現(xiàn)源領域到目標領域的模型遷移。
Fig.2 Framework of deep CNNs model transfer learning圖2 卷積神經網(wǎng)絡模型遷移學習框架圖
圖2中的神經網(wǎng)絡可以分為兩個部分:領域共享網(wǎng)絡(Domain Shared Networks)和領域特定層(Domain Specific Layers)。源領域中神經網(wǎng)絡參數(shù)為WS,目標領域中神經網(wǎng)絡參數(shù)為WT,領域共享網(wǎng)絡的參數(shù)記為W。
(1)
模型訓練利用梯度下降法,見公式(2),其中,μS為學習速率。
(2)
由于目標領域的分布PT(X)與源領域的分布PS(X)不同,因此,在初始化目標領域情感分類模型參數(shù)時,利用領域共享網(wǎng)絡的參數(shù)W,并隨機初始化領域特定層參數(shù)。利用目標領域的帶標記數(shù)據(jù)集DT,用于訓練目標領域的模型參數(shù),其目標函數(shù)見公式(3)所示。
(3)
模型訓練利用梯度下降法,見公式(4),其中,μS為學習速率,且μT<μS.
(4)
為充分利用多個源領域的信息,本文提出了一種新的集成深度遷移學習框架。如圖3所示,此框架主要包含兩部分:多領域聯(lián)合遷移學習(Multi-domain Joint Transfer Learning)和目標領域測試階段(Classification Stage)。
Fig.3 Framework of deep Ensemble Learning model圖3 集成深度學習框架圖
為了得到評論文本x的最終情感類別標簽,將x在各分類器fiT的概率加權,構建集成分類器fens,如公式(5)所示。
(5)
利用公式(5)可以得到樣本x的標簽為yi.
為了獲得各基分類器的權重{wi},使用目標領域的驗證集數(shù)據(jù)訓練加權集成分類器fens和{wi},其優(yōu)化過程如公式(6)所示。
(6)
在目標領域測試階段,輸入目標領域的測試樣本,通過訓練好的加權集成分類器fens對測試樣本預測其標簽,輸出其情感類別標簽(正面或者負面)。
本文選取了在跨領域情感分類中經常采用的英文多領域數(shù)據(jù)集[注]http:∥www.cs.jhu.edu/~mdredze/datasets/sentiment/。具體為亞馬遜網(wǎng)站上的Book(B)、DVD(D)、Electronics(E)和Kitchen(K)四個領域的正面和負面各1000篇評論文本。在選擇目標領域數(shù)據(jù)集隨機抽取20%的目標領域數(shù)據(jù)作為目標領域訓練數(shù)據(jù)集,20%目標領域數(shù)據(jù)作為驗證集,其余數(shù)據(jù)作為測試數(shù)據(jù)集,其他的領域作為源領域數(shù)據(jù)集。
本文使用預訓練的詞向量為在2014年的英文維基百科上訓練的GloVe詞向量,每個詞用100維向量表示,對于未登錄詞的詞向量隨機初始化。詞向量在訓練過程中當作是可優(yōu)化的參數(shù),訓練過程中動態(tài)調整。字符向量表示利用源領域和目標領域的所有文本集共同訓練。批處理大小為50,迭代次數(shù)為25,使用Relu非線性激活函數(shù)。
卷積層的特征映射的數(shù)量設置l=100,池化層后最終得到300維向量。為了防止過擬合,在全連接層加入了Dropout,從而隨機地舍棄一部分連接,Dropout的參數(shù)為0.50;在Softmax分類時使用L2正則項,正則項的系數(shù)是3。參數(shù)優(yōu)化方法為Adadelta,在模型遷移時,在源領域的初始學習率設置為μS=0.20,目標領域初始學習率為μT=0.05.
本文采取精度作為最終結果的評價指標:“精度(Accuracy)=分類正確的文本數(shù)/測試文本的總數(shù)”作為實驗結果的評價指標。
(1)DTL:將k個源領域混合為一個領域預訓練情感分類器,用本文3.2節(jié)中深度模型遷移方法實現(xiàn)到目標領域的遷移學習任務,沿用3.2節(jié)的實驗設置。
(2)EnSVM:集成SVM模型,以SVM模型[注]https:∥www.csie.ntu.edu.tw/~cjlin/libsvm/替代CNNs模型進行模型遷移和集成學習,運用Fisher特征選擇方法[26]進行特征選擇,選取前800個有效特征。
(3)TaskTr:Yao等人[21]提出的兩階段TaskTrAdaBoost算法,首先用源領域數(shù)據(jù)訓練CNNs模型并抽取合適的參數(shù),再用參數(shù)遷移策略提升地訓練目標領域分類器。參數(shù)設置為:最大迭代次數(shù)為100,正則化參數(shù)閾值為0.6。
(4)CRA:Zhuang 等人[25]提出的多源領域遷移學習算法,能夠同時學習隱含表示和分類器。算法采用Logistic回歸作為基分類器,隱含節(jié)點個數(shù)設為10,參數(shù)α=1,β=0.5 .
(5)EnDTL:本文提出的集成深度遷移學習框架。
在多領域數(shù)據(jù)集上,五種不同的遷移方法分別在兩個源領域遷移到目標領域、三個源領域遷移到目標領域的精度以及平均精度(Average),如表1和2所示。
由表1和表2可以看出:
(1)EnDTL相比較DTL方法,在兩個源領域和三個源領域的情況下,平均精度分別提高了9.8%和12.6%。這說明對源領域分組加權集成的方法,考慮了多個源領域與目標領域不同的相關性,使得目標領域的學習能充分利用所有源領域信息,可有效利用源領域數(shù)據(jù),提高遷移準確性。同時,EnDTL較EnSVM方法平均精度分別提高了7.4%和6.9%,這表明字符向量增強的深度卷積神經網(wǎng)絡模型較傳統(tǒng)SVM模型有很好的適應性。
表1 五種不同遷移方法在兩個源領域情況下跨領域分類精度(%)
表2 五種不同遷移方法在三個源領域情況下跨領域分類精度(%)
(2)EnDTL較TaskTr和CRA方法,在兩個源領域和三個源領域的情況下,平均精度分別提高了8.1%、2.2%和9.9%、0.3%,驗證了本框架的有效性。本文使用字符向量增強的CNNs作為特征提取器,可以更加有效地提取情感特征,采用集成學習方法集成遷移學習模型可以提高泛化性。
(3)三個領域作為源領域的分類精度要明顯高于兩個領域的情況,五種遷移方法分別提高了6.5%、9.8%、7.5%、11.2%和9.3%。這表明更充分的源領域信息可以提高目標領域分類的準確率。
(4)源領域與目標領域的相關性對于遷移效率具有較大的影響,與目標領域有較高相關度的源領域數(shù)據(jù)集通常具有較高的遷移率。例如,在遷移到領域D的情感分類預測中,B+K→D和E+K→D任務相比較B+E→D任務性能提升較小,這是因為領域K對于領域D的弱相關性。
本文綜合運用卷積神經網(wǎng)絡、遷移學習和集成學習等策略,利用預訓練的字符向量和詞向量、卷積神經網(wǎng)絡的卷積、池化等操作提取評論文本的情感語義信息,通過遷移學習實現(xiàn)源領域到目標領域的模型遷移,最終通過集成學習方法聯(lián)合各基分類器輸出。通過跨領域情感分類實驗,驗證了我們提出的框架較已有方法有較好的分類精度和較強的魯棒性。
本文僅從遷移學習中模型遷移的角度進行了研究,下一步將考慮實例遷移和參數(shù)遷移相融合的方法。即在訓練基分類器時,應考慮挑選更有效的帶標記數(shù)據(jù)進行模型遷移。此外,如何更好地進行各種基分類器的融合也是下一步需要研究的問題。