趙麗華,王春立,初鈺鳳
大連海事大學 信息科學技術學院,遼寧 大連116026
隨著社交媒體和在線論壇的發展,以及京東和淘寶等在線交易方式的日益普及,越來越多的消費者開始評論他們通過在線論壇、社交媒體網站和其他渠道所購買的產品。提取評論中的觀點和情感詞,可以幫助消費者提前了解商家的產品質量或服務,也可以幫助商家準確、客觀地獲得大量的用戶評價,有利于提高產品質量,不斷優化經營策略,增強競爭力。在產品評論中,方面代表產品的屬性或特征。從人們表達觀點的產品或服務的評論文本中提取方面信息被稱為方面級情感分析,是細粒度的文本情感分析,而方面術語提取是方面級情感分析的關鍵問題。
傳統的方面術語提取方法主要以語法和規則為主,并以詞法分析和句法分析的結果為基礎,人工地建立一些詞性和句法規則來提取相關的術語。Bloom等[1]采用人工制定規則的方法來提取重要的方面詞。Zhao 等[2]采用詞法泛化的方法,利用詞法信息提取方面詞。Qiu等[3]提出一種利用預先制定的規則,通過雙重傳播(Double Propagation,DP)算法來抽取方面詞。這些方法雖然取得了一定的效果,但都需要人工知識和領域知識來標記文本特征,特征的擴展性不強,它們不能利用高水平的領域知識來提取與中性和隱性情感相關的方面詞。
深度學習在各個領域都取得了突出的成果,也被應用到方面術語提取領域。Yin等[4]采用詞嵌入、線性上下文嵌入和依賴路徑嵌入來增強CRF(Conditional Random Field)進行方面術語的提取。Xu等[5]提出了一種采用兩種預訓練嵌入的模型,該模型將一般通用嵌入和特定域嵌入拼接在一起,然后傳遞給CNN,不需要任何額外的監督就取得了很好的性能。Ma 等[6]使用序列到序列學習的深度學習方法來提取方面詞。Huang 等[7]提出了LSTM-CRF 和BiLSTM-CRF模型。Ma 等[8]提 出 了BiLSTM-CNN-CRF模型,與上述的BiLSTM-CRF相比,BiLSTM-CNN 通過CNN 編碼了字符嵌入。Li 和Lam[9]使用兩種LSTM(Long Short-Term Memory),通過記憶交互的聯合處理方法提取方面和觀點詞,這些LSTM具有神經記憶和擴展記憶的操作。沈亞田等[10]使用深度長短期記憶模型聯合抽取評價詞和評價對象。Wu等[11]提出了一種混合的無監督方法,將基于規則的方法和深度學習方法相結合來提取方面術語,在很少的人工標注的情況下就達到了很好的性能。Luo等[12]使用雙向依存樹表示和BiLSTM-CRF 模型相結合的方法來提高方面術語提取的準確性。
上述深度學習模型大多基于CNN(Convolutional Neural Network)和RNN(Recurrent Neural Network)的網絡結構,CNN的池化操作容易造成信息丟失,而當序列的輸入長度增加時,RNN 就會出現梯度爆炸和消失的問題。LSTM作為循環神經網絡模型的改進,它在簡單循環神經網絡中減少了長距離的信息丟失問題,能夠靈活地捕獲方面與其上下文單詞之間的語義關系,并且LSTM在序列標注任務中的性能優于CRF,也優于其他神經網絡;BiLSTM(Bi-directional Long Short-Term Memory)不僅加入門控機制,而且可以捕獲文本的上下文順序信息。但是文本序列中不同詞語對方面術語提取效果有不同的影響,因此有必要區分不同詞語的重要程度。
多頭注意力機制是Google團隊提出的[13],它可以在輸入文本序列內部進行注意力操作計算,找到序列內部之間的聯系,并自動學習輸入文本序列的權重分布。此外,Luo等[14]提出的ReGU(Residual Gated Unit)是一個額外的RNN 單元,該結構由兩個門來控制輸入和隱藏狀態信息的流動,與跳過連接一樣,它可以使用一個門將輸入傳送到輸出,能夠更深入地訓練和獲得有用的文本特征。
綜上,針對方面術語提取,本文提出基于注意力機制的雙層BiReGU(Attention-based Double BiReGU model,AD-BiReGU)模型,該模型在傳統BiLSTM 的基礎上使用了雙嵌入機制和ReGU 作為模型的輔助信息。注意力機制和BiLSTM模型的使用,充分考慮到文本序列中不同單詞的重要性和文本特征,更好地對輸出序列進行編碼,并捕捉標簽間的長期依賴關系。為了驗證模型的性能,本文在SemEval 2014中的Restaurant和Laptop 兩個數據集上分別進行實驗,結果表明,本文模型的性能得到了有效提升。
BiLSTM-CRF 模型是將BiLSTM 網絡和CRF 網絡結合起來形成的,Huang等首次將該網絡模型應用于自然語言處理基準序列標注數據集上,由于BiLSTM網絡層的存在,該模型可以同時獲取到過去和將來的輸入特征;由于CRF網絡層的存在,該模型可以使用句子級的標注信息。BiLSTM-CRF模型結構[7]如圖1所示。

