張心月,劉 蓉,魏馳宇,方 可
(華中師范大學(xué) 物理科學(xué)與技術(shù)學(xué)院,武漢 430079)
情感分析是自然語(yǔ)言處理中的重要任務(wù)之一。方面級(jí)情感分析是一項(xiàng)細(xì)粒度的情感分析任務(wù),旨在分析特定方面的情感極性[1]。同一個(gè)句子中不同的方面詞具有不同的情感極性,例如句子“The food was delicous but the service was rude”,對(duì)于方面詞“food”的情感是積極的,而對(duì)于方面詞“service”的情感是消極的。隨著互聯(lián)網(wǎng)的快速發(fā)展,社交網(wǎng)絡(luò)中涌現(xiàn)了大量包含主觀情感傾向的評(píng)論文本,針對(duì)評(píng)論文本的不同方面進(jìn)行情感分析,在商業(yè)、社會(huì)和政治領(lǐng)域都有重要的研究?jī)r(jià)值。
方面級(jí)情感分析早期解決方案主要利用知識(shí)工程[1-2]與傳統(tǒng)機(jī)器學(xué)習(xí)相結(jié)合的方法,隨著以神經(jīng)網(wǎng)絡(luò)為代表的深度學(xué)習(xí)的快速發(fā)展[3],基于深度學(xué)習(xí)的情感分析方法能夠自動(dòng)提取文本特征,并逐漸成為主流的情感分析方法。Tang 等[4]提出融入方面詞信息,在長(zhǎng)短期記憶(Long Short-Term Memory,LSTM)中進(jìn)行語(yǔ)義編碼,驗(yàn)證了在方面級(jí)情感分析中融入方面詞信息的重要性。為了結(jié)合方面詞和上下文獲得更豐富的語(yǔ)義信息,越來(lái)越多的研究引入了注意力機(jī)制。Liu 等[5]提出采用交互注意力機(jī)制來(lái)獲得上下文和方面詞的注意力權(quán)重;Chen 等[6]通過(guò)將多層注意力機(jī)制與記憶網(wǎng)絡(luò)結(jié)合的方式對(duì)上下文和方面詞進(jìn)行建模;Chen 等[7]采用多頭注意力機(jī)制提取方面詞相關(guān)的上下文情感特征。以上模型的實(shí)驗(yàn)結(jié)果驗(yàn)證了注意力機(jī)制在一定程度上能夠提升方面級(jí)情感分析性能,但此類方法使用GloVe[8]和Word2Vec[9]等傳統(tǒng)詞向量模型獲取文本詞向量表示,無(wú)法動(dòng)態(tài)表征上下文信息,針對(duì)長(zhǎng)句子的方面級(jí)情感分析具有一定的局限性。
隨著語(yǔ)言模型的不斷發(fā)展,預(yù)訓(xùn)練語(yǔ)言模型BERT(Bidirectional Encoder Representation from Transformers)[10]和ELMo(Embeddings from Language Models)[11]等具有卓越的動(dòng)態(tài)語(yǔ)義表征能力的模型能有效解決長(zhǎng)句子的情感分析問(wèn)題,并逐漸成為情感分析領(lǐng)域的通用模型。Sun 等[12]對(duì)BERT 預(yù)訓(xùn)練模型進(jìn)行微調(diào),通過(guò)使用方面詞構(gòu)造輔助句的方式將方面級(jí)情感分析任務(wù)轉(zhuǎn)化為句子對(duì)的分類問(wèn)題,實(shí)驗(yàn)結(jié)果表明該方法具有很好的文本分類性能;Xia 等[13]通過(guò)基于BERT的上下文感知器對(duì)不同上下文分配注意力,獲得深層次上下文信息;Zhang 等[14]在預(yù)訓(xùn)練模型中引入動(dòng)態(tài)語(yǔ)義,增強(qiáng)了特定方面詞與上下文的語(yǔ)義聯(lián)系。但以上基于預(yù)訓(xùn)練的模型存在以下問(wèn)題:模型對(duì)方面詞的注意力不足、預(yù)訓(xùn)練模型對(duì)下游任務(wù)的感知能力較弱。為了讓預(yù)訓(xùn)練模型更適配下游任務(wù),縮小二者之間的差距,模型在調(diào)優(yōu)過(guò)程中會(huì)引入額外的參數(shù)和特定于下游任務(wù)的目標(biāo)函數(shù),探索開(kāi)銷過(guò)大。
Prompt是受GPT-3(Generative Pre-Trained Transformer-3)[15]啟發(fā)的一種新的微調(diào)范式,旨在通過(guò)縮小預(yù)訓(xùn)練模型與下游任務(wù)之間的差距,克服預(yù)訓(xùn)練模型的弊端。一般做法為將帶有[MASK]的提示文本插入原始輸入文本,預(yù)訓(xùn)練語(yǔ)言模型預(yù)測(cè)[MASK]位置應(yīng)該出現(xiàn)的詞的概率。Li 等[16]初次將Prompt 機(jī)制應(yīng)用于方面級(jí)情感分析任務(wù),在給定的方面項(xiàng)和觀點(diǎn)項(xiàng)的基礎(chǔ)上,使用可學(xué)習(xí)的連續(xù)向量構(gòu)建提示文本模板。自動(dòng)生成提示文本的研究也引起了研究人員的廣泛關(guān)注。Jiang 等[17]利用基于挖掘和基于釋義的兩種方法自動(dòng)生成多個(gè)候選模板,通過(guò)集成不同提示文本以獲得最終提示模板;Gao 等[18]提出通過(guò)動(dòng)態(tài)選擇樣本示例的方法自動(dòng)生成提示模板;Liu 等[19]提出利用可訓(xùn)練向量代替自然語(yǔ)言,自動(dòng)生成由可訓(xùn)練向量組成的提示文本;Shin 等[20]利用基于梯度搜索的方案,構(gòu)建自動(dòng)生成的提示文本。但上述自動(dòng)生成提示文本方法的搜索方式比較簡(jiǎn)單,生成的提示文本解釋性較差,另外標(biāo)簽詞的準(zhǔn)確映射也是提升模型性能的關(guān)鍵。Schick 等[21]設(shè)計(jì)單個(gè)詞語(yǔ)與標(biāo)簽進(jìn)行一對(duì)一的映射,但人工構(gòu)建的標(biāo)簽詞表具有較片面的語(yǔ)義信息。為了節(jié)省人工成本,獲得擴(kuò)展性較強(qiáng)的標(biāo)簽詞表,有研究提出自動(dòng)生成標(biāo)簽詞表的方法。Schick 等[22]提出先對(duì)標(biāo)簽詞候選空間進(jìn)行過(guò)濾,再自動(dòng)搜索最終的標(biāo)簽詞;Gao 等[18]通過(guò)多個(gè)標(biāo)簽詞的分配方式,自動(dòng)生成匹配度較高的標(biāo)簽詞。但以上自動(dòng)生成標(biāo)簽詞表的研究中,詞表的搜索空間較廣,模型參數(shù)量較大。
為解決以上問(wèn)題,本文提出一種融合提示知識(shí)的方面級(jí)情感分析方法,主要工作如下:
1)為解決基于預(yù)訓(xùn)練模型的情感分析存在上下游任務(wù)不一致的問(wèn)題,本文基于Prompt 機(jī)制設(shè)計(jì)提示文本,將提示文本、原始句子和方面詞三者拼接作為預(yù)訓(xùn)練模型的輸入。一方面增加方面詞與上下文的語(yǔ)義關(guān)聯(lián),有效建模句子中方面詞和情感詞之間的語(yǔ)義關(guān)系;另一方面使下游任務(wù)更適配預(yù)訓(xùn)練模型,提升模型對(duì)下游任務(wù)的感知能力,充分激發(fā)預(yù)訓(xùn)練模型的潛力。
2)為了控制模型的搜索空間,實(shí)現(xiàn)標(biāo)簽詞與情感極性的準(zhǔn)確映射,本文設(shè)計(jì)由覆蓋范圍廣泛的同義詞組成的標(biāo)簽映射詞表,使模型充分利用標(biāo)簽詞表中豐富的語(yǔ)義特征,從而提升模型的性能。
本文設(shè)計(jì)的方面級(jí)情感分析方法的整體結(jié)構(gòu)如圖1 所示,由提示文本構(gòu)建層、語(yǔ)義編碼層、情感標(biāo)簽詞映射層三部分組成。首先基于Prompt 機(jī)制構(gòu)造提示文本,將它與原始句子上下文和方面詞拼接作為模型的整體輸入;然后通過(guò)預(yù)訓(xùn)練模型獲得輸入序列的文本向量表示,將獲得的方面詞、上下文和提示文本三部分語(yǔ)義信息進(jìn)行融合,提高方面詞與上下文之間的交互性;再經(jīng)過(guò)情感標(biāo)簽詞映射層進(jìn)行情感極性的映射,獲得最終的情感分類結(jié)果。
圖1 本文方法的結(jié)構(gòu)Fig.1 Structure of the proposed method
提示文本構(gòu)建層的主要任務(wù)是基于Prompt 機(jī)制構(gòu)造融合情感知識(shí)的提示文本,添加提示文本不僅有利于模型獲得上下文和方面詞的語(yǔ)義聯(lián)系,還能使情感分析上下游任務(wù)趨于一致,充分發(fā)揮MLM(Masked Language Model)的能力。
Prompt 機(jī)制的核心思想是使用包含[MASK]標(biāo)記的提示文本模擬預(yù)訓(xùn)練模型的訓(xùn)練前目標(biāo),將情感分析任務(wù)轉(zhuǎn)化為完形填空任務(wù)。本文使用預(yù)訓(xùn)練模型中的MLM 實(shí)現(xiàn)該“完形填空”任務(wù),僅計(jì)算[MASK]標(biāo)記的損失,對(duì)被隨機(jī)[MASK]遮罩的文本序列進(jìn)行重建,有效捕捉上下文的語(yǔ)義信息。圖2 為MLM 任務(wù)示意圖,如句子“我對(duì)這家的菜很滿意”,通過(guò)對(duì)“很”字進(jìn)行掩碼將情感分析任務(wù)轉(zhuǎn)換為完形填空任務(wù),模型根據(jù)方面詞與上下文的語(yǔ)義聯(lián)系判斷“我對(duì)這家的菜”是否“滿意”,如果“很”的概率大于“不”的概率,說(shuō)明是正面情感極性,否則就是負(fù)面情感極性,由此完成情感分類任務(wù)的情感極性判斷。
圖2 MLM任務(wù)示意圖Fig.2 Schematic diagram of MLM task
在輸入中添加提示文本,提升模型對(duì)下游任務(wù)的感知能力,可充分激發(fā)預(yù)訓(xùn)練模型的潛力。因此如何設(shè)計(jì)一個(gè)在語(yǔ)義上與情感分析任務(wù)關(guān)聯(lián)程度較高的提示模板是本文的關(guān)鍵,圖3 為本文基于Prompt 機(jī)制的提示文本詳細(xì)設(shè)計(jì)流程。
圖3 提示文本構(gòu)建流程Fig.3 Construction flow of prompt texts
如圖3 所示,將原始輸入句子x的上下文語(yǔ)義信息和句子中的方面詞ai作為情感知識(shí),根據(jù)情感知識(shí)構(gòu)造提示文本xp,針對(duì)不同領(lǐng)域數(shù)據(jù)集,xp具有不同的組成形式,表1 展示了部分提示文本的設(shè)計(jì)示例。
表1 提示文本設(shè)計(jì)示例(部分)Tab.1 Some examples of prompt texts(partial)
如表1 所示,對(duì)于英文商品評(píng)論數(shù)據(jù)集,提示文本設(shè)置為“it was [MASK]”。例如原始句子x=The food in this Restaurant is really delicious,經(jīng)過(guò)Prompt 機(jī)制處理后的句子為xT=The food in this Restaurant is really delicious,food,it was[ MASK]。其中[MASK]位置對(duì)應(yīng)方面詞“food”的情感極性標(biāo)簽詞,MLM 模型預(yù)測(cè)標(biāo)簽詞集v中每個(gè)單詞在[MASK]位置的概率由式(1)表示:
其中:M為預(yù)訓(xùn)練模型;xT為基于Prompt 機(jī)制處理后的文本。
本文采用BERT 模型獲得輸入文本的嵌入向量表示,受Sun 等[12]的啟發(fā),本文利用句子對(duì)的方式輸入,將以上構(gòu)建的提示文本與原始句子組成的句子對(duì)進(jìn)行輸入,輸入方式如下:
其中:x={x0,x1,…,xn}代表原始輸入語(yǔ)句,n表示句子長(zhǎng)度;[CLS]是每個(gè)輸入序列的唯一標(biāo)識(shí)符;[SEP]代表用于分開(kāi)兩個(gè)輸入句子的標(biāo)識(shí)符;ai為句子中的方面詞;xp代表融合情感知識(shí)的提示文本。
語(yǔ)義編碼層通過(guò)預(yù)訓(xùn)練語(yǔ)言模型提取并融合原始句子、方面詞和提示文本三部分的表征向量,使語(yǔ)言模型更好地學(xué)習(xí)文本之間的關(guān)聯(lián)性,提取上下文與方面詞間的語(yǔ)義特征。圖4 展示了本文預(yù)訓(xùn)練模型的輸入示例。
圖4 預(yù)訓(xùn)練文本模型的輸入文本示例Fig.4 Example of input text for pre-trained text model
如圖4 所示,預(yù)訓(xùn)練模型的輸入由原始輸入句子、句子中的方面詞以及提示文本組成,將輸入的文本經(jīng)過(guò)詞嵌入操作轉(zhuǎn)化為詞向量,通過(guò)預(yù)訓(xùn)練模型中的MLM 任務(wù)對(duì)[MASK]標(biāo)記進(jìn)行概率預(yù)測(cè)?;陬A(yù)訓(xùn)練模型的情感分析中,常用的預(yù)訓(xùn)練模型有ELMo、BERT、XLNet、ALBERT(A Lite BERT)等,其中,BERT 預(yù)訓(xùn)練模型更具有代表性,它基于雙向Transformer 動(dòng)態(tài)地對(duì)文本向量進(jìn)行表征,能夠捕捉原始輸入句子中的雙向語(yǔ)義聯(lián)系。因此本文使用BERT 預(yù)訓(xùn)練模型對(duì)輸入文本進(jìn)行詞嵌入表示,并利用Transformer 編碼器的雙向自注意力機(jī)制獲取每個(gè)詞向量表示與方面詞、提示文本的自注意力特征,提高句子中關(guān)鍵的方面信息和情感信息的權(quán)重,從而提高模型的情感分析性能。圖5 展示了本文語(yǔ)義編碼層的網(wǎng)絡(luò)結(jié)構(gòu)。
圖5 語(yǔ)義編碼層網(wǎng)絡(luò)結(jié)構(gòu)Fig.5 Network structure of semantic encoding layer
如圖5 所示,在BERT 模型的輸入層中,原始輸入語(yǔ)句作為Sentence1,將方面詞和提示文本拼接作為Sentence2,使用[SEP]標(biāo)記將Sentence1 和Sentence2 兩個(gè)子句組成一個(gè)句子對(duì),并將它作為BERT 的整體輸入。首先將輸入的文本轉(zhuǎn)化為詞向量H0∈RT,h_siz(eT為文本長(zhǎng)度,h_size為詞向量維度);再將獲得的詞向量輸入Transformer 編碼器逐層提取輸入序列的字符級(jí)特征,獲取深層次的雙向本文表示,充分提取方面詞和提示文本的語(yǔ)義特征。此處利用Transformer 編碼器的多頭自注意力機(jī)制計(jì)算方面信息權(quán)重,并根據(jù)整體輸入序列提取上下文語(yǔ)義信息,捕獲句子遠(yuǎn)距離和全局語(yǔ)義特征。Transformer 通過(guò)查詢向量Q、鍵向量K和值向量V實(shí)現(xiàn)自注意力機(jī)制,三個(gè)向量由初始詞向量經(jīng)過(guò)線性變換映射而得,可由式(3)計(jì)算得出。
其中:l∈[1,L]代表Transformer 編碼器層數(shù),本文將L設(shè)置為12;Wq、Wk、Wv為可學(xué)習(xí)的超參數(shù)矩陣。為了進(jìn)一步地融合上下文、方面詞與提示文本的語(yǔ)義信息,Transformer 編碼器對(duì)Q、K點(diǎn)積相乘后的向量進(jìn)行歸一化,通過(guò)學(xué)習(xí)句子內(nèi)部的詞依賴關(guān)系,計(jì)算每個(gè)字符對(duì)其他字符的注意力權(quán)重,再將注意力權(quán)重與V向量進(jìn)行加權(quán)求和,獲得融合提示知識(shí)的全局向量表示,設(shè)第l(l∈[1,L])層的上下文表示為Hl=可由式(4)得出。
為了更好地實(shí)現(xiàn)標(biāo)簽詞到情感極性的映射,本文設(shè)計(jì)情感標(biāo)簽詞表v,根據(jù)詞表與情感極性標(biāo)簽的映射關(guān)系進(jìn)行情感極性預(yù)測(cè)。先前有研究提出人工構(gòu)建一一對(duì)應(yīng)的詞表映射器[21],Positive 類別對(duì)應(yīng)的標(biāo)簽詞為“positive”,Negative 類別對(duì)應(yīng)的標(biāo)簽詞為“negative”,這樣的做法限制了標(biāo)簽詞的覆蓋范圍,具有較大局限性,比如“good”“absolutely”“great”等在語(yǔ)義上也表達(dá)出積極的情感傾向,這些近義詞包含的信息更加豐富。
為了解決上述問(wèn)題,本文提出一種基于情感知識(shí)的標(biāo)簽映射詞表的構(gòu)造方法。首先從現(xiàn)有情感詞典中選擇積極、中性、消極3 種情感極性分別對(duì)應(yīng)的詞表,該詞表一般由不同粒度的同義詞組成,其中,多詞短語(yǔ)稱為多粒度的情感標(biāo)簽詞。例如,“objective”和“just ok”都是中性類別,“good”和“great fun”都表達(dá)積極情感傾向,這些粒度不同但情感極性相同的同義詞與情感極性類別和標(biāo)簽詞一一對(duì)應(yīng)的詞表相比,包含了更加全面的信息;然后對(duì)詞表進(jìn)行去重和人工刪除罕見(jiàn)情感詞等操作,實(shí)現(xiàn)標(biāo)簽詞表的去噪和提煉;另外,帶有主觀情感傾向的評(píng)論文本通常具有口語(yǔ)化特征,通過(guò)手動(dòng)添加口語(yǔ)化同義詞,以完成標(biāo)簽映射詞表的擴(kuò)展。圖6 展示了標(biāo)簽映射詞集的構(gòu)造流程。
圖6 情感標(biāo)簽詞集的構(gòu)造流程Fig.6 Construction flow of sentimental label word sets
情感標(biāo)簽詞表經(jīng)過(guò)上述提煉和擴(kuò)展處理后,詞表中包含的同義詞語(yǔ)義信息更加豐富,具有覆蓋范圍廣、主觀性偏差小的特點(diǎn),部分?jǐn)U展標(biāo)簽詞的示例如表2 所示。公開(kāi)數(shù)據(jù)集SemEval2014 Task4 中情感極性為三類:Negative、Positive、Neutral。數(shù)據(jù)集ChnSentiCorp 中情感極性為兩類:Negative、Positive。每一種情感極性與多個(gè)意義相近的標(biāo)簽詞對(duì)應(yīng),比如“good”“wonderful”“great”都對(duì)應(yīng)“Positive”的情感類別,其中每個(gè)類別對(duì)應(yīng)的標(biāo)簽詞數(shù)量可根據(jù)下游任務(wù)的具體情況進(jìn)行設(shè)置。
表2 擴(kuò)展標(biāo)簽詞的示例Tab.2 Examples of expanded label words
當(dāng)預(yù)訓(xùn)練語(yǔ)言模型預(yù)測(cè)[MASK]部分在標(biāo)簽詞集上的概率分布時(shí),將標(biāo)簽詞集v中的單詞概率映射為原始標(biāo)簽集合的概率[23],其中某個(gè)標(biāo)簽的概率可由式(5)表示:
其中:g表示將標(biāo)簽詞集中每個(gè)單詞在[MASK]位置的預(yù)測(cè)概率轉(zhuǎn)換為原始標(biāo)簽預(yù)測(cè)概率的函數(shù),此處為恒等函數(shù);vy表示原始標(biāo)簽集合中某個(gè)特定類別標(biāo)簽y所對(duì)應(yīng)的詞集。模型訓(xùn)練過(guò)程中對(duì)不符合語(yǔ)義的標(biāo)簽詞賦予較小的權(quán)重,以降低它對(duì)預(yù)測(cè)的影響,通過(guò)歸一化獲得每個(gè)單詞的權(quán)重,計(jì)算方法如式(6)所示:
其中,wv代表為每個(gè)標(biāo)簽詞賦予的可學(xué)習(xí)權(quán)值,它的初始化為0;wu為標(biāo)簽y的權(quán)值。使用arg max 函數(shù)將得分最大的標(biāo)簽作為最終預(yù)測(cè)的情感極性結(jié)果,預(yù)測(cè)標(biāo)簽如式(7)所示:
其中,s(y|xT)代表定義在輸入句子xT和輸出y上的分?jǐn)?shù)函數(shù);y'代表訓(xùn)練時(shí)得到的類別標(biāo)簽y的中間過(guò)程。采用式(6)得到的av作為平均權(quán)重,將標(biāo)簽詞得分的加權(quán)平均值作為預(yù)測(cè)得分,可由式(8)得出:
本文通過(guò)最小化交叉熵進(jìn)行訓(xùn)練,損失函數(shù)Lloss如下:
其中:N為樣本數(shù)量;C為分類類別;y代表第i個(gè)樣本的真實(shí)標(biāo)簽代表第i個(gè)樣本的預(yù)測(cè)標(biāo)簽。
為了評(píng)估本文方法的有效性,在公開(kāi)數(shù)據(jù)集SemEval2014 Task4 和酒店評(píng)論數(shù)據(jù)集ChnSentiCorp 上分別進(jìn)行對(duì)比實(shí)驗(yàn)。
2.1.1 SemEval2014 Task4數(shù)據(jù)集
該數(shù)據(jù)集包含Restaurant 和Laptop 兩個(gè)領(lǐng)域的評(píng)論數(shù)據(jù),每條評(píng)論數(shù)據(jù)均由評(píng)論語(yǔ)句、語(yǔ)句中的方面詞和方面詞對(duì)應(yīng)的情感極性3 部分組成,情感標(biāo)簽有4 個(gè)類別,分別是:Positive、Negative、Neutral 和Conflict。與大多數(shù)研究一樣,具有“Conflict”情感極性的樣本數(shù)量非常少,因此在本文實(shí)驗(yàn)中刪除了此類別。該數(shù)據(jù)集的分類統(tǒng)計(jì)情況如表3 所示。
表3 SemEval2014 Task4數(shù)據(jù)集Tab.3 SemEval2014 Task4 datasets
根據(jù)該數(shù)據(jù)集的語(yǔ)言特征,通過(guò)以下4 種方式構(gòu)造有遮蔽的提示文本,其中[x]代表原始輸入文本,[a]代表方面詞,[T]代表可學(xué)習(xí)的連續(xù)向量。
1)[ x],[ a],it was[ MASK]
2)[ a],it makes me feel[ MASK],[ x]
3)[ x],[ a][ T][ T][ T][ MASK][ T][ T]
4)[ a][ T][ T][ T][ MASK][ T][ T],[ x]
2.1.2 ChnSentiCorp數(shù)據(jù)集
酒店評(píng)論ChnSentiCorp 數(shù)據(jù)集的每條評(píng)論數(shù)據(jù)由評(píng)論語(yǔ)句和情感極性組成,數(shù)據(jù)集評(píng)論樣本示例如表4 所示,其中“1”和“0”分別代表情感極性“Positive”和“Negative”。該數(shù)據(jù)集共10 000 條語(yǔ)料評(píng)論,包括5 000 條積極評(píng)論和5 000 條消極評(píng)論,按照正負(fù)樣本的分布隨機(jī)將數(shù)據(jù)集按9∶1 劃分為訓(xùn)練集和測(cè)試集。
表4 ChnSentiCorp數(shù)據(jù)集樣例Tab.4 Examples of ChnSentiCorp dataset
該數(shù)據(jù)集的提示文本構(gòu)造方式如下:
1)[ x],是好評(píng)嗎?[MASK]
2)我覺(jué)得這家酒店很[MASK],[x]
3)[ x],[ T][T][T][ MASK][ T][ T]
4)[ T][ T][ T][ MASK][ T][ T],[ x]
本文實(shí)驗(yàn)采用CentOS7 操作系統(tǒng),配備Tesla V100 32 GB顯卡,使用PyThon3.7 開(kāi)發(fā)環(huán)境和PyTorch1.7.0 開(kāi)發(fā)框架。其中SemEval2014 Task4 的兩個(gè)領(lǐng)域數(shù)據(jù)集由于具有相同的數(shù)據(jù)類型,所以參數(shù)相同,本文用SemEval2014 統(tǒng)一表示這兩個(gè)領(lǐng)域數(shù)據(jù)集,實(shí)驗(yàn)超參數(shù)配置如表5 所示。
表5 實(shí)驗(yàn)配置Tab.5 Experimental configuration
為驗(yàn)證本文方法的情感分類效果,本文采用準(zhǔn)確率(ACCuracy,ACC)和F1 值(F1-score,F(xiàn)1)作為評(píng)價(jià)指標(biāo),F(xiàn)1 值對(duì)于不均衡樣本具有較好的衡量效果,將分類正確的樣本數(shù)量記為T,數(shù)據(jù)樣本總數(shù)量記為N。評(píng)價(jià)指標(biāo)的計(jì)算方式如式(10)、(11)所示。
其中:P表示精準(zhǔn)率;R表示召回率。F1 值對(duì)于不均衡樣本具有較好的衡量效果。
為了進(jìn)一步驗(yàn)證本文設(shè)計(jì)的方面級(jí)情感分析方法的性能,將它與幾種主流情感分析模型進(jìn)行對(duì)比,對(duì)比模型如下:
Glove-TextCNN:通過(guò)GloVe[8]預(yù)訓(xùn)練的詞向量對(duì)文本進(jìn)行詞嵌入表示,使用不同大小卷積核進(jìn)行卷積,并將卷積結(jié)果進(jìn)行最大池化后輸入線性層進(jìn)行文本情感分類。
ELMo-Transformer[24]:通過(guò)ELMo 對(duì)文本進(jìn)行詞嵌入操作,將生成的ELMo 詞向量輸入Transformer 進(jìn)行情感分類。
BERT-pair[12]:通過(guò)構(gòu)造輔助句,在BERT 模型中輸入原始文本和方面詞組成的句子對(duì),再經(jīng)過(guò)線性層將最終文本向量轉(zhuǎn)化為預(yù)測(cè)結(jié)果。
BERT-TextCNN[25]:通過(guò)BERT 對(duì)文本進(jìn)行編碼,并使用多尺寸卷積濾波器對(duì)輸入文本進(jìn)行卷積操作,將詞嵌入結(jié)果輸入線性層以獲得文本的情感極性。
BERT_BiLSTM[26]:首先通過(guò)BERT 獲取文本詞向量,再通過(guò)雙向長(zhǎng)短期記憶(Bi-directional LSTM,BiLSTM)捕獲深層次上下文關(guān)聯(lián)信息,最后經(jīng)過(guò)全連接層獲得分類結(jié)果。
BMLA(BERT and Multi-Layer Attention)[27]:利 用BERT提取多層方面注意力信息,將編碼后的方面信息與BERT 隱藏層向量進(jìn)行級(jí)聯(lián),以獲取特定方面詞的極性表達(dá)。
P-tuning[28]:利用可訓(xùn)練的向量實(shí)現(xiàn)自動(dòng)構(gòu)建提示文本模板,使用BiLSTM 對(duì)模板中的初始化向量進(jìn)行表征,增加嵌入向量之間的相關(guān)性。
在SemEval2014 數(shù)據(jù)集上各模型的實(shí)驗(yàn)結(jié)果如表6所示。
表6 SemEval2014數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果 單位:%Tab.6 Experimental results on SemEval2014 dataset unit:%
從表6 可知,本文方法在SemEval2014 的兩個(gè)領(lǐng)域數(shù)據(jù)集上都取得了比其他對(duì)比模型更好的分類性能。本文方法在Laptop 和Restaurant 數(shù)據(jù)集上,F(xiàn)1 分別達(dá)到了75.2%和77.42%,與對(duì)比模型相比提高了1.02~9.58、0.65~10.71 個(gè)百分點(diǎn);與對(duì)比模型中分類性能最強(qiáng)的P-tuning 模型相比,F(xiàn)1 分別提升1.02 和0.65 個(gè)百分點(diǎn)。在Restaurant 數(shù)據(jù)集上,基于BERT 改進(jìn)的模型分類效果最好的是BMLA 模型,但它的F1 比基于Prompt 機(jī)制的P-tuning 模型低1.86 個(gè)百分點(diǎn),說(shuō)明基于Prompt 機(jī)制進(jìn)行改進(jìn)的模型表現(xiàn)更優(yōu)異,驗(yàn)證了添加提示文本在提高方面級(jí)情感分類任務(wù)的性能方面有一定的優(yōu)勢(shì),說(shuō)明了本文方法的有效性。
為了驗(yàn)證本文方法的泛化性,將本文方法與其他基準(zhǔn)模型在相同的實(shí)驗(yàn)環(huán)境下進(jìn)行實(shí)驗(yàn)對(duì)比,在具有單個(gè)方面項(xiàng)的酒店評(píng)論數(shù)據(jù)集ChnSentiCorp 上進(jìn)行情感極性分類,實(shí)驗(yàn)結(jié)果如表7 所示。
表7 ChnSentiCorp數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果 單位:%Tab.7 Experimental results on ChnSentiCorp dataset unit:%
由表7 可知,本文方法在該數(shù)據(jù)集上的準(zhǔn)確率和F1 分別達(dá)到94.91%和94.89%,均優(yōu)于其他對(duì)比模型,F(xiàn)1 提高了0.83~6.40 個(gè)百分點(diǎn)。未加入提示知識(shí)的模型中,BERTBiLSTM 模型分類性能最優(yōu),本文方法的準(zhǔn)確率和F1 值與它相比分別提升0.86 和0.83 個(gè)百分點(diǎn);而Prompt 領(lǐng)域?qū)?biāo)簽詞與類名稱一一對(duì)應(yīng)的P-tuning 模型,因其自動(dòng)構(gòu)建的提示文本解釋性較差,缺乏覆蓋范圍廣泛的映射詞表,導(dǎo)致最終的分類效果不佳,該模型在ChnSentiCorp 數(shù)據(jù)集上的F1 值僅為89.82%,本文方法與它相比提升了5.07 個(gè)百分點(diǎn)。本文通過(guò)對(duì)標(biāo)簽詞空間進(jìn)行建模,預(yù)設(shè)標(biāo)簽詞的預(yù)測(cè)范圍,控制模型的搜索空間,驗(yàn)證了本文加入提示知識(shí)和構(gòu)建標(biāo)簽映射詞表的有效性。
由表6 和表7 的實(shí)驗(yàn)結(jié)果可知,Glove-TextCNN 和ELMo-Transformer 與其他使用BERT 進(jìn)行詞嵌入的情感分析模型相比,情感分析性能最差,驗(yàn)證了BERT 預(yù)訓(xùn)練模型具有更出色的詞向量表示能力。為進(jìn)一步驗(yàn)證本文方法提示文本構(gòu)建模塊和情感標(biāo)簽詞映射模塊的有效性,本文設(shè)置消融實(shí)驗(yàn)進(jìn)行探究,不同實(shí)驗(yàn)分組的F1 值如表8 所示。其中:PT(Prompt Text)代表提示文本構(gòu)建模塊,SV(Sentimental Verbalizer)代表情感標(biāo)簽詞映射模塊,其余實(shí)驗(yàn)參數(shù)設(shè)置全部相同。
表8 消融實(shí)驗(yàn)結(jié)果Tab.8 Results of ablation experiment
實(shí)驗(yàn)組1 僅采用BERT 模型進(jìn)行微調(diào)。實(shí)驗(yàn)組2 采用原始輸入文本對(duì)BERT 模型進(jìn)行微調(diào),并對(duì)標(biāo)簽詞進(jìn)行擴(kuò)展,與實(shí)驗(yàn)組1 相比,模型在3 個(gè)數(shù)據(jù)集上的F1 值分別增加了5.16、3.45、2.52 個(gè)百分點(diǎn)。實(shí)驗(yàn)組3 添加提示文本構(gòu)建模塊,將標(biāo)簽詞與情感極性類別設(shè)置為一對(duì)一映射的關(guān)系,與實(shí)驗(yàn)組1 相比,模型在3 個(gè)數(shù)據(jù)集上的F1 值分別增加了6.08、5.68、2.59 個(gè)百分點(diǎn)。實(shí)驗(yàn)組4 即本文方法,同時(shí)引入提示文本構(gòu)建模塊和情感標(biāo)簽詞映射模塊,它的F1 值相比其他3 種情況結(jié)果最優(yōu),說(shuō)明本文方法的提示文本構(gòu)建模塊和標(biāo)簽詞的擴(kuò)展有利于模型獲取文本間潛在的語(yǔ)義關(guān)聯(lián)。
為了驗(yàn)證本文方法的時(shí)間性能,將本文方法與部分基準(zhǔn)模型在相同的實(shí)驗(yàn)環(huán)境下進(jìn)行實(shí)驗(yàn)對(duì)比,表9 為不同模型在ChnSentiCorp 數(shù)據(jù)集和SemEval2014 兩個(gè)領(lǐng)域數(shù)據(jù)集上完成10 次迭代的平均訓(xùn)練時(shí)間。
表9 不同方法完成10次迭代的平均訓(xùn)練時(shí)間 單位:minTab.9 Average running time of ten iterations of different methods unit:min
由表9 可以看出,與P-tuning 和BERT-BiLSTM 模型相比,本文方法在每個(gè)數(shù)據(jù)集上的訓(xùn)練時(shí)間最少。其中,BERTBiLSTM 模型由于神經(jīng)網(wǎng)絡(luò)計(jì)算相對(duì)復(fù)雜,導(dǎo)致計(jì)算時(shí)間較長(zhǎng);P-tuning 模型自動(dòng)構(gòu)建提示文本時(shí)引入較多可學(xué)習(xí)參數(shù)量,訓(xùn)練時(shí)間代價(jià)最高。本文實(shí)驗(yàn)數(shù)據(jù)集的評(píng)論樣本長(zhǎng)度較長(zhǎng),而提示文本長(zhǎng)度較為簡(jiǎn)短,由于添加提示文本所導(dǎo)致的計(jì)算量的增加可以忽略不計(jì),同時(shí),添加提示文本能夠解決BERT 模型上下游任務(wù)不一致的問(wèn)題,避免引入額外參數(shù),對(duì)時(shí)間性能的影響比較??;標(biāo)簽映射詞表能夠預(yù)設(shè)標(biāo)簽詞的預(yù)測(cè)范圍,控制模型的搜索空間,時(shí)間效率有一定程度的提升,說(shuō)明構(gòu)建合適的提示文本不僅可以提升情感分析性能,而且還減少了訓(xùn)練時(shí)間開(kāi)銷,進(jìn)一步驗(yàn)證了本文方法的有效性和可行性。
本文提出了一種融合提示知識(shí)的方面級(jí)情感分析方法。首先構(gòu)建融合情感知識(shí)的提示文本,該提示文本與方面級(jí)情感分析任務(wù)具有較緊密的語(yǔ)義關(guān)聯(lián),將提示文本與上下文和文本中的方面詞拼接輸入預(yù)訓(xùn)練模型,通過(guò)提示知識(shí)引導(dǎo)預(yù)訓(xùn)練模型,縮小預(yù)訓(xùn)練模型和下游任務(wù)之間的差距。本文使用BERT 預(yù)訓(xùn)練模型獲取文本向量表示;然后設(shè)計(jì)基于情感知識(shí)的標(biāo)簽映射詞表,擴(kuò)展標(biāo)簽詞的預(yù)測(cè)范圍,使模型有效提取標(biāo)簽詞集中豐富的語(yǔ)義知識(shí)。與對(duì)比模型相比,實(shí)驗(yàn)結(jié)果表明本文方法擁有更好的分類性能和時(shí)間性能。在未來(lái)的研究中,將進(jìn)一步優(yōu)化提示文本和標(biāo)簽映射詞表的設(shè)計(jì)方式,繼續(xù)提升本文方法在方面級(jí)情感分析任務(wù)中的性能。