李詩(shī)月,孟佳娜,于玉海,李雪瑩,許英傲
(大連民族大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院,遼寧 大連 116600)
情感分析是自然語(yǔ)言處理(Natural Language Processing,NLP)領(lǐng)域比較活躍的一個(gè)研究方向[1],根據(jù)研究粒度不同,可細(xì)劃分成:文檔級(jí)、句子級(jí)和方面級(jí)情感分析。方面級(jí)情感分析(Aspect Based Sentiment Analysis,ABSA)屬于細(xì)粒度的情感分析,細(xì)粒度的情感分析更具有針對(duì)性[1]。以評(píng)論“這個(gè)餐館裝修很大氣,但是消費(fèi)太高了!”為例,對(duì)于餐館的“裝修”方面,其情感傾向是正向的,而對(duì)餐館的“消費(fèi)”方面則是負(fù)向的。通過(guò)該例子可以看到,方面級(jí)情感分析具有粒度更細(xì)、決策更準(zhǔn)、標(biāo)準(zhǔn)統(tǒng)一等特點(diǎn),能夠保留用戶針對(duì)不同方面的情感信息,其在社交、電子商務(wù)等領(lǐng)域發(fā)揮著至關(guān)重要的作用[2]。
目前方面級(jí)情感分析的研究出現(xiàn)了很多基于深度學(xué)習(xí)的方法,循環(huán)神經(jīng)網(wǎng)絡(luò)在序列問(wèn)題中具有優(yōu)秀的學(xué)習(xí)能力,Tang等人[3]提出了基于目標(biāo)依賴的長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò)和基于目標(biāo)關(guān)聯(lián)的長(zhǎng)短期記憶神經(jīng)網(wǎng)絡(luò),可以學(xué)習(xí)目標(biāo)詞語(yǔ)跟上下文的相互關(guān)系;注意力機(jī)制能夠準(zhǔn)確區(qū)分不同方面的關(guān)聯(lián)程度,Wang 等人[4]最先提出帶有方向嵌入的、基于注意的LSTM 方法,它為每個(gè)關(guān)鍵詞都分配了一個(gè)注意力,讓模型自主重視句子中的較重要部分。雖然,基于注意的神經(jīng)網(wǎng)絡(luò)模型在一些數(shù)據(jù)集取得了不錯(cuò)的效果,但由于沒(méi)有考慮句子中不同方面詞的句法依賴關(guān)系,導(dǎo)致權(quán)重分配錯(cuò)誤,進(jìn)而對(duì)方面詞情感進(jìn)行了錯(cuò)誤的預(yù)測(cè)。Devlin 等人[5]設(shè)計(jì)了具有多層變壓器編碼器結(jié)構(gòu)的BERT 模型,有效解決了LSTM 模型的并行計(jì)算和深度困難。最近的研究[6-8]利用圖的模型來(lái)整合句子的句法結(jié)構(gòu),比那些不考慮句法關(guān)系的模型表現(xiàn)出了更好的性能。
使用外部知識(shí)庫(kù)(Knowledge Base,KB)增強(qiáng)神經(jīng)模型已在一系列NLP 應(yīng)用中顯示出優(yōu)勢(shì),Peters 等人[9]提出在輸入文本中的顯式建模實(shí)體跨度,并使用實(shí)體鏈接器從KB 中檢索相關(guān)的實(shí)體嵌入,以形成知識(shí)增強(qiáng)的實(shí)體跨度表示形式。Li 等人[10]提出吸收外部知識(shí)的注意力模型,實(shí)驗(yàn)表明吸收外部知識(shí)可以降低對(duì)數(shù)據(jù)的依賴并提升模型表現(xiàn)。Liu 等人[11]通過(guò)融合非結(jié)構(gòu)化知識(shí)和結(jié)構(gòu)化知識(shí),提出基于擴(kuò)充知識(shí)圖的開(kāi)放域?qū)υ捝赡P?,并在?duì)話系統(tǒng)中進(jìn)行靈活的多跳知識(shí)圖推理。Islam 等人[12]提出了一種2 級(jí)全局-局部實(shí)體嵌入方案,該方案允許有效地聯(lián)合訓(xùn)練基于KG 的方面嵌入和ABSA 模型。盡管外部知識(shí)庫(kù)在NLP問(wèn)題中應(yīng)用比較廣泛,但將其使用在方面級(jí)情感分析任務(wù)中還是比較少的。在方面級(jí)任務(wù)中,常識(shí)知識(shí)通過(guò)其結(jié)構(gòu)關(guān)系幫助模型理解情感術(shù)語(yǔ)和觀點(diǎn)目標(biāo)[13],并且可以為模型提供監(jiān)督信號(hào),提高模型語(yǔ)義解析能力[14]。
對(duì)于方面級(jí)情感分析問(wèn)題,目前深度學(xué)習(xí)方法大多是通過(guò)序列表示方法或者注意力機(jī)制來(lái)建模目標(biāo)詞和上下文間的關(guān)系,但由于語(yǔ)言的復(fù)雜性,這些模型并未充分考慮方面詞與對(duì)應(yīng)意見(jiàn)詞存在的背景知識(shí)。為了解決上述問(wèn)題,本文提出基于知識(shí)增強(qiáng)的方面級(jí)情感分析模型(Aspect Based Sentiment Analysis Model Based on Knowledge Enhancement,ABSAKE),通過(guò)預(yù)訓(xùn)練模型BERT 建立較為準(zhǔn)確的方面詞向量特征表示,然后獲取文本對(duì)應(yīng)的依存關(guān)系樹(shù)與BiLSTM 學(xué)習(xí)到的方面詞和意見(jiàn)詞的上下文信息,以及節(jié)點(diǎn)在圖中的序列特征,將結(jié)合后的特征通過(guò)圖注意力網(wǎng)絡(luò)(Graph Attention Networks,GAT)建立最終的向量表示,再根據(jù)方面詞獲得ConceptNet[15]子圖,增強(qiáng)文本特征表示,獲取方面詞的圖特征向量,最后與文本特征進(jìn)行融合,實(shí)現(xiàn)情感分類。主要工作有:
1)將GAT 應(yīng)用到方面級(jí)情感分析中,沿著依存關(guān)系樹(shù)的句法路徑建模依存關(guān)系,為不同句法路徑分配不同的權(quán)重,以此增強(qiáng)節(jié)點(diǎn)嵌入。
2)使用外部知識(shí)庫(kù)獲取方面詞的概念表示,增強(qiáng)上下文語(yǔ)義知識(shí),并通過(guò)其結(jié)構(gòu)關(guān)系幫助模型理解情感術(shù)語(yǔ)和觀點(diǎn)目標(biāo)。
3)融合來(lái)自依存樹(shù)、圖注意力網(wǎng)絡(luò)和外部知識(shí)庫(kù)的特征進(jìn)行方面級(jí)情感分析任務(wù),在5 個(gè)基準(zhǔn)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),得到了比較好的結(jié)果。
依存關(guān)系分析[16]又名依存句法分析,目的是給定一段文本,識(shí)別文本中詞與詞之間的相互依存關(guān)系,為每個(gè)單詞(頭節(jié)點(diǎn))找到其對(duì)應(yīng)的尾節(jié)點(diǎn),可以更好地幫助理解整個(gè)句子的含義,這也是NLP領(lǐng)域中比較關(guān)鍵的技術(shù)之一。其表示方式通過(guò)有向箭頭從核心詞指向依存詞,而有向圖、依存投影樹(shù)和依存樹(shù)為依存關(guān)系結(jié)構(gòu)常見(jiàn)的表達(dá)方式。以“I prefer the morning flight through Denver”這個(gè)文本為例,其依存樹(shù)表達(dá)方式如圖1所示。
圖1 依存樹(shù)表示方式
圖卷積網(wǎng)絡(luò)[17](Graph Convolution Networks,GCN)在文本分析方面已經(jīng)有了許多探索,圖卷積是一種對(duì)圖形結(jié)構(gòu)數(shù)據(jù)進(jìn)行半監(jiān)督學(xué)習(xí)的網(wǎng)絡(luò)結(jié)構(gòu),是基于直接對(duì)圖進(jìn)行操作的卷積神經(jīng)網(wǎng)絡(luò)的一種有效變體。Yao等人[18]構(gòu)建共詞網(wǎng)絡(luò)和文檔關(guān)系網(wǎng)絡(luò),利用圖卷積網(wǎng)絡(luò)在不使用外部知識(shí)和單詞表達(dá)的情況下取得了較好的結(jié)果;Sun等人[19]利用句法信息和單詞依賴關(guān)系提出了卷積依賴樹(shù)模型,該模型在依存樹(shù)上進(jìn)行卷積操作獲取節(jié)點(diǎn)特征和連接邊的依賴信息,但信息傳播中可能會(huì)錯(cuò)誤地將句法上不相關(guān)的單詞與目標(biāo)方面相關(guān)聯(lián)。
結(jié)合圖卷積與注意力機(jī)制,Velickovic 等人[20]提出了圖注意力網(wǎng)絡(luò),GAT是基于圖形結(jié)構(gòu)化數(shù)據(jù)的新型神經(jīng)網(wǎng)絡(luò)。采用注意力機(jī)制,可以為不同節(jié)點(diǎn)分配不同權(quán)重,訓(xùn)練時(shí)依賴于成對(duì)的相鄰節(jié)點(diǎn),而不依賴具體的網(wǎng)絡(luò)結(jié)構(gòu),并且可用于有向圖。Huang等人[21]提出基于記憶融合的圖注意模型,利用卷積運(yùn)算和注意力機(jī)制分別提取節(jié)點(diǎn)的局部信息和為邊分配不同權(quán)重,得到了較好的準(zhǔn)確率和F1值。
知識(shí)庫(kù)有助于將文本與真實(shí)實(shí)體、事實(shí)知識(shí)和常識(shí)概念聯(lián)系起來(lái),尤其是常識(shí)知識(shí)庫(kù)提供了豐富的背景概念來(lái)源,可以通過(guò)提供某一領(lǐng)域的概念來(lái)增強(qiáng)文本的語(yǔ)義。Ghosal 等人[13]利用外部知識(shí)庫(kù)來(lái)調(diào)整一個(gè)流行的領(lǐng)域?qū)剐曰€方法,有效地提高了其性能。本文使用的ConceptNet是一個(gè)語(yǔ)義網(wǎng)絡(luò),也是一個(gè)知識(shí)圖譜,以3 元組形式的關(guān)系型知識(shí)構(gòu)成。利用句子中蘊(yùn)含的文本自身的語(yǔ)法知識(shí)可以提高情感分析任務(wù)的準(zhǔn)確度。因此,本文考慮借助外部知識(shí)庫(kù)豐富文本中方面詞背景信息,增強(qiáng)評(píng)論文本特征表示,提高模型分類能力。
本文提出基于知識(shí)增強(qiáng)的方面級(jí)情感分析模型(ABSA-KE),該模型的實(shí)現(xiàn)建立在依存樹(shù)的基礎(chǔ)上,依存關(guān)系樹(shù)可以形象展現(xiàn)出句子的句法結(jié)構(gòu),更好理解文本中整個(gè)句子的含義,并引入外部知識(shí)庫(kù)對(duì)方面詞進(jìn)行概念表示,幫助模型取得更好效果。其大概步驟為:使用BERT 模型對(duì)評(píng)論文本信息進(jìn)行文本特征提取,使用BiLSTM 和圖注意力網(wǎng)絡(luò)分別對(duì)上下文信息和依存關(guān)系進(jìn)行建模,同時(shí)利用方面詞提取ConceptNet 子圖,通過(guò)圖卷積網(wǎng)絡(luò)對(duì)子圖進(jìn)行圖特征向量提取,三者集成來(lái)獲取含深層語(yǔ)義的信息特征表示,經(jīng)過(guò)分類器實(shí)現(xiàn)情感判別。該方面級(jí)情感分析模型的總體結(jié)構(gòu)如圖2所示,主要由以下5個(gè)部分組成。
圖2 ABSA-KE模型結(jié)構(gòu)圖
1)向量表示層:將預(yù)處理后的評(píng)論文本送到預(yù)訓(xùn)練模型BERT 中,獲得包含了單詞語(yǔ)義的雙向編碼詞嵌入表示,即BERT詞嵌入。
2)BiLSTM 層:將向量表示層獲得的方面詞和上下文詞嵌入輸送到BiLSTM 網(wǎng)絡(luò)中,學(xué)習(xí)單詞之間的上下文信息,得到BiLSTM層的高維詞嵌入表示。
3)圖注意力網(wǎng)絡(luò)層:將高維詞嵌入送到GAT中,并且GAT 沿著依存關(guān)系樹(shù)的句法路徑建模依存關(guān)系,并為不同句法路徑分配不同權(quán)重,阻止無(wú)關(guān)詞向方面詞的信息傳播,從而增強(qiáng)節(jié)點(diǎn)嵌入,輸出該層的向量表示。
4)概念編碼層:通過(guò)方面詞提取ConceptNet 子圖,并對(duì)其進(jìn)行概念化,得到圖特征向量。
5)情感預(yù)測(cè)層:將得到的GAT 詞嵌入通過(guò)平均池化操作得到方面詞向量與概念編碼層的圖特征向量進(jìn)行拼接,再經(jīng)過(guò)Softmax 分類器輸出不同情感極性的概率分布,實(shí)現(xiàn)情感分類。
2.2.1 向量表示層
目前,比較常見(jiàn)的詞向量模型主要有GloVe 和Word2Vec,但是這些模型在訓(xùn)練過(guò)程中不能注意到單詞間的前后序列關(guān)系,不能解決單詞的一詞多義問(wèn)題,不能準(zhǔn)確定位到單詞的位置信息,而B(niǎo)ERT 預(yù)訓(xùn)練語(yǔ)言模型解決了上述這些問(wèn)題。BERT 模型使得每個(gè)詞語(yǔ)在訓(xùn)練過(guò)程中都能同時(shí)利用到自身信息和上下文信息,參與運(yùn)算的信息較充分,具有極好的表征能力[4]。本文使用BERT 來(lái)提取輸入句子的更深層次序列特征,然后將輸出的特征向量送到下游方面級(jí)情感分析任務(wù)中。
假設(shè)一個(gè)包含n個(gè)單詞的句子,s=(w1,w2,…,wn),句子s有對(duì)應(yīng)的詞嵌入x,記為x=(x1,x2,…,xn);它由一個(gè)方面句子對(duì)(a,s)構(gòu)成,其中方面詞a是s的一個(gè)子序列,記為a=(w1,w2,…,wm),經(jīng)過(guò)BERT 預(yù)訓(xùn)練模型后,轉(zhuǎn)化成低維、連續(xù)的實(shí)數(shù)向量,得到較為準(zhǔn)確的方面詞向量特征表示。
2.2.2 BiLSTM 層
BiLSTM 網(wǎng)絡(luò)能夠從語(yǔ)料中學(xué)習(xí)到長(zhǎng)期依賴關(guān)系[22];該網(wǎng)絡(luò)重復(fù)利用了每個(gè)輸入序列和時(shí)間步長(zhǎng),充分全面學(xué)習(xí)到方面詞和意見(jiàn)詞的上下文信息以及節(jié)點(diǎn)在圖中的序列特征,有助于提高模型情感預(yù)測(cè)效果,前向LSTM 在詞嵌入{x1,x2,…,xn}上學(xué)到的隱藏表示,記為后向LSTM 在詞嵌入{x1,x2,…,xn} 上學(xué)到的隱藏表示,記為前后2 個(gè)方向捕捉上下文信息,然后拼接得到高維的表示,記為其中子序列方面向量a的隱藏表示為高效捕獲方面詞和意見(jiàn)詞的上下文。
2.2.3 圖注意力網(wǎng)絡(luò)層
在ABSA-KE 模型中,用斯坦福解析器[23]解析句子,得到對(duì)應(yīng)的依存關(guān)系樹(shù)后,依存關(guān)系樹(shù)被看作為一個(gè)有n個(gè)節(jié)點(diǎn)的圖G,圖中的邊代表單詞間的依存關(guān)系路徑。而依存關(guān)系的存儲(chǔ)形式是一個(gè)對(duì)稱的n×n的鄰接矩陣,這里用A表示,行與列的長(zhǎng)度與句子的長(zhǎng)度等價(jià),0 代表單詞之間不存在依存關(guān)系,1 代表單詞間有關(guān)聯(lián),即存在連接路徑。假設(shè)圖G是一個(gè)自循環(huán)結(jié)構(gòu),圖注意力網(wǎng)絡(luò)從鄰接矩陣A處獲取圖結(jié)構(gòu)信息和句法信息,輔助ABSA-KE模型實(shí)現(xiàn)情感分類。
圖注意力網(wǎng)絡(luò)通過(guò)這些路徑進(jìn)行更新和傳播信息,不斷更新節(jié)點(diǎn)的嵌入表示。在這樣的操作過(guò)程中,GAT 只考慮了節(jié)點(diǎn)的一階鄰域,以此類推,l個(gè)連續(xù)的GAT 操作即表示信息在l階鄰域內(nèi)傳播。給定一個(gè)n個(gè)單詞的句子s,其中包含從第τ+1個(gè)令牌開(kāi)始的對(duì)應(yīng)的m個(gè)單詞方面。為了增強(qiáng)上下文與方面詞的相關(guān)性,在第l層時(shí),對(duì)節(jié)點(diǎn)i施加一個(gè)位置權(quán)重函數(shù),計(jì)算公式如式(1)所示,qi表示節(jié)點(diǎn)i的位置權(quán)重。
衡量節(jié)點(diǎn)i和節(jié)點(diǎn)j之間的重要程度,本文采用注意力系數(shù),計(jì)算方式如式(2)所示:
其中,表示單詞進(jìn)行線性變換的共享權(quán)矩陣是節(jié)點(diǎn)i的特征向量,a是權(quán)重向量,Ni表示節(jié)點(diǎn)i的鄰居集合。為了使得圖注意力的學(xué)習(xí)過(guò)程更加穩(wěn)定,在設(shè)置相同參數(shù)條件下,本文對(duì)K個(gè)不同注意力進(jìn)行了實(shí)驗(yàn),由此,可以得到第l+1 層節(jié)點(diǎn)i的最終隱藏表示,如式(3)所示:
其中,代表第k個(gè)注意力系數(shù);代表在第l層第k個(gè)注意力的權(quán)重矩陣。
最后,圖注意力網(wǎng)絡(luò)第l+1層的最終表示,記為:
方面詞和上下文詞經(jīng)過(guò)BiLSTM 和GAT 網(wǎng)絡(luò)聯(lián)合編碼后,方面向量中包含了豐富的上下文、依存和結(jié)構(gòu)信息;ABSA-KE 模型為了保留方面向量中大部分重要的信息,應(yīng)用一個(gè)簡(jiǎn)單的聚合器,通過(guò)平均池化來(lái)聚合方面向量上的信息,得到一維向量表示,即為圖注意力網(wǎng)絡(luò)層的最終輸出,用H(l+1)表示;池化操作的計(jì)算方式如式(5)所示:
其中,f(·)是聚合方面向量的平均池化函數(shù)。
2.2.4 概念編碼層
本文從ConceptNet 提取文本中方面詞相關(guān)子圖。ConceptNet圖表示為有向標(biāo)記圖G=(V,ξ,R),其中V表示概念節(jié)點(diǎn)vi∈V,ξ表示標(biāo)記邊(vi,rij,vj) ∈ξ。rij∈R是節(jié)點(diǎn)vi和vj之間的邊的關(guān)系類型。從數(shù)據(jù)集中所有訓(xùn)練文檔中提取所有方面詞作為種子詞,用來(lái)將ConceptNet 過(guò)濾到子圖G'=(V',ξ',R')中,并獲得初始概念特征向量zi。
由于圖卷積網(wǎng)絡(luò)不能對(duì)帶有標(biāo)記邊的圖進(jìn)行卷積,因此本文使用2 層圖卷積網(wǎng)絡(luò)對(duì)子圖進(jìn)行編碼。在卷積特征變換過(guò)程中確保不同的方面詞通過(guò)基礎(chǔ)概念連接,并相互影響,以創(chuàng)建豐富的方面詞的圖特征向量。轉(zhuǎn)換過(guò)程如公式(6)~公式(8)所示:
2.2.5 情感預(yù)測(cè)層
由上文可知,最后輸出的結(jié)果是方面向量H(l+1)和方面圖向量Zj的串聯(lián)結(jié)果hZ,H=H(l+1)⊕Zj,然后將其傳遞給一個(gè)全連接層,并對(duì)其使用Softmax 函數(shù)進(jìn)行歸一化,輸出不同情感極性的概率分布P,其表達(dá)式如式(9)所示:
其中,hZ,H表示方面向量,Wp、bp表示訓(xùn)練過(guò)程中學(xué)習(xí)到的權(quán)重和偏置。
模型使用的目標(biāo)損失函數(shù)為最小化交叉熵,其訓(xùn)練的目的是使文本中句子的真實(shí)值和預(yù)測(cè)值之間的誤差盡可能地達(dá)到最小。在模型搭建過(guò)程中,它以反向傳播形式對(duì)模型進(jìn)行端到端訓(xùn)練,計(jì)算方式如式(10)所示:
其中,D表示方面句子對(duì)(a,s)的集合,C表示3 種情感類別的集合,yc(a,s)為(a,s)的真實(shí)值,其取值為1或0;特別地,一個(gè)方面句子對(duì)(a,s)只能歸類于一個(gè)情感類別yc(a,s)=1 意味著(a,s)的情感類別屬于c。(a,s)代表著模型對(duì)(a,s)進(jìn)行預(yù)測(cè),目標(biāo)函數(shù)中的θ1和θ2分別是對(duì)應(yīng)于BiLSTM和GAT的可訓(xùn)練參數(shù)。
本文在5 個(gè)基準(zhǔn)數(shù)據(jù)集上進(jìn)行實(shí)驗(yàn),一個(gè)是來(lái)自Dong 等人[24]發(fā)表的Twitter 數(shù)據(jù)集,由Twitter 帖子組成;其他4 個(gè)數(shù)據(jù)集為國(guó)際語(yǔ)義測(cè)評(píng)任務(wù)的公開(kāi)數(shù)據(jù)集(Restaurant14[25],Restaurant15[26],Restaurant16[27],Laptop14[25]),由Laptop 和Restaurant 這2個(gè)領(lǐng)域的評(píng)論構(gòu)成。每個(gè)數(shù)據(jù)集都分為訓(xùn)練集、驗(yàn)證集和測(cè)試集。數(shù)據(jù)集中的方面詞信息以及方面詞對(duì)應(yīng)的情感傾向都已經(jīng)標(biāo)注;其中,情感傾向類別主要包括積極(Positive)、中立(Neutral)和消極(Negative)這3 大類。表1 展示了數(shù)據(jù)集的統(tǒng)計(jì)情況,其中剔除了具有沖突情感極性或者沒(méi)有明確指出方面詞的數(shù)據(jù)。
表1 數(shù)據(jù)集統(tǒng)計(jì)表
實(shí)驗(yàn)在Pytorch環(huán)境下進(jìn)行,并采用Adam優(yōu)化器。其中BERT 詞向量維度為768;模型學(xué)習(xí)率為2e-5;BiLSTM 隱藏層維度為300;批處理大小為32;dropout為0.5。使用預(yù)訓(xùn)練模型BERT 對(duì)輸入文本進(jìn)行向量表示,并且選用包含了注意力機(jī)制的圖注意力網(wǎng)絡(luò)。
實(shí)驗(yàn)中使用的評(píng)價(jià)指標(biāo)是準(zhǔn)確率(Accuracy)和F1 值。準(zhǔn)確率是文本分類任務(wù)中最常用、最基礎(chǔ)的指標(biāo),是指在所有樣本中被預(yù)測(cè)正確的數(shù)量與所有樣本數(shù)目的比值。F1 值是召回率(Recall)和精確率(Precision)這2種指標(biāo)的調(diào)和平均。各指標(biāo)計(jì)算方式如式(11)~式(14)所示:
3.4.1 對(duì)比實(shí)驗(yàn)設(shè)置
本文選用具有代表性的13個(gè)方面級(jí)情感分析模型與本文提出的模型進(jìn)行對(duì)比,對(duì)比模型的具體描述如下:
1)SVM 模型[28]:基于統(tǒng)計(jì)學(xué)習(xí)的模型,利用WordNet等情感詞典,用SVM分類器進(jìn)行情感判別。
2)LSTM 模型[3]:是最基本的神經(jīng)網(wǎng)絡(luò)模型,利用LSTM 獲取上下文的隱藏表示,然后直接通過(guò)Softmax函數(shù)進(jìn)行情感預(yù)測(cè)。
3)TD-LSTM 模型[3]:在LSTM 模型的基礎(chǔ)上進(jìn)行改進(jìn),使用2 個(gè)LSTM 網(wǎng)絡(luò)對(duì)方面詞的前向和后向信息并行建模,然后拼接2 個(gè)方向的隱藏輸出,得到的輸出結(jié)果送到情感預(yù)測(cè)層進(jìn)行情感判別。
4)IAN 模型[29]:利用LSTM 建模目標(biāo)詞和句子上下文信息,借助2 個(gè)注意力,交互檢測(cè)整個(gè)上下文和目標(biāo)描述中的重要單詞,將兩者輸出進(jìn)行結(jié)合,實(shí)現(xiàn)情感傾向性判別。
5)RAM 模型[30]:利用BiLSTM 學(xué)習(xí)句子上下文的序列特征,得到記憶矩陣;使用GRU 網(wǎng)絡(luò)和注意力機(jī)制構(gòu)建循環(huán)注意力模型,得到不同注意力層的結(jié)果后送入情感分類層,輸出情感所屬類別。
6) AOA 模型[31]:利用雙重注意力機(jī)制(Attention-over-Attention)聯(lián)合建模上下文和方面詞,關(guān)注兩者間的相互信息,并對(duì)信息的重要程度進(jìn)行區(qū)分,最后對(duì)情感極性進(jìn)行判別。
7)ASGCN 模型[32]:利用語(yǔ)法信息和單詞依賴關(guān)系,使用圖卷積神經(jīng)網(wǎng)絡(luò)和LSTM 框架、注意力機(jī)制集成來(lái)研究面向方面的情感分類。
8)CDT 模型[19]:在依賴樹(shù)上使用圖卷積網(wǎng)絡(luò)捕獲連接邊的依賴信息,縮小方面詞和意見(jiàn)詞之間的距離,實(shí)現(xiàn)情感類型判斷。
9)BiGCN 模型[33]:一種結(jié)合層次句法和詞匯圖的新型網(wǎng)絡(luò)結(jié)構(gòu),使用一個(gè)全局詞匯圖來(lái)編碼語(yǔ)料庫(kù)級(jí)別的單詞共現(xiàn)信息;并在句法圖和詞匯圖上建立了一個(gè)概念層次結(jié)構(gòu),用于區(qū)分各種類型的依賴關(guān)系或詞匯詞對(duì)。
10)RepWalk[34]:通過(guò)在語(yǔ)法圖上進(jìn)行隨機(jī)復(fù)制游走,來(lái)獲得對(duì)方面詞情感預(yù)測(cè)影響最大的上下文詞。
11)MEMGCN-BERT[35]:一種圖卷積神經(jīng)記憶網(wǎng)絡(luò)模型(MemGCN)。通過(guò)記憶網(wǎng)絡(luò)存儲(chǔ)文本表示與輔助信息,并使用注意力機(jī)制融合句法信息與其他輔助信息。
12)ASGCN-AOA-DG[36]:一種結(jié)合圖卷積網(wǎng)絡(luò)GCN 和注意-過(guò)度注意AOA 神經(jīng)網(wǎng)絡(luò)的方面級(jí)情感分類模型(ASGCN-AOA)。
13)CF-CAN[37]:一種利用組件聚焦策略和多頭共注意力機(jī)制的模型,解決了包含多詞的方面平均池化操作帶來(lái)的問(wèn)題。
3.4.2 對(duì)比實(shí)驗(yàn)結(jié)果
將模型在5 個(gè)不同數(shù)據(jù)集上分別進(jìn)行5 次實(shí)驗(yàn),表2 展示的數(shù)據(jù)均為5 次試驗(yàn)后的平均取值,表中為ABSA-KE 模型與對(duì)比模型在5 個(gè)數(shù)據(jù)集上的結(jié)果。由表2可以得到以下信息:
表2 對(duì)比實(shí)驗(yàn)結(jié)果
1)除CF-CAN 模型外,本文的模型在所有數(shù)據(jù)集上的F1 值都達(dá)到了最好的效果,尤其在Restaurant14、Restaurant15和Twitter數(shù)據(jù)集上的準(zhǔn)確率也是最優(yōu)的。
2)ASGCN 和CDT 模型均采用300 維的GloVe 詞嵌入,本文的模型使用了BERT 作為預(yù)訓(xùn)練模型,準(zhǔn)確率最大提升了4.93 個(gè)百分點(diǎn)。這說(shuō)明BERT 預(yù)訓(xùn)練模型相較于其他靜態(tài)詞嵌入,具有一定的先進(jìn)性,能夠幫助方面級(jí)情感分析模型取得更好的實(shí)驗(yàn)效果。
3) 與MEMGCN-BERT、ASGCN-AOA-DG 模型相比,本文模型在幾乎所有數(shù)據(jù)集上都取得了比較好的結(jié)果,其原因是GAT 比GCN 多了注意力機(jī)制,注意力機(jī)制能夠給不同信息賦予不同權(quán)重,阻止了無(wú)關(guān)詞向方面詞的信息傳播。這說(shuō)明在方面級(jí)情感分析研究中,包含GAT 的模型能夠根據(jù)目標(biāo)詞計(jì)算上下文詞的權(quán)重分布,有效識(shí)別上下文詞對(duì)目標(biāo)詞的影響。
4)與基于多頭共注意力機(jī)制的模型CF-CAN 相比,本文模型在絕大多數(shù)數(shù)據(jù)集上都取得了較優(yōu)的結(jié)果。分析認(rèn)為本文提出使用外部知識(shí)庫(kù)為模型進(jìn)行知識(shí)增強(qiáng),豐富了文本的背景概念以及方面詞之間的概念鏈接,幫助學(xué)習(xí)更多的語(yǔ)義知識(shí),從而提升了模型性能。
3.4.3 GAT層數(shù)對(duì)準(zhǔn)確率和F1值的影響
圖3 和圖4 分別展示了GAT 層數(shù)對(duì)準(zhǔn)確率和F1值的影響,其橫坐標(biāo)表示GAT 的層數(shù),取值為1~5,縱坐標(biāo)分別為準(zhǔn)確率和F1 值。由圖3 和圖4 可知,在5個(gè)數(shù)據(jù)集上,隨著GAT層數(shù)的增加,準(zhǔn)確率和F1值的走向都是先上升后下降,當(dāng)層數(shù)等于2 時(shí),準(zhǔn)確率和F1 值均達(dá)到最高;當(dāng)層數(shù)超過(guò)2 且逐漸增大到5 時(shí),準(zhǔn)確率及F1值都直線下降,說(shuō)明層數(shù)越多,模型涉及的參數(shù)量會(huì)越大,導(dǎo)致訓(xùn)練起來(lái)更加困難。因此,實(shí)驗(yàn)設(shè)置GAT的層數(shù)為2。
圖4 GAT層數(shù)對(duì)F1值的影響
3.4.4 消融實(shí)驗(yàn)
為了驗(yàn)證ABSA-KE 模型的有效性,本文進(jìn)行了消融實(shí)驗(yàn)研究,實(shí)驗(yàn)結(jié)果如圖5 和圖6 所示;其中,各個(gè)模型的解釋說(shuō)明如下:
圖5 不同模型的準(zhǔn)確率結(jié)果對(duì)比
圖6 不同模型的F1值結(jié)果對(duì)比
1)ABSA-KE w/o BiLSTM:去除模型中的雙向長(zhǎng)短期記憶網(wǎng)絡(luò)。
2)ABSA-KE w/o GAT:去除模型中的圖注意力網(wǎng)絡(luò)。
3)ABSA-KE w/o Attention:去除模型圖注意力網(wǎng)絡(luò)中的注意力機(jī)制,類似于直接通過(guò)GCN 和BiLSTM聯(lián)合建模來(lái)進(jìn)行情感判斷。
4)ABSA-KE w/o ConceptNet:去除模型中外部知識(shí)庫(kù)。
由圖5 與圖6 可知,BiLSTM、GAT、Attention 和Conceptnet 都能輔助模型進(jìn)行情感分類,去掉任何一個(gè)組成部分,模型的性能都會(huì)下降,說(shuō)明這些在模型中的應(yīng)用都是合理的。并且,圖注意力網(wǎng)絡(luò)對(duì)模型性能影響最大,說(shuō)明圖注意力網(wǎng)絡(luò)可以幫助模型處理句法結(jié)構(gòu)信息,比單純使用注意機(jī)制或圖卷積網(wǎng)絡(luò)更能捕獲語(yǔ)義信息。其次,ConceptNet對(duì)模型的影響比較小,分析是由于子圖之間是不相連的,可能導(dǎo)致2 個(gè)不同類別的方面詞的詞向量表示相近,從而導(dǎo)致模型情感分類錯(cuò)誤。但是總體來(lái)看去除ConceptNet后,模型性能有所下降,說(shuō)明ConceptNet可以為模型提供一些有用的額外知識(shí)。這些組成部分對(duì)模型的重要程度,由高到低順序?yàn)镚AT、BiLSTM、Attention和ConceptNet。
3.4.5 案例研究
1)ConceptNet子圖。
為了進(jìn)一步研究外部知識(shí)庫(kù)的作用,對(duì)Restaurant14數(shù)據(jù)集中的方面詞“Bread”的子圖進(jìn)行可視化,并截取部分子圖進(jìn)行呈現(xiàn),菱形框?yàn)榉矫嬖~,橢圓形為關(guān)系類型,矩形為與方面詞有關(guān)聯(lián)的詞,如圖7 所示??梢钥吹剑鶕?jù)方面詞“Bread”,可以從龐大的ConceptNet 中獲取到與之相關(guān)的關(guān)聯(lián)詞,這些關(guān)聯(lián)詞為模型解析方面詞的情感極性補(bǔ)充了一些額外知識(shí),增強(qiáng)了方面詞與上下文的語(yǔ)義表示,使模型更好地學(xué)習(xí)文本特征,進(jìn)而提高模型性能。
圖7 方面詞“Bread”的部分子圖
2)圖注意網(wǎng)絡(luò)層。
為了更好地證明圖注意網(wǎng)絡(luò)層的作用,對(duì)去掉GAT 的模型與ABSA-KE 模型自身進(jìn)行了案例研究,選用了數(shù)據(jù)集中一些評(píng)論文本,案例均來(lái)自數(shù)據(jù)集Laptop14,用粗體標(biāo)記方面詞,用下劃線標(biāo)記表示決定分類結(jié)果的關(guān)鍵字,用黑實(shí)線連接單詞表示依存樹(shù)上的邊,如表3 所示。ABSA-KE 和w/o GAT 分別表示完整模型和去掉圖注意力網(wǎng)絡(luò)層的模型。案例均標(biāo)注出方面詞和關(guān)鍵詞之間的邊??梢钥闯?,在3 個(gè)案例中,ABSA-KE 模型均分類正確,但去掉GAT 后結(jié)果發(fā)生錯(cuò)誤。這3 個(gè)案例的方面詞和關(guān)鍵詞在序列上距離較遠(yuǎn),但在依存樹(shù)上卻十分接近。由此可知,依存樹(shù)不僅可以捕獲編碼過(guò)程中缺失的語(yǔ)法信息,而且能夠縮短關(guān)鍵詞和方面詞的距離,加強(qiáng)兩者的聯(lián)系。圖注意力網(wǎng)絡(luò)是用來(lái)處理圖結(jié)構(gòu)數(shù)據(jù)的,建立在依存樹(shù)的基礎(chǔ)上發(fā)揮其作用,而依存樹(shù)能夠更好地幫助模型進(jìn)行情感判別,進(jìn)而說(shuō)明圖注意力網(wǎng)絡(luò)對(duì)提升方面級(jí)情感分析模型性能是有效的。
表3 圖注意網(wǎng)絡(luò)層案例研究
本文提出了一種基于知識(shí)增強(qiáng)的方面級(jí)情感分析模型ABSA-KE,使用預(yù)訓(xùn)練模型BERT,有效地挖掘出方面詞和情感詞之間的關(guān)系,獲取每個(gè)單詞包含的情感信息和語(yǔ)義信息;BiLSTM 能夠從語(yǔ)料中學(xué)習(xí)到長(zhǎng)期依賴關(guān)系,有效編碼上下文信息和依存信息;圖注意力網(wǎng)絡(luò)沿著依存關(guān)系樹(shù)的句法路徑建模依存關(guān)系,為不同連接邊分配不同權(quán)重,阻止了無(wú)關(guān)詞向方面詞的信息傳播;ConceptNet 提供外部知識(shí),豐富上下文表示。在多個(gè)數(shù)據(jù)集上進(jìn)行了實(shí)驗(yàn)驗(yàn)證,結(jié)果表明,ABSA-KE 模型在方面級(jí)情感分析任務(wù)上取得了不錯(cuò)的性能。未來(lái)考慮針對(duì)跨領(lǐng)域方面級(jí)情感分析問(wèn)題,使用外部知識(shí)庫(kù)豐富不同領(lǐng)域數(shù)據(jù)的語(yǔ)義知識(shí),從而幫助標(biāo)注數(shù)據(jù)量少的新領(lǐng)域進(jìn)行方面級(jí)情感分析任務(wù)。