徐 龍
(中國石油大學(xué)(華東)計算機與通信工程學(xué)院,山東 青島 266580)
近年來,移動互聯(lián)網(wǎng)和社交網(wǎng)絡(luò)發(fā)展迅速,用戶越來越習(xí)慣在各大電商平臺中表達(dá)對某一產(chǎn)品或者服務(wù)的喜好,同時利用微博等社交軟件在互聯(lián)網(wǎng)中分享和傳播自己對于某件事物的看法。伴隨著這些在線評論的興起,對評論文本進(jìn)行情感挖掘引起了許多學(xué)者的高度關(guān)注,研究的側(cè)重點主要是確定評論文本的情感極性[1-2]。
大多數(shù)現(xiàn)有的情感極性分類方法都遵循Pang等人[3-4]提出的方法,主要包括傳統(tǒng)的統(tǒng)計學(xué)方法以及機器學(xué)習(xí)方法,例如邏輯回歸(LR)、樸素貝葉斯、支持向量機等方法。此類方法一般從帶有情感標(biāo)簽的文本中,人為地構(gòu)造合適的特征,同時通過期望交叉熵等方法選取最有效的特征來表征文本,用于學(xué)習(xí)器的訓(xùn)練,最終獲得文本的情感極性。這些方法的優(yōu)勢在于算法相對簡單,但是,特征的構(gòu)建過程更多地依賴于大量人工提取的文本特征和領(lǐng)域知識,整個過程人為因素干擾大[5]。同時,人為構(gòu)造的特征比較淺顯,普遍無法對文本的語義特征進(jìn)行更深層次抽象與提取。由于評論文本具有主題不明確、口語化嚴(yán)重、規(guī)范性很差等特點[6],使用傳統(tǒng)特征提取方法則更加費時費力。
近年來,深度學(xué)習(xí)在自然語言處理領(lǐng)域的應(yīng)用引起了工業(yè)界和學(xué)術(shù)界廣泛的關(guān)注[7-8]。深度學(xué)習(xí)是一種端到端的模型,其本質(zhì)上是一種表示學(xué)習(xí)方法,深度學(xué)習(xí)模型能夠高效、自動地完成特征提取任務(wù),并且取出的特征能夠更好地反映出文本語義信息。Kim等人[9-11]在預(yù)訓(xùn)練的詞向量(word embedding)模型上研究了卷積神經(jīng)網(wǎng)絡(luò)對句子級別情感分析任務(wù)的表現(xiàn),將詞向量與卷積神經(jīng)網(wǎng)絡(luò)相結(jié)合,獲得了比較出色的應(yīng)用。Bagheri等人[12]利用循環(huán)神經(jīng)網(wǎng)絡(luò)模型對短文本進(jìn)行情感分析,取得了先進(jìn)的性能。自2017年以來,越來越多的學(xué)者開始使用自注意力機制[13-14]進(jìn)行文本特征的提取,自注意力機制是一種高效的捕捉文本特征的網(wǎng)絡(luò)層,它通過計算self-attention,可以得到句子內(nèi)部詞之間的依賴關(guān)系,更高效地捕捉句子內(nèi)部的結(jié)構(gòu)。而多頭注意力機制則多次進(jìn)行self-attention的計算,可以進(jìn)一步提高捕獲文本特征的能力。GPT(Generative Pre-trained Transformer)[15]使用自注意力層作為文本特征提取器,并通過簡單地微調(diào)預(yù)訓(xùn)練參數(shù)在下游任務(wù)中進(jìn)行訓(xùn)練。谷歌于2018年提出的新的預(yù)訓(xùn)練語言模型BERT[16],同樣以自注意力層作為特征提取器,在11個自然語言處理任務(wù)上都達(dá)到了極佳的結(jié)果。Sabour等人[17-18]提出了膠囊網(wǎng)絡(luò)(capsule network),其本質(zhì)是一個包含多個神經(jīng)元的向量,向量中的每個神經(jīng)元表示了圖像中出現(xiàn)的特定實體的各種屬性。
目前深度學(xué)習(xí)在情感分析領(lǐng)域依然存在很多問題。首先,深度學(xué)習(xí)模型的訓(xùn)練需要大量監(jiān)督訓(xùn)練樣本;同時,深度學(xué)習(xí)模型擁有大量的參數(shù),在規(guī)模較小的數(shù)據(jù)集上進(jìn)行訓(xùn)練,往往會導(dǎo)致過擬合的出現(xiàn)。其次,由于情感分析領(lǐng)域的數(shù)據(jù)標(biāo)注大多采用人工標(biāo)注的方法,成本高昂,難以得到有效擴展,在情感分析領(lǐng)域監(jiān)督訓(xùn)練樣本規(guī)模始終有限[19]。
為了解決傳統(tǒng)機器學(xué)習(xí)應(yīng)用中文本特征提取選擇的主觀性難題,同時改善深度學(xué)習(xí)技術(shù)在自然語言處理領(lǐng)域準(zhǔn)確度低的問題,提升評論文本情感分析的準(zhǔn)確性,本文提取出一種使用自注意力機制作為底層特征提取器,而膠囊網(wǎng)絡(luò)作為網(wǎng)絡(luò)結(jié)構(gòu)頂層分類器的網(wǎng)絡(luò)模型,并對小樣本數(shù)據(jù)以及跨領(lǐng)域遷移情感分析進(jìn)行探索。
圖1 模型結(jié)構(gòu)圖
本文提出一種基于自注意力和膠囊網(wǎng)絡(luò)的模型用于情感分析,其結(jié)構(gòu)如圖1所示。它由3個模塊組成:語義表示模塊、自注意力特征提取模塊和膠囊網(wǎng)絡(luò)分類模塊。假設(shè)輸入句子是Z=[w1,…,w2],該模型的目標(biāo)是預(yù)測句子Z的情感極性是正(P)還是負(fù)(N)。
文檔是由一個單詞序列構(gòu)成,神經(jīng)網(wǎng)絡(luò)的輸入需要將文本數(shù)據(jù)映射為實數(shù)向量,即將每個詞映射為一個向量,目前,文本向量化的表現(xiàn)方式主要包括2種:獨熱向量表征和詞向量表征。本文使用詞向量表征方法,通過爬蟲軟件爬取大約200萬條某購物網(wǎng)站評論數(shù)據(jù),與中文維基百科數(shù)據(jù)合并構(gòu)成語料庫。經(jīng)過去重、無效數(shù)據(jù)刪除等數(shù)據(jù)清洗手段,同時利用停用詞庫對該語料庫進(jìn)行去停用詞后進(jìn)行分詞,利用Word2vec[20]方法得到語料庫中所有詞的向量表示M∈R200×|v|作為詞嵌入層,其中200是詞向量的維數(shù),|v|是詞匯表的大小。通過將輸入文本進(jìn)行相同的預(yù)處理過程,用xi∈Rk表示評論句中詞語wi,每條評論均看作詞語的序列,通過詞嵌入層的映射后,每個詞被表征為一個200維向量,既可保留評論語境前后順序,又可以將評論表示為矩陣形式,最終得到文檔集的向量表示,并在隨后的訓(xùn)練中進(jìn)行調(diào)整。
卷積神經(jīng)網(wǎng)絡(luò)利用文本中的局部最優(yōu)信息,但淺層的卷積神經(jīng)網(wǎng)絡(luò)難以捕捉長距離特征,難以對序列數(shù)據(jù)進(jìn)行建模;而循環(huán)神經(jīng)網(wǎng)絡(luò)則利用長距離的上下文歷史信息,但在長距離上容易產(chǎn)生梯度消失或梯度爆炸問題,梯度難以傳播,參數(shù)無法得到有效的更新。所以,本文采用自注意力層提取評論文本中的特征,通過將句子中的任意2個單詞直接鏈接,一步到位捕捉到句子中詞與詞之間的相互關(guān)系,直接獲取長距離相互依存特征,提取到的特征對文本的表征則更加豐富。
MultiHead(Q,K,V)=Concat(head1,…,headn)
圖2 多頭自注意力提取層結(jié)構(gòu)
本文使用膠囊網(wǎng)絡(luò)中的神經(jīng)元向量來代替?zhèn)鹘y(tǒng)神經(jīng)網(wǎng)絡(luò)中的單個神經(jīng)元節(jié)點。膠囊網(wǎng)絡(luò)除了可以在自注意力層提取豐富的文本信息,還可以有效地編碼單詞位置、語義和合成結(jié)構(gòu),它提高了文本表達(dá)能力,并獲得了文本的更進(jìn)一步的表征。
該層的輸入為自注意力特征提取層的輸出hi,整個模型參數(shù)的更新采用動態(tài)路由算法[17]。利用膠囊向量的模長來表示對應(yīng)類別的分類概率,利用不同的膠囊向量對應(yīng)不同的類別。整個網(wǎng)絡(luò)層的結(jié)構(gòu)如圖3所示。圖中各關(guān)鍵參數(shù)計算公式如下:
uj|i=Wijhi
為了能使膠囊的模長表示概率,將最后的輸出使用squash函數(shù)進(jìn)行歸一化。
vi=(‖sj‖2/(1+‖sj‖2))×(sj/‖sj‖)
圖3 膠囊網(wǎng)絡(luò)層結(jié)構(gòu)示意圖
本文選擇譚松波教授整理并標(biāo)注好的酒店評論語料,為了探究小數(shù)據(jù)集上的模型表現(xiàn),選擇其中的6000條平衡評論數(shù)據(jù),其中正面評論數(shù)目為3000,負(fù)面評論數(shù)目為3000。在作為模型的輸入之前,先對數(shù)據(jù)進(jìn)行數(shù)據(jù)清洗,調(diào)整語料數(shù)據(jù)的格式和字符,去除數(shù)據(jù)集中不相關(guān)的特殊符號、空格符及換行符等,并進(jìn)行停用詞的處理。其中,訓(xùn)練集與測試集的比例為7:3,是正負(fù)樣本經(jīng)過隨機分割得到。
實驗參數(shù)設(shè)置如表1所示。
表1 實驗參數(shù)設(shè)置
本文實驗的評價指標(biāo)是準(zhǔn)確率(Precision)、召回率(Recall)和F1值(F1-score),對比實驗選擇了目前主流的情感分析深度學(xué)習(xí)方法,深度模型包括TextCNN、TextRNN、TextAttBiRNN,為了防止過擬合現(xiàn)象,使用Early Stopping策略進(jìn)行模型的訓(xùn)練,并通過對多組超參數(shù)調(diào)整選取了最佳的模型表現(xiàn)結(jié)果。
表2展示了TextCNN、TextRNN、TextAttBiRNN這3個主流的用于情感分析的深度學(xué)習(xí)模型以及本文使用的模型做情感分析的結(jié)果,對比可以發(fā)現(xiàn):在樣本數(shù)量比較多的條件下(4800條訓(xùn)練樣本),經(jīng)過精細(xì)的超參數(shù)選擇,可以發(fā)現(xiàn)通過將預(yù)訓(xùn)練后的詞向量作為深度模型的輸入,主流的深度學(xué)習(xí)模型都取得了比較好的效果。其中TextCNN在3個不同數(shù)量訓(xùn)練樣本都取得了最好的分?jǐn)?shù),因此,可以認(rèn)為相較于長距離文本信息,評論文本的情感分析準(zhǔn)確率更依賴于局部特征。
表2 短文本情感分析結(jié)果
使用本文提出的基于自注意力層和膠囊網(wǎng)絡(luò)的模型用于文本情感分析,相較于傳統(tǒng)的情感分析深度學(xué)習(xí)模型,精度得到了提高??梢姳疚奶岢龅哪P褪怯行У模梢杂行岣咴u論文本情感分析的精度與準(zhǔn)確度,本文提出的方法在情感分析任務(wù)上具有很好的性能。
為了驗證本文提出的模型在小樣本數(shù)據(jù)上的有效性,設(shè)計了小樣本試驗,即分別在500個訓(xùn)練樣本中訓(xùn)練和在200個訓(xùn)練樣本中訓(xùn)練,實驗結(jié)果如表3、表4所示。
表3 500個訓(xùn)練樣本情感分析結(jié)果
表4 200個訓(xùn)練樣本情感分析結(jié)果
此外,為了驗證本文模型充分提取到了語言的語義信息以及模型的優(yōu)越性,本文設(shè)計如下實驗:將在4800條酒店評論語料上充分訓(xùn)練得到的最優(yōu)模型,用來預(yù)測3000條某網(wǎng)站獲取的水果評論語料,該水果評論語料由1500條正面評價和1500條負(fù)面評價組成,實驗結(jié)果如表5所示。
表5 跨領(lǐng)域遷移學(xué)習(xí)結(jié)果
在小樣本數(shù)據(jù)集上,可以看到,主流的深度學(xué)習(xí)模型精度下降10%~20%,可見,傳統(tǒng)深度學(xué)習(xí)模型在小樣本數(shù)據(jù)集上表現(xiàn)糟糕,主要是由于傳統(tǒng)模型在小數(shù)據(jù)集上無法得到有效的訓(xùn)練,不能很好地捕捉到文本中跟情感分析相關(guān)的語義特征,而本文提出的方法,在小樣本數(shù)據(jù)集上表現(xiàn)穩(wěn)定,在500個樣本訓(xùn)練集上比傳統(tǒng)的主流深度學(xué)習(xí)模型中表現(xiàn)最好的TextCNN,F(xiàn)1值稍有提高,在200個訓(xùn)練樣本上,F(xiàn)1值提高了6個百分點左右,且與500個訓(xùn)練樣本表現(xiàn)相當(dāng)。因此可以認(rèn)為自注意力層充分提取到了樣本中的語言學(xué)知識,而膠囊層又能很好地對它們進(jìn)行分類,因此,本文提出的方法在小樣本評論文本情感分析中也有很好的性能。
通過跨領(lǐng)域遷移實驗結(jié)果可以得出:評論語料的情感分析更多好依賴于局部特征,因此TextCNN模型表現(xiàn)較好,遷移性能比較好。但是,依然存在精度不足的問題,難以在實踐中使用。而本文提出的模型比傳統(tǒng)的主流深度學(xué)習(xí)模型中表現(xiàn)最好的TextCNN,F(xiàn)1值提高了近1.5個百分點,因此本文提出的模型既可以充分學(xué)到評論文本中的短距離平行特征,又因為自注意力特征提取層的機制,也可以充分學(xué)習(xí)到長距離依賴特征,因此,本文提出的模型在跨領(lǐng)域樣本情感分析中也有很好的性能。
本文提出了一種新的基于自注意力機制和膠囊網(wǎng)絡(luò)的混合模型用于情感分析任務(wù),該模型不僅充分利用了短文的前后信息,縮短了相互依賴的特征之間的距離,而且可以提取出更豐富的文本信息。通過在相同的訓(xùn)練條件下,與目前主流的情感分析中的深度學(xué)習(xí)模型作對比,本文提出的模型在情感分析任務(wù)的精確度上有提升,同時,在小樣本數(shù)據(jù)集上進(jìn)行對比實驗得出,該模型在小樣本數(shù)據(jù)集上表現(xiàn)優(yōu)異,提升了精度,同時,在跨領(lǐng)域遷移學(xué)習(xí)上的實驗表明該模型確實增強了模型學(xué)習(xí)語義特征的能力,極大地提高了文本情感分析在不同領(lǐng)域上的表現(xiàn)。