費宏慧
(上海電機學(xué)院電子信息學(xué)院,上海201306)
隨著深度學(xué)習(xí)的發(fā)展,構(gòu)建高質(zhì)量的預(yù)訓(xùn)練模型解決下游自然語言處理任務(wù)已成為自然語言處理領(lǐng)域的一個研究熱點。預(yù)訓(xùn)練模型有2種:淺層的詞嵌入和深度神經(jīng)上下文編碼器。經(jīng)典的淺層預(yù) 訓(xùn) 練 模 型 有Word2vec[1]、Glove[2]、Paragraph Vector[3]和Skip-Thought Vector[4]等,它們結(jié)構(gòu)簡單,學(xué)得的詞嵌入或段嵌入質(zhì)量高,能表示詞之間潛在的語法和語義相似性。經(jīng)典的深層預(yù)訓(xùn)練模型有CoVe[5]、ELMO[6]、OpenAIGPT[7]和Bert[8]等。深層預(yù)訓(xùn)練模型的焦點是學(xué)習(xí)具有上下文的詞嵌入,語言表示能力比淺層模型強大,但模型結(jié)構(gòu)復(fù)雜,計算代價較高。
近年來,隨著情感分析服務(wù)受到工業(yè)界的關(guān)注,預(yù)訓(xùn)練模型在情感分析領(lǐng)域的應(yīng)用研究呈上升趨勢。Zhang等[9]利用word2vec從語義的角度對產(chǎn)品評論中領(lǐng)域?qū)傩韵嘟脑~進行了聚類,解決了早期情感分類只考慮詞的詞典屬性和語法屬性的問題。Yu等[10]提出了一種改良的詞向量模型,使得語義相近的詞其情感極性也相近,解決了相似的詞向量可能具有相反的情感極性問題。Alsaqqa等[11]通過文獻分析和比較發(fā)現(xiàn),使用最多的預(yù)訓(xùn)練模型是word2vec的Skip-gram和CBOW。Le等[3]提出的Paragraph Vector在文檔級情感分類時表現(xiàn)出了較好的性能。盡管上述淺層預(yù)訓(xùn)練模型在情感分析領(lǐng)域的使用已取得了一定的效果,但如果用戶要求情感分析服務(wù)提供商提供“方面-主題”類型的方面級情感分析服務(wù),則直接使用word2vec或Paragraph Vector均無法滿足要求。word2vec是一種非上下文嵌入,無法獲得語義粒度較大的主題信息;Paragraph Vector雖可用向量表示包含上下文信息的變長文本,但不能將詞編碼為上下文表示。
盡管深層預(yù)訓(xùn)練模型是一種超越詞級的上下文編碼器,學(xué)得的詞嵌入能根據(jù)詞出現(xiàn)的上下文發(fā)生動態(tài)改變,但已有的研究均是將學(xué)得的詞的全局上下文應(yīng)用于“方面-目標(biāo)”情感分析,并沒有解決如何通過詞的全局上下文推斷主題。如:Rietzler等[12]研究了如何微調(diào)Bert實現(xiàn)“方面-目標(biāo)”的情感分類。Xu等[13]利用Bert抽取評論閱讀理解數(shù)據(jù)集中的“方面”,并利用后訓(xùn)練策略在“方面-目標(biāo)”情感分類中使用了評論的領(lǐng)域知識以提升方面級情感分類的效果。由此可見,利用淺層預(yù)訓(xùn)練模型實現(xiàn)“方面-主題”情感分析是一個值得研究的問題。Meng等[14]研究了在word2vec中融入全局上下文的方法并將其應(yīng)用于文本分類。受此啟發(fā),本文基于word2vec的skip-gram提出了一種改進的預(yù)訓(xùn)練模型(Jointly Word2vec and Topic,JWT),JWT利用vMF(Von Mises-Fisher)分布對詞的全局上下文建模,能獲得方面所屬的主題。
詞嵌入就是用一個低維實值向量描述一片文本,最著名的詞嵌入框架是word2vec。word2vec框架的詞共現(xiàn)定義為局部上下文窗口。其中,word2vector的skip-gram用中心詞預(yù)測周圍詞,word2vector的CBOW用周圍詞預(yù)測中心詞。研究表明,CBOW的速度比skip-gram快,但skipgram在語義問題上的性能比CBOW好[15]。因此,本文提出的JWT模型是基于skip-gram的擴展。
盡管word2vec是各種不同自然語言處理任務(wù)中最流行使用的模型,但它獨立于全局上下文。最早關(guān)于全局上下文的研究是變長文本的嵌入,其中,最典型的模型是Paragraph Vector。Paragraph Vector模型將變長的文檔作為表示學(xué)習(xí)的目標(biāo)。這種表示學(xué)習(xí)盡管包含了全局上下文,但并沒有將文檔信息作為詞的上下文,不利于找到“方面-主題”情感分析中的主題。本文提出的JWT模型利用vMF分布顯式地對全局上下文建模,不需要用標(biāo)注語料優(yōu)化模型,是一種無監(jiān)督的學(xué)習(xí),有利于模型應(yīng)用的移植。
假設(shè)一篇變長文檔d由n個有順序的詞構(gòu)成,d={w1,w2,…,w n},詞w i的 局部上下 文Loc(w i,d)指的是出現(xiàn)在w i左右兩邊且大小為k的窗口中的詞,即對任意詞w j∈Loc(w i,d),ik≤j≤i+k且i≠j。詞w i的全局上下 文Glo(w i,d)指的是w i所在文檔d表示的主題θ,即對任意詞w i,如果w i∈d,則Glo(w i,d)=θ;否則,Glo(w i,d)=?。
JWT模型利用中心詞預(yù)測周圍詞,需要對詞的局部上下文和全局上下文同時建模。因此,目標(biāo)函數(shù)表示的損失由局部上下文損失和全局上下文損失兩部分組成。局部上下文損失函數(shù)為
式中:D為語料。式(1)用于正確預(yù)測中心詞基于窗口大小為k的上下文。
概率p(w i+k|w i)用文獻[1]中的方法計算:
式中:V為詞匯表;uTw i為窗口內(nèi)局部上下文的詞向量之和;v w i為中心詞的詞向量。
全局上下文損失函數(shù)為
式中:logp(θ|w i)用于建模詞w i所屬主題θ的假設(shè)。式(3)用于正確預(yù)測中心詞所在文檔d表示的主題θ。
為達到這一目的,本文采用vMF分布[16]描述logp(θ|w i)。vMF分布是Rm空間上的單位向量分布,它依賴于參數(shù)θ,即θ∈Rm。其中,m為全局上下文詞向量的維度。若Sm表示m維的超球面,則對于任意w i∈Sm,vMF的概率密度函數(shù)為
式中:當(dāng)θ≠0時,歸一化向量μ=θ‖‖θ為vMF分布的平均方向,κ=‖‖θ為vMF分布的濃度;分母F(;m/2;‖θ‖2/4)為合流超幾何函數(shù),是一個比例因子,實驗中不需要估計[16],可用如下公式表示:
于是,式(4)中vMF的密度函數(shù)可簡化為
其中,可用最大似然函數(shù)估計求得θ。
從語義角度,中心詞通常和它所在的局部上下文以及主題之間存在生成關(guān)系。對于JWT模型而言,假設(shè)局部上下文和表示主題θ的全局上下文均由中心詞產(chǎn)生,則JWT模型應(yīng)該先基于中心詞先生成主題,然后生成局部上下文。于是,JWT模型的損失函數(shù)Jtotal應(yīng)該是局部上下文損失函數(shù)和全局上下文損失函數(shù)之積:
對于損失函數(shù)Jtotal的優(yōu)化,關(guān)鍵是估計JGlo中的參數(shù)θ,因為最小化JLoc仍可用文獻[1]中的方法。
vMF分布可參數(shù)化為κ和μ,從vMF分布中采樣 的 詞w1,w2,…,w n的 對 數(shù) 似 然 可 表 示 為nlog(Cm(κ))+κμTr。其中,r是被采樣的n個詞w i的詞向量之和。于是,通過如下公式表示的似然等式可以獲得JWT模型的最大似然估計:
若 用Am(κ)=-Cm'(κ)Cm(κ) 表 示1Cm(κ)的對數(shù)導(dǎo)數(shù),ρ=‖r‖n,則式(8)中參數(shù)κ的最大似然等式可變?yōu)锳m()=ρ。同時,又可以用修正的貝塞爾函數(shù)[16]來表示Am(κ),即Am(κ)=-Im2(κ)I(m2)-1(κ)。因為Am是嚴(yán)格遞增函數(shù)且滿足黎卡方程,所以Am和它的導(dǎo)數(shù)均可用高斯連分?jǐn)?shù)法求解。因此,只要給定一個合適的初始值,Am()=ρ就可迭代求解。根據(jù)文獻[16]提供的方法,本文利用式(9)估計參數(shù)來獲得中心詞的全局上下文表示的主題θ:
實驗中共使用了4個基準(zhǔn)數(shù)據(jù)集:En-SimLex-999數(shù)據(jù)集[17]、En-Word Sim353數(shù)據(jù)集[18]和En-MEN數(shù)據(jù)集[19]用于詞相似性評估;SemEval ABSA數(shù)據(jù)集[20]用于評估JWT模型對“方面-主題”情感分析性能的影響。SemEval ABSA數(shù)據(jù)集既包含了筆記本電腦領(lǐng)域的用戶評論,也包含餐廳領(lǐng)域的用戶評論。
為分析預(yù)訓(xùn)練模型JWT模型學(xué)得的詞向量,本文選用了3個基準(zhǔn)預(yù)訓(xùn)練模型:標(biāo)準(zhǔn)的skipgram、cvMF[21]和Joint skip-gram。詞向量的維度選擇為300維。使用標(biāo)準(zhǔn)的詞類比和詞向量相似性作為詞向量質(zhì)量優(yōu)劣的評估標(biāo)準(zhǔn)。局部上下文窗口k的值設(shè)為5。所有預(yù)訓(xùn)練模型均采用負采樣訓(xùn)練。
為分析預(yù)訓(xùn)練模型JWT對情感分析性能的影響,選用了傳統(tǒng)的支持向量機(Support Vector Machine,SVM)和3個標(biāo)準(zhǔn)的深度神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)、長短期記憶網(wǎng)絡(luò)(Long Short Term Memory,LSTM)和門控神經(jīng)單元(Gated Recurrent Unit,GRU),在數(shù)據(jù)集SemEval ABSA上訓(xùn)練了4個不同的情感分類器。對于CNN、LSTM和GRU,部分超參數(shù)設(shè)置如下:詞匯表的大小為20 000,文本的最大長度為200,batch_size為64,dropout為0.3,epoch為10。由于SemEval ABSA是一個不平衡的數(shù)據(jù)集,本文采用精確率(Accuracy,Acc)和宏平均F1值(Macro-F1)作為情感分類器性能的評估標(biāo)準(zhǔn)。
表1列出了4種預(yù)訓(xùn)練模型在3個數(shù)據(jù)集上捕獲的詞對之間的相似性的評估結(jié)果。本文使用Spearman相關(guān)系數(shù)ρ和Kendall等級相關(guān)系數(shù)τ度量4種不同模型的效果[14]。ρ和τ越大,表明模型學(xué)得的詞之間的相似性越高。如表1可知:①JWT模型在2種評估標(biāo)準(zhǔn)下均優(yōu)于skip-gram模型;②相比于cvMF,JWT在EN-Simlex999數(shù)據(jù)集上的優(yōu)勢要比能利用另外2個數(shù)據(jù)集上的效果明顯一些;③JWT除在EN-Simlex999數(shù)據(jù)集的τ標(biāo)準(zhǔn)和En-MEN數(shù)據(jù)集的ρ標(biāo)準(zhǔn)之下稍高于Joint Skip-gram之外,其余的值要稍差于Joint Skip-gram。這表明提出的JWT的全局上下文有利于捕獲詞的相似性。
表1 4種不同的預(yù)訓(xùn)練模型在3個不同數(shù)據(jù)集上詞相似度評估Tab.1 Word similarity evaluation for 4 different pre-trained models on 3 differ ent datasets
本節(jié)以“方面-主題”情感分析任務(wù)作為下游任務(wù)評價詞嵌入的質(zhì)量。對數(shù)據(jù)集SemEval ABSA,訓(xùn)練SVM分類器時,每篇文檔的特征用文檔中所有詞向量的平均值來代替。訓(xùn)練3個標(biāo)準(zhǔn)的深度神經(jīng)網(wǎng)絡(luò)模型CNN、LSTM和GRU時,利用JWT預(yù)訓(xùn)練模型獲得的詞嵌入作為嵌入層。以laptop評論為例的“方面—主題”情感分析的結(jié)果如表2所示。
由表2可知,JWT在所有模型和評估標(biāo)準(zhǔn)上均取得了最好的性能。這表明JWT用vMF分布建模主題,并用其表示中心詞的全局上下文有利于“方面-主題”情感分析,能適應(yīng)這一自然語言處理應(yīng)用場景。因為此應(yīng)用場景中對“方面”的情感分析,本質(zhì)上需要判斷“方面”所歸屬的主題。除此之外,Joint Skip-gram和cvMF在“方面-主題”情感分析中也具有較好的效果。這是因為Joint skip-gram是一個融合了局部上下文和全局上下文的模型;cvMF在Glove模型中引入了用vMFS分布表示的先驗知識,這種從詞向量中學(xué)習(xí)得到的先驗知識本質(zhì)上也是一種全局上下文。
表2 “方面-主題”的方面級情感分析結(jié)果(以laptop評論為例)Tab.2 Aspect-topic sentiment analysis results based on laptop reviews
JWT模型是基于word2vec的skip-gram改進的預(yù)訓(xùn)練模型。它將表示主題的全局上下文融合到標(biāo)準(zhǔn)的skip-gram中,用vMF分布對全局上下文建模,用最大似然估計求解全局上下文參數(shù)。實驗結(jié)果表明,JWT模型的全局上下文有利于捕獲詞的相似性。此外,本文還基于傳統(tǒng)的SVM、標(biāo)準(zhǔn)的CNN、LSTM和GRU等4種模型,在評論數(shù)據(jù)集SemEval ABSA上構(gòu)建了4種情感分類器,實驗結(jié)果也表明JWT模型在分類性能上均優(yōu)于其他的3種基線預(yù)訓(xùn)練模型。由此可見,JWT模型能有效應(yīng)用于“方面-主題”情感分析。在下一步的工作中,可以考慮在word2vec的CBOW中融入表示主題的全局上下文,并與JWT模型進行比較;進一步研究JWT模型中表示全局上下文的主題建模型能否用混合的vMF分布,以使得模型能更有效地學(xué)習(xí)全局上下文所屬的主題。