圖1 BiLSTM-CRF模型結構Fig.1 BiLSTM-CRF model structure
1997 年,Hochreiter 等[15]提出一種RNN 改進后的模型,即LSTM,這種模型的作用主要就是為了解決RNN所造成的梯度爆炸或消失問題。后來又被人們進行了多次改進,其中最流行的一個LSTM 網絡的結構如圖2所示[16]。它將“門”添加到原始的RNN 模型中,在一定程度上避免了梯度爆炸或消失的問題,并充分考慮到當前單詞的上下文信息,從而提取出輸入文本的全局特征表示。

圖2 LSTM網絡結構Fig.2 LSTM network structure
LSTM模型的網絡結構主要包括遺忘門、輸入門和輸出門,它們各自的計算公式如下:


其中,ft、it、ot分別是遺忘門、輸入門、輸出門;x、h、c是輸入層、隱藏層、記憶單元;W、b是權重矩陣、偏置;*是點積。

為了區分不同詞語的重要程度,本文在傳統BiLSTMCRF模型結構基礎之上加入注意力機制,同時還引入了雙嵌入機制和ReGU作為輔助,構建了基于注意力機制的雙層BiReGU 網絡模型。該模型的結構如圖3 所示。該網絡結構把上下文信息輸入神經網絡模型中,不僅能夠更好地捕捉到標簽之間的長期依賴關系,而且還能更好地獲取文本的特征。它還使用注意力機制來發現文本中的重要信息,自動學習輸入文本序列的相對重要的單詞。模型的網絡結構依次由以下五部分組成:詞嵌入層、第一層BiReGU、單詞注意力計算層、第二層BiReGU、方面術語標注層。

圖3 AD-BiReGU網絡結構Fig.3 AD-BiReGU network structure
(1)詞嵌入層:利用Glove 預訓練的詞向量嵌入和特定域預訓練的詞向量嵌入進行拼接操作,即雙嵌入方法,來將所輸入的文本序列轉化為向量表示的形式。
(2)第一層BiReGU:在BiLSTM的整體模型基礎上使用了ReGU 結構來更深入地訓練和獲得有用的文本特征。
(3)單詞注意力計算層:對第一層BiReGU 提取的特征,使用注意力機制來發現文本中的重要信息,自動學習輸入文本序列的相對重要的單詞。
(4)第二層BiReGU:將單詞注意力計算層的輸出作為第二層BiReGU 層的輸入,來獲取更加全局的特征信息。
(5)方面術語標注層:將第二層BiReGU 提取的向量信息輸入到CRF中,進行最終的方面術語標注。
由于深度學習模型只能接受數值形式的輸入,首先將文本數據表示成深度學習模型所能處理的形式,將輸入序列表示為W={x1,x2,…,xn},n為輸入文本序列的單詞個數。該模型沒有采用標準的技術通過拼接詞嵌入和字符嵌入來生成每個單詞xi的嵌入,而是采用Glove 詞向量嵌入G(xi)和特定域詞向量嵌入D(xi)進行拼接,即雙嵌入機制的方法,將每個詞進行向量化表示,每個句子就會生成一個詞向量矩陣E={e1,e2,…,en},其中ei表示第i個詞語的詞向量,維度為D=dG⊕dD,e∈Rn×D,充分考慮了嵌入是否與特定領域相關。
網絡模型中包括雙層BiReGU,每一層利用雙向的LSTM神經網絡對前文信息和后文信息進行處理,充分挖掘輸入序列的上下文信息。考慮到ReGU 能夠更深入地訓練和獲得有用的文本特征,則在BiLSTM結構的基礎上引入ReGU 結構,將此ReGU 結構直接替換掉原LSTM 結構,擁有像BiLSTM 一樣的兩個方向的表示。ReGU 由兩個門ft和ot來控制輸入和隱藏狀態信息的流動,其中ot可以控制將上一層信息輸入到下一層,更深入地訓練和獲得有用的文本特征。ReGU 結構圖如圖4所示。

圖4 ReGU結構Fig.4 ReGU structure
給定時間t和前一個記憶單元Ct-1的輸入xt,新的記憶單元Ct是通過以下公式計算得到的:

新的隱藏狀態計算如下:

其中,ft=σ(Wf·[ht-1,xt]+bf)是遺忘門,是殘余門,是xt還是tanh(Wi xt)根據xt大小是否等于ct決定。
與雙層BiLSTM 結構一樣,構建出的雙層BiReGU網絡模型的每一層利用雙向的ReGU 結構對前文信息和后文信息進行處理,充分挖掘輸入序列的上下文信息。將經過詞嵌入層形成的詞向量表示W={h1,h2,…,ht,…,hn} 輸入到第一層BiReGU,記BiReGU 中前向ReGU和后向ReGU在時刻t的輸入處理分別為:

