吳杭鑫,張云華
(浙江理工大學 信息學院,杭州310018)
方面信息提取[1]是從給定原始文本中提取出表征實體、實體屬性或反映實體某一側面的信息。方面信息是方面情感的直接受體,一般為一個詞語或者短語。例如,在句子“今天的晚餐既美味又實惠”中,“美味”和“實惠”分別評價了晚餐的兩個不同側面,且賦予了正向的情感極性,所以可作為方面信息提取出來。
方面提取任務是方面級別情感分類任務的前提和基礎。近年來隨著互聯網的發展,越來越受到業界的關注。早期的研究人員主要采用基于語義特征的方法來訓練模型[2-4]。但此類模型的性能受人為定義特征的影響較大,相對費時、費力,且對于研究人員的操作能力與資源質量有著較強的依賴性。近期,性能表現較好的方面提取算法,主要以基于詞共現網絡和基于圖的方法為主[5-7]。
受上述方法的啟發,本文提出基于詞嵌入和自注意力機制的方面提取算法(World Embedding and Self-attention Model for Aspect Extraction,簡 稱WESM),主要工作如下:
(1)利用基于詞匯共現網絡的來進行方面提取,相較于傳統的主題模型,能夠有效克服短文本存在稀疏性等特點,可以發現一些不常見的主題。
(2)引入自注意力機制,解決由于長距離依賴問題而造成的上下文信息忽略問題,能夠充分捕捉詞的上下文語義信息。
(3)應用細粒度的汽車評論數據集及來自購物網站的抓取數據集,與當前主流相關算法進行了比較。實驗結果表明,所提出的WESM模型的性能優于相關工作,適合于方面提取任務。
方面提取是觀點挖掘領域中的細分任務,在過去的數十年中,大量學者在方面提取上做了大量研究工作。如,在文獻[8-9]中提出了一個詞匯HMM模型來提取文本的顯示方面;文獻[10]提出基于監督的條件隨機場模型來提取顯示方面。但是監督學習需要大量的標簽數據,耗費大量的人力。
無監督的學習方法可以省去大量的數據標注工作。以pLAS(probabilistic latent semantic analysis)[11]和LDA(Latent Dirichlet allocation)[12]模型為主的方法,通過在文檔與單詞間搭建“主題”這一橋梁,來進行方面提取,已經被許多研究者應用于方面提取的任務中。然而,這類主題模型基本都是針對長文本方面提取,對于短文本任務無法取得良好效果。針對短文本特性,文獻[13]提出了BTM(Biterm Topic Model,簡稱BTM)模型,它與LDA模型不同的是使用了biterm進行建模,能夠更好的發掘文章的隱藏主題;文獻[14]提出了詞匯網絡共現主題模型(Word NetWork Topic Model,簡稱WNTM),通過詞匯共現網絡中語義緊湊的潛在詞群,發現不常見的主題,取得了良好效果。上述方法在針對短文本這一特定方向時,綜合表現較好,其共性在于挖掘上下文隱含的語義關系解決短文本存在的稀疏性等特點。
綜上所述,短文本數據相對于長文本主要存在的問題是文本稀疏性大、語義信息不足以及主題不平衡等。針對這些問題,本文提出了WESM模型,通過詞匯共現網絡,解決了難以發現罕見主題的問題;通過引入針對中文的詞嵌入模型,能夠更好的發掘出豐富中文詞匯的語義信息;通過引入自注意力機制,緩解上下文語義缺失的問題,提高了算法的性能。
本文提出了一種基于詞嵌入和自注意機制的方面提取算法(WESM)。該模型基于詞匯共現網絡,在整個語料庫上構建偽文檔,相較于傳統的LDA模型,詞匯共現網絡有著明顯的優勢,能夠充分利用整個語料庫的語義信息。其次,其節點之間的邊權值表示兩個詞匯在上下文中共現的次數。通過針對中文的詞嵌入模型cw2vec來訓練詞匯,豐富詞匯的潛在語義信息,得到詞匯的向量表示。然后輸入到自注意力機制模塊中,其特點在于可以無視詞匯之間距離,捕獲長距離的依賴關系。算法模型架構如圖1所示。

