荀 竹
(湖北工業大學理學院,湖北 武漢 430068)
在信息化背景下,對社交媒體下的網民評論進行情感分析有助于相關機構監管網絡環境、掌握輿論走向、加強網絡輿情引導,具有非常重要的現實意義。
情感分析最早由Nasukawa[1]等人提出,此后出現了大量研究,隨著研究的不斷深入,基于深度學習的情感分析方法[2-4]已成為主流的研究方向,并逐漸由詞向量技術演變為預訓練語言模型。為了更好地理解中文文本的情感傾向,一些學者引入依存句法分析技術來輔助模型分析。杜啟明[5]等人提出一種依存關系感知的嵌入表示,針對性地挖掘不同依存路徑對情感分析任務的貢獻權重。代祖華[6]等人使用圖神經網絡分別獲取詞的句法結構特征表示和融合外部知識庫信息的詞特征表示。張文豪[7]等人用層次詞匯圖代替普通的依存句法樹,更關注詞匯之間的共現關系。先前的工作大多是將語言知識結構與復雜模型結合,而Cui[8]等人提出一種語言學信息增強的預訓練模型LERT(Linguistically-motivated bidirec-tional Encoder Representation from Transformer),不需要增加模型的復雜程度,而且在同等訓練規模下的訓練效果更好。
因此,本文構建了LERT-BiGRU-TextCNN 模型對評論文本進行情感分析,主要貢獻如下:
⑴提出一種基于LERT 語義向量的情感分析模型,該模型預訓練階段使用了Transformer 結構中的encoder部分對文本進行詞性標注、命名實體識別以及依存句法分析標注,生成深層的雙向語言表征。
⑵基于LERT得到的基礎語義向量,設計BiGRU和TextCNN的雙通道結構,進一步對語義特征進行優化融合,得到可用于情感分析的高質量情感語義特征。
⑶ 在數據集SMP2020-EWEC 上的實驗結果表明,LERT-BiGRU-TextCNN 模型具有更高的準確率和F1值,體現了該模型的有效性。
與傳統文本情感分析模型不同的是,本文提出的模型使用LERT預訓練模型作為embedding層,能夠包含更多的語言信息,并且在對該模型進行訓練時,可以只訓練BiGRU、TextCNN 部分的參數,大大降低了模型訓練成本,提升了模型的訓練效率。如圖1所示,模型分為三個部分:首先通過LERT 預訓練模型得到文本中詞的向量表示,再將詞向量序列分別輸入到BiGRU、TextCNN 模型中進一步提取語義信息,最后通過全連接層輸出情感分類結果。

圖1 LERT-BiGRU-TextCNN模型結構
LERT 是一種語言學信息增強的預訓練模型,在掩模語言模型的基礎上結合語言基礎平臺(LTP)對評論文本進行訓練。如圖2 所示,其流程主要分為語言分析和模型預訓練兩個部分。

圖2 LERT框架
⑴語言分析。使用LTP 對輸入的文本進行詞性標注(POS)、命名實體識別(NER)和依存句法分析(DEP)標注,生成語言學標簽。
⑵模型預訓練。LERT 只對掩碼位置進行預測,將每個輸入投影到相應的POS、NER 和DEP 中使用LTP進行標注。
比如,網絡中Transformer 的最后一個隱藏層為H∈RN×d(N為輸入的文本向量長度,d為隱藏層大小),用來表示掩碼特征信息的向量為Hl∈H,輸入的詞嵌入矩陣為E∈RV×d(V為語言標簽數量)。對于任一語言分析任務(POS、NER 和DEP),其歸一化概率pi計算如下:
1.2.1 BiGRU通道
考慮到詞語與上下文之間的聯系,本文使用BiGRU 網絡提取特征信息,從文本序列前、后兩個方向完成遍歷,挖掘隱含特征。BiGRU 由前向GRU和反向GRU 組成,在計算自身隱藏狀態時相互獨立,其結構如圖3所示。

圖3 BiGRU結構
BiGRU 在t 時刻的隱藏層狀態gt由前向GRU 隱藏狀態-1和反向GRU 隱藏狀態-1加權求和得到,計算如下:
1.2.2 TextCNN通道
TextCNN融合了CNN網絡結構的優點,同時解決了詞袋模型的稀疏性問題,其結構分為四個部分:
⑴嵌入層將訓練好的詞向量輸入到網絡中,并用矩陣表示輸入的文本序列,如下:
其中,k為序列所含詞個數;xi為第i個詞的詞向量;⊕為拼接操作符。
⑵卷積層使用多個不同大小的卷積窗口同時提取文本信息,再通過非線性激活函數f得到特征映射矩陣C=[c1,c2,???,cn,],特征公式為:
其中,ci為第i次卷積值;Cj為第j個卷積核通過卷積得到的矩陣;H為卷積核;h為卷積核大小;b為偏置參數;n為卷積核個數。
⑶池化層通過最大池化法得到一個定長的向量表示,并實現矩陣降維,防止過擬合現象的發生。
⑷全連接層在全連接層使用dropout 函數,以減少網絡對連接的過度依賴。
為了評估LERT-BiGRU-TextCNN模型的有效性,使用SMP2020-EWECT 微博評論數據集進行實驗。首先將數據分為積極評論和消極評論兩大類,使用HarvestText 和Pyhanlp 清洗評論文本,刪除網頁鏈接與冗余符號,但保留“?”“!”等具有情感色彩的標點符號,經整理得到的有效數據統計信息如表1所示。

表1 實驗數據統計表
針對本文使用的模型,選擇LeakyReLU 作為激活函數,以避免ReLU 函數的神經元死亡問題;采用隨機梯度下降法更新權重,優化器選用Adam 算法;模型的損失函數為CrossEntropyLoss。模型參數設置見表2。

表2 模型參數設置
為驗證LERT-BiGRU-TextCNN 模型的有效性,選用以下四個模型作為基線進行對比實驗。
BiRNN:該模型能夠獲取文本序列的上下文信息。
TextCNN:該模型使用多個尺寸的卷積核同時提取特征,并通過池化層聚合重要特征、降低特征維度。
BiGRU:一種雙向循環神經網絡模型。在門控遞歸單元的基礎上,采用雙向結構進行情感分析。
BERT-TextCNN-BiGRU:在BERT 基礎上,添加了融合TextCNN和BiGRU的雙通道神經網絡結構。
本文使用準確率和F1值作為模型性能評估指標,實驗結果如表3所示,本文所用模型為LERT-BiGRUTextCNN。

表3 模型實驗結果對比(%)
由表3 可以看出:本文模型在數據集上的表現均優于對比實驗模型。這是因為BiRNN、TextCNN 和BiGRU 模型無法解決文本時序特征的問題,容易發生梯度爆炸。BERT-BiGRU-TextCNN 模型基于Transformer 結構并行計算,解決了傳統情感分析模型的梯度爆炸問題,因此在對比實驗中具有較高準確率。本文提出的模型使用LTP 對文本進行POS、NER和DEP 標注,能夠包含更多語言信息,更適用于處理含有大量中文的微博評論數據,因而擁有更高的準確率和F1值。
本文提出了一種基于LERT 預訓練語言模型和BiGRU-TextCNN 雙通道的情感分析方法。使用LERT 進行語義標注,將語義信息輸入到雙通道模型中進行訓練。對比現有的研究方法,本文方法具有更高的準確率和F1值,模型訓練效果更顯著。接下來還需要考慮融入方面詞特征,結合LERT 表征情感詞的多義性,以提高文本情感分析模型的識別精度。