考慮到這種雙層BiReGU 網絡結構未考慮不同單詞的重要性,因此將第一層BiReGU的輸出輸入到注意力計算層,計算每個單詞的重要程度。多頭注意力機制的計算方法為:

其中,Q、K、V分別表示Query矩陣、Key矩陣、Value矩陣,注意力操作是從Q到K×V的一個個映射,將它編碼成一個新的n×dv的序列,起調節的作用,它的作用是用來控制Q和K的內積不會特別大,并且每個注意力的頭都會采用自注意力機制,尋找序列內部之間的一種聯系。在方面術語提取工作中,Q、K、V的值是相等的,代表嵌入層的輸出E的大小為n×dm,其中dm為BiReGU 輸出的維數。h為頭的數量,i為第i個注意力頭部,每個注意力頭部用式(14)計算,然后再從左到右將每個頭進行拼接,最終形成注意力矩陣X。
考慮到單層BiReGU 不能獲取到更加全局的特征信息,故使用了雙層BiReGU,將單詞注意力計算層的輸出作為第二層BiReGU層的輸入,來獲取更加全局的特征信息。
為了生成最終的方面術語標記,使用CRF代替softmax分類器作為最后一層可以提高標注之間高度依賴的性能。CRF概率的計算如下:

訓練過程中使用最大條件似然估計,計算如下:

最后的標注結果以最高的條件概率生成:

本文采用來自SemEval 2014 的數據集進行實驗,數據集概況如表1 所示,Laptop、Restaurant 分別包含筆記本電腦和餐館領域中的用戶評論。評估指標是宏觀平均F1,更適合具有不平衡類別的數據集。

表1 數據集概況Table 1 Dataset overview
表1表示數據集的基本信息,#S表示句子的數量,#T表示方面術語的數量。
本文實驗平臺信息如表2所示。

表2 實驗平臺設置Table 2 Setup of experimental platform
考慮到當提取的文本特征維度太大會容易造成梯度爆炸問題,維度太小又無法充分地提取到特征信息,因此將提取全局和局部特征的維度都設置為300。本文采用Glove 300 維詞向量對一般詞嵌入向量進行初始化,選擇Adam(Adaptive Moment Estimation)作為優化器函數對神經網絡進行優化,并將dropout值設置為0.4以防止過擬合現象的出現。所有參數都是通過實驗微調得到的。模型的具體參數設置如表3所示。

表3 實驗參數設置Table 3 Setup of experimental parameters
采用F1 值作為評估文本模型的指標,F1 值計算公式如下:

為了驗證本文所提出模型的有效性,將本文方法與其他先進方法進行比較,如表4 所示,“—”表明該模型未在該數據集上進行評估。

表4 實驗結果對比(F1-Score)Table 4 Comparison of experimental result(F1-Score)%
上述結果表明,與傳統機器學習方法相比,本文方法不基于特征工程,取得了合理的性能。與一些基準模型相比,本文方法在性能上也有一定程度的提高。在上述深度學習網絡中,LSTM-CRF取得了相對較低的提取效果,這是因為它忽略掉了單詞的上下文含義和詞之間的長期依賴關系,而BiLSTM-CRF 有很好的效果,既能獲得長距離的依賴信息,雙向結構又能很好地包含每一個單詞的上下文信息。本文提出的模型F1 值達到82.45%、85.01%,在Laptop 數據集上,相比于基線模型BiLSTM-CNN 模型提升了3.48 個百分點,在Restaurant數據集上,其F1 值提升了1.14 個百分點。可以看出本文提出的模型結構在兩種數據集上的實驗結果,較其他基準模型和先進模型均有一定程度的提升,實驗結果也證明了本文模型的有效性。
為了驗證雙嵌入機制和ReGU 在特征提取時展示的優勢,設置了DE-BiLSTM-CRF、D-BiLSTM-CRF 和D-BiReGU-CRF對比實驗。DE-BiLSTM-CRF是本文的基模型,它是在BiLSTM-CRF基礎上增加了雙嵌入機制得來的,可以看出實驗結果比BiLSTM-CRF相對較好一些。D-BiLSTM-CRF 使用了雙層BiLSTM,D-BiReGUCRF 是在D-BiLSTM-CRF 基礎上引入了ReGU 結構。實驗對比結果如表5所示。

表5 實驗結果對比(F1-Score)Table 5 Comparison of experimental result(F1-Score)%
由表5可以看出,雙層BiLSTM、引入ReGU與注意力機制均有效提升了效果。
本文提出了一種基于注意力機制的雙層BiReGU方面術語提取模型。該模型采用雙層BiLSTM模型進行特征表示,然后使用多頭注意力機制,為句子中不同單詞分配不同權重,更好地學習文本特征表示和捕捉詞語間的長期依賴關系。此外,本文還引入了雙嵌入機制和ReGU作為輔助。與傳統循環神經網絡模型相比,本文的注意力機制模型能夠有效識別方面詞,取得了較好的提取效果。未來的工作可以考慮采用新型的網絡結構(Graph Convolutional Network等)來改善模型的性能。