圖1 WESM模型圖Fig.1 Model of WESM
其中,WordNet是詞匯共現網絡,w n-1、w n、w n+1是輸入量,分別表示語料庫中的詞匯、網絡中節點是詞匯、節點之間的邊權重表示兩個節點詞匯共現的次數。cw2vec是中文單詞向量模型,經過該模型的訓練可以得到詞匯的向量表示,即εn-1、εn、εn+1。經過詞嵌入模型后,進入自注意力機制模塊,該模塊主要是為了得到詞匯的上下語義信息,Z s表示相應句子的嵌入表示,W為過濾矩陣,T代表高維空間向量矩陣。
WordNet是詞匯共現網絡(WNTM)模型,從關鍵詞之間的共現關系角度來建立網絡。考慮到語義的聯系是相互的,所以該網絡是一個無向有權圖。其中節點表示關鍵詞,權值表示兩個詞匯共同出現的次數。顯然,若節點之間的邊權值越大,則它們之間的關系越緊密。
WNTM模型由網絡圖、鄰近表、偽文檔三部分組成,如圖2所示。其中,偽文檔是和鄰近表由詞匯與相鄰節點生成的,描述了節點之間可能存在的關系。詞匯貢獻網絡生成相應的偽文檔,步驟如下:

圖2 WNTM模型圖Fig.2 Model of WNTM
(1)根據詞匯w i的鄰近詞匯表L i,與潛在詞群z i,進行“主題-單詞”概率分布采樣,得出相應關系表達式:Θi~Di r(α);
(2)對潛在詞群z,進行“偽文檔-主題”概率分布采樣,得到表達式:φz~Di r(β);
(3)對于鄰近詞匯表L i中的每個詞匯w j:
①根據“偽文檔-主題”概率分布,采樣主題z j
②根據“主題-單詞”概率分布,采樣單詞w j~
其中,Θ、φ分別表示鄰近表中潛在詞群出現的概率分布、詞匯屬于潛在詞群的概率分布。
由于WNTM模型包含了詞匯的上下文語義信息,因此將詞匯w i的鄰近詞表Θi的主題比例作為詞匯w i的主題比例,其計算公式如下:

其中,Θi可以表示為可以看成詞匯的經驗分布,計算公式如下:

式中,n d(w i)表示詞匯w i在文檔d中的詞頻,Len(d)表示文檔d的長度。由于短文本數據的特點,使得長文本主題相關方法對其處理效果欠佳。而基于WNTM模型構建的偽文檔中包含了所有的主題信息,學習偽文檔上的主題分布,能夠解決短文本數據稀疏性問題。
TC2vec的另一個部分是cw2vec模型,該模型以中文筆畫信息作為特征,捕捉漢字詞語的語義和結構層面信息,獲得分布式向量詞并以負采樣進行計算。
cw2vec模型使用一種基于n元筆畫的損失函數,公式如下:

其中,w和D分別表示詞語和詞語歸屬的訓練語料;c和T(w)是詞語的上下文和詞語上下文窗口內的所有詞語集合;λ是負采樣的數量,由總數乘以負采樣比例得到;E w'~P[~]是期望,并且選擇的負采樣w'服從部分P。因此,語料中出現次數越多的詞語越容易被采樣,公式如下:

在詞嵌入層后增加自注意力層,通過自注意力機制獲取文本的上下文語義信息,重構句子嵌入表示,轉化為r s的形式。
通過加權和的方式將方面信息納入到重現后的句子中,計算公式如下:

式中,e wi表示第i個詞匯的向量,詞匯的嵌入表示和上下文環境將共同決定注意力機制的權值,即a i的數值。計算公式如下:

其中,y s由組成句子詞匯的向量和求均值得到,是句子向量的嵌入。通過模型訓練獲得矩陣M(M∈R d×d),并在句子向量和詞匯向量之間進行映射,以獲得詞匯和方面相關信息。a i表示注意機制的權重,公式如下:

其中,p t表示方面嵌入權重,將z s從d維降到k維,然后通過softmax函數標準化得到。W和b從訓練模型中獲得的。
若直接進行后續訓練,將會產生較大的重構誤差。因此,本文采用最大邊界相關函數(Contrastive Max-margin Objective Function),其公式如下:

其中,D代表語料庫,n i代表負樣本。訓練使得r s與z s大體相似,并且與n i最大限度不同。{E、T、M、W、b}為訓練得到的模型參數。
為驗證模型的有效性,采用公開數據集(細粒度汽車評論標注語料數據集)通過網絡爬取相關評論信息(某購物網站關于手機的相關數據)進行測試,并且都詳細標注了用戶評論中的評價對象和評價特征。數據集詳細信息見表1。

表1 數據集和訓練集Tab.1 Data sets and training sets
本文選取精確率(Preci s i on)、召回率(R ecal l)和F-s cor e值來評估模型的整體性能。精確率計算公式如下:

召回率也稱為查全率(R ecal l),計算公式如下:

實驗引入了F-s cor e值,用來調節查準率和查全率,公式如下:

其中,β為F-s cor e中權重參數。
本文使用主題聚合度(Topic Coherence)來評價得到的方面聚類之間的相似性,它與方面詞相似度之間呈正相關,其計算公式如下:

其中,t代表某個方面;M表示在方面集合選取詞匯數量代表方面t中n個方面詞匯;和分別表示方面t中的兩個方面詞匯;D(~)表示參數(方面詞匯)的共現次數。當只有一個參數時,表示該詞匯的出現次數。為了防止l o g函數的值為0造成計算錯誤,本文設置ε為1。公式如下:

本文選取LDA、BTM、WNTM、WESM算法在數據集上進行對比實驗,模型表現如圖3、圖4所示。其中主題數統一選10,先驗參數學習率設置為0.025。
從圖3和圖4中可以看出,WNTM模型在主題句聚合度上的實驗結果優于LDA和BTM模型,而WESM算法又優于WNTM模型。由于數據都是短文本數據,用于長文本的LDA模型在實驗結果上略遜色于WNTM模型和BTM模型,而WESM算法是在WNTM的基礎上增加了詞向量模型和自注意力機制,能夠更細粒度的利用詞匯語義信息。主題聚合度得分越高,則模型所得到的主題質量更好,證明了引入自注意機制能夠有效豐富語境語義,提高主題質量。

圖3 數據集D1主題聚合度Fig.3 Data set D1 topic aggregation degree

圖4 數據集D2主題聚合度Fig.4 Data set D2 topic aggregation degree
圖3 和圖4通過各主題聚合度得分表現,說明了WESM模型主題聚合效果上表現更出色。下面將通過查準率、召回率以及F1值對模型的其它方面做進一步驗證。其中本文選取前n(其中n=10,20,30,40)個詞匯計算各項指標,結果如圖5、圖6所示。
從圖5和圖6可以看出,WESM模型的平均查準率比其它三個模型更好。對圖表進一步觀察對比發現,針對短文本提出的WNTM和BTM模型在查準率上的表現優于LDA模型;通過WNTM和WESM的對比發現,引入詞嵌入和自注意力機制確實有利于查詢率的提高,驗證了其對于方面提取性能的提升是有效果的。
通過圖7和圖8可以看出,隨著詞匯數量的增加,各模型的F1值都呈現下降的趨勢。但WESM模型在實驗中的表現還是優于其他模型。驗證了詞向量和自注意力機制能夠豐富詞匯的上下文語義特征,從而提高方面提取的性能。

圖5 數據集D1平均查準率Fig.5 Average precision of data set D1

圖6 數據集D2平均查準率Fig.6 Average precision of data set D2

圖7 數據集D1平均F1值Fig.7 Average F1 value of data set D1

圖8 數據集D1平均F1值Fig.8 Average F1 value of data set D2
本文在詞匯共現網絡基礎上引入了詞向量模型和自注意力機制,提出了方面提取算法WESM。實驗結果表明,基于本文提出的方面提取算法及自注意力機制的引入,能夠豐富詞匯的語義信息,得到文本的上下文語義信息。通過應用兩個數據集實驗,對比了相關的方面提取方法,證明了本文算法的優勢所在。但是,模型仍舊存在一些不足。如,方面詞匯聚類簇數要人為進行設置、參數的設定直接影響模型的性能等問題。因此,在后續研究中可以考慮是否能夠將這些步驟都通過算法訓練得到,減少人為對算法的影響。