張蓉, 劉淵
1.江蘇信息職業(yè)技術(shù)學(xué)院,物聯(lián)網(wǎng)工程學(xué)院,江蘇 無錫 214153
2.江南大學(xué),人工智能與計算機學(xué)院,江蘇 無錫 214122
方面級情感分析(Aspect-based Sentiment Analysis,ABSA)[1]旨在確定產(chǎn)品評論等在線情感文本中出現(xiàn)的一個或多個方面的情感極性。例如,評論“I charge it at night and skip taking the cord with me because of the good battery life.”中的兩個方面:“cord”為中性(neutral),“battery life”為積極(positive)。ABSA與句子級或篇章級的情感分析任務(wù)相比,能夠更好地洞察用戶評論,是一種細粒度的情感分析任務(wù),在個性化推薦等應(yīng)用中發(fā)揮著重要作用。
在文本情感分析領(lǐng)域,基于BERT[2]等大模型的預(yù)訓(xùn)練語言模型(Pre-trained language Models,PLM)+任務(wù)微調(diào)(Fine-tuning)訓(xùn)練范式已成為主流,并在GLUE 基準測試[3]上取得了最先進的性能。這種訓(xùn)練范式先在大規(guī)模無監(jiān)督數(shù)據(jù)上進行預(yù)訓(xùn)練,然后在下游任務(wù)上進行有監(jiān)督的微調(diào)。下游任務(wù)中用于微調(diào)的訓(xùn)練數(shù)據(jù)的質(zhì)量和數(shù)量決定了實驗效果的好壞[4]。實際應(yīng)用中獲取大量的標注數(shù)據(jù)往往因為代價高昂而變得不切實際[5]。小樣本問題在ABSA 任務(wù)中尤為突出,以當下最受歡迎的ABSA 基準數(shù)據(jù)集SemEval 2014 Task 4 Sub Task 2[6]為例,該數(shù)據(jù)集包含2 個數(shù)據(jù)集:餐廳(簡稱Rest)和筆記本電腦(簡稱Laptop),其中Laptop 數(shù)據(jù)集共包含3,045 條評論,而可用于訓(xùn)練的含有方面詞的句子僅為1,462 條,占比47.75%(見第4 節(jié)所示)。由此可見,ABSA 任務(wù)是典型的Few-shot 場景,而人為注釋錯誤和噪聲等問題加劇了這個問題,使得ABSA 任務(wù)依然是傳統(tǒng)情緒分析中的一個具有挑戰(zhàn)性的子任務(wù)[7]。
數(shù)據(jù)增強(Data Augmentation,DA)是一種緩解數(shù)據(jù)不足的有效技術(shù),已經(jīng)被圖像處理、自然語言處理等領(lǐng)域用于增強現(xiàn)有的標記數(shù)據(jù)和提升深度網(wǎng)絡(luò)性能[4]。然而,由于自然語言具有離散性、復(fù)雜性和抗干擾能力較差等特性,使得通用數(shù)據(jù)增強技術(shù)在NLP 中的應(yīng)用更加困難[8-9]。Longpre等[10]通過實驗證實,一些流行的DA技術(shù)(如EDA[11],反向翻譯[12])并不能持續(xù)提高基于Transformers 預(yù)訓(xùn)練模型的文本分類任務(wù)的性能,有些情況下還會減弱其性能。另外,這些DA技術(shù)大都采取對整句中的任意單詞進行替換、刪除等操作,可控性較弱。例如,EDA 方法中對整個文本執(zhí)行隨機替換、交換或者刪除操作,有可能改變文本標簽、丟失方面詞或者關(guān)鍵情感信息。
鑒于此,本文通過探索最常用的同義詞替換數(shù)據(jù)增強方法,將其適應(yīng)到細粒度的ABSA任務(wù)中,只運用于評論中的“方面詞”替換,以解決小樣本問題。主要貢獻有:(1)利用ABSA 任務(wù)的特點,針對方面詞設(shè)計多種級別的數(shù)據(jù)增強(Multi-Level Data Augmentation, MLDA)策略,既設(shè)置了合理范圍的噪聲,又確保了重要信息不丟失從而保持標簽不變性,分別在基于注意力機制+預(yù)訓(xùn)練模型和基于依賴樹+預(yù)訓(xùn)練模型上進行測試,結(jié)果表明,MLDA 策略能夠有效解決ABSA 訓(xùn)練數(shù)據(jù)的稀缺性問題;(2)將MLDA 用于正樣本對構(gòu)建、設(shè)計對比學(xué)習(xí)訓(xùn)練框架,與原有訓(xùn)練模型進行多任務(wù)學(xué)習(xí),提升ABSA任務(wù)性能;(3)首次提出類別領(lǐng)域級同類詞替換方案并獲得成功。
ABSA 任務(wù)需要關(guān)注每個具體方面的細微觀點,它的核心任務(wù)是將各個方面與其相應(yīng)的潛在意見詞建立情緒依賴聯(lián)系[13],意見詞通常是一個具有明確情緒極性的表達?,F(xiàn)有流行的ABSA 任務(wù)解決方案可分為基于經(jīng)典注意力機制、基于依賴樹、基于預(yù)訓(xùn)練模型或者是這3種方法的混合來達成目標。例如,Wang 等[14]提出一種基于注意力的LSTM網(wǎng)絡(luò)用于方面級情緒分類,針對不同的方面,該模型通過注意力機制可以生成特定于方面的句子表征。但是RNN 模型難以并行化,并且通過時間截斷反向傳播給長期模式記憶帶來了困難。為解決這個問題,Song等[15]提出了一種注意力編碼器網(wǎng)絡(luò)(AEN),將預(yù)訓(xùn)練過的BERT 應(yīng)用于ABSA 任務(wù),有效避免了重復(fù),并使用基于注意力的編碼器在上下文和目標之間進行建模。最近的研究更多關(guān)注采用圖神經(jīng)網(wǎng)絡(luò)(GNN)結(jié)合依賴樹的解決方案。這些研究使用圖卷積網(wǎng)絡(luò)(GCN)來建模目標詞與其上下文詞之間的語義情緒依賴關(guān)系,從而實現(xiàn)了很好的性能表現(xiàn)。例如,Huang 等[16]使用圖注意力網(wǎng)絡(luò)(GAT)明確地建立了單詞之間的相關(guān)性,句子中的單詞用Glove[17]或BERT初始化后,根據(jù)單詞之間的依存關(guān)系構(gòu)建圖神經(jīng)網(wǎng)絡(luò),之后使用GAT與LSTM顯示地捕捉與方面相關(guān)的信息,然后利用這些信息完成ABSA 任務(wù)。不同于其他研究者直接編碼現(xiàn)成的依賴樹,Wang 等[13]通過重塑與修剪普通的依賴樹將方面作為依賴樹的根節(jié)點,并提出一個關(guān)系圖注意力網(wǎng)絡(luò)(R-GAT)對新的依賴樹進行編碼,用于ABSA任務(wù)。這些工作能夠很好地建模方面與意見詞之間的依賴關(guān)系,但還存在因訓(xùn)練數(shù)據(jù)不足而導(dǎo)致模型對關(guān)鍵性信息學(xué)習(xí)不足等問題。
數(shù)據(jù)增強是指在數(shù)據(jù)不足的場景中,通過對現(xiàn)有數(shù)據(jù)進行輕微的修改而生成合成數(shù)據(jù)的方法[18]。如果使用得當,它能夠提升訓(xùn)練樣本的多樣性,提高訓(xùn)練數(shù)據(jù)集的規(guī)模和質(zhì)量,這樣就可以使用這些數(shù)據(jù)建立更好的深度學(xué)習(xí)模型,因而DA是近年來廣受關(guān)注與研究的一種解決數(shù)據(jù)稀缺問題的技術(shù)。Li 等[19]根據(jù)增強數(shù)據(jù)的多樣性將NLP中DA方法分為:釋義、噪聲和抽樣。如表1(見引言所示),這3 種類別依次提供了更多的多樣性,進而帶來不同的增強效應(yīng)。
表1 常見數(shù)據(jù)增強技術(shù)及在評論中的示例Table 1 Common data augmentation techniques and examples in reviews
文本分類是NLP 中應(yīng)用DA 最早和最廣泛的任務(wù)。具體實現(xiàn)時,只要保留對文本分類很重要的單詞語義,以確保新生成文本的標簽與原始文本相同。替換法是最常見的數(shù)據(jù)增加方法之一,因為可以生成與原始句子相似的例子,相當于添加噪聲數(shù)據(jù)以防止模型過擬合。接下來重點討論的是基于不同策略的替換方法在文本分類任務(wù)中的應(yīng)用。基于近義詞替換和基于詞向量替換是其中最簡單和最流行的兩種替換方法。例如,被廣泛使用的EDA 方法[11]通過引入WordNet[20]近義詞詞典,采用隨機機制對文本執(zhí)行替換、插入、交換或刪除等操作來擴展原始句子。但是,這種隨機的方式可能會生成不可靠和不受控制的數(shù)據(jù)[21]?;谠~向量的替換方法則使用預(yù)訓(xùn)練的詞向量,如Glove[17]、Word2Vec[22]等,將原始單詞替換為向量空間中最接近的單詞。與近義詞替換方法比,這種替換方法提供了更高的詞匯覆蓋率。例如,Liu 等[23]在郵件多主題情緒分類任務(wù)中結(jié)合了基于近義詞表和詞向量的單詞替換方法。首先,基于Glove 詞向量的相似度,為詞表中的每個單詞建立其最相關(guān)單詞的字典。然后,根據(jù)WordNet對這個字典進行修正或補充。最后,對句子中每個單詞按照一定概率替換為它的近義詞,以此增加文檔級電子郵件數(shù)據(jù)集。Wang等[24]同時對Twitter文本進行單詞級和框架級的替換,對每個原始單詞使用余弦相似度查找到KNN 單詞替換,通過使用Word2Vec構(gòu)建一個連續(xù)的框架袋模型來表示每個語義,然后使用相同的數(shù)據(jù)增強方法創(chuàng)建具有這些語義框架嵌入的其他實例。無論是基于近義詞詞典還是詞向量的DA方法,當一個句子的替換次數(shù)過多時,都有可能損害句子的語義。
以上這些替換策略都能夠很好適用于篇章級或句子級等粗粒度的文本分類任務(wù),然而如果將這些策略直接應(yīng)用于細粒度的ABSA 任務(wù)顯然是不合適的。例如,如果在隨機操作中刪除、替換或者交換的是方面詞本身,就會破壞ABSA任務(wù)的目標。基于此,本文提出的MLDA 方法只引入了簡單的操作,在不改變情感極性的前提下針對各個方面執(zhí)行句子、類別領(lǐng)域、詞向量3個級別上的替換,由于生成的樣本保持了原始樣本中最重要的部分,因此可以保持標簽不變。同時,MLDA 一個顯著的特點是實現(xiàn)起來相當友好,通過不同單詞空間的變化來豐富增強的數(shù)據(jù),有效提高了模型的魯棒性。
受第1 節(jié)中相關(guān)工作的啟發(fā),本文為ABSA任務(wù)設(shè)計了只針對方面詞進行替換的多級數(shù)據(jù)增強方法,其工作原理如圖1所示。需要說明的是,考慮到過多的替換有可能影響模型性能,所以對替換的方面詞做了限制,僅對由單個單詞構(gòu)成的方面進行替換,而對由多個單詞構(gòu)成的方面則不予以考慮。在這樣的限制下,對于評論“Drivers updated ok but the BIOS update froze the system up and the computer shut down.”中的3 個方面詞“Drivers”“BIOS update”“system”,僅對方面詞“Drivers”和“system”執(zhí)行3種級別的替換。
圖1 多級數(shù)據(jù)增強方法工作原理圖Fig.1 Work principle of Multi-Level Data Augmentation
MLDA 方法僅針對一個評論中特定幾個目標方面進行句子級相鄰詞、領(lǐng)域級同類詞和詞向量級同義詞替換,既保證了標簽不變性,又達到了樣本層次多樣性。其中詞向量級同義詞替換是被廣泛采用的替換策略,這里并沒有對評論中所有單詞執(zhí)行隨機抽取式的同義詞替換,而是僅針對方面詞執(zhí)行。對于句子級相鄰詞替換策略,靈感來源于日常人類情緒表達的經(jīng)驗,在特定的場景下,用戶圍繞特定產(chǎn)品主題(餐廳或者筆記本電腦)開展評論,這些方面詞盡管可能不是同義詞、甚至也不是同類詞(如“steak”和“decorate”),但是屬于同一語境下、同一領(lǐng)域內(nèi)、圍繞同一產(chǎn)品主題的相關(guān)詞,即使存在一些語義上的偏離,仍不失為合理范圍,這種偏離反而會給模型帶來適度的挑戰(zhàn)。因此,該策略不僅可以增加訓(xùn)練數(shù)據(jù)的數(shù)量,也可以很好地提高模型的魯棒性。而對于領(lǐng)域級同類詞替換的靈感則來源于近年來在ABSA領(lǐng)域比較熱門的關(guān)于方面情緒四元預(yù)測(Aspect Sentiment Quad Prediction,ASQP)研究課題的啟發(fā),這是旨在從評論句子中提取方面四聯(lián)體的任務(wù),四聯(lián)體由4 個情感元素組成:方面類別、方面術(shù)語、意見術(shù)語和情緒極性。這里的方面類別即表示方面詞的類別,如“sushi”“Ravioli”“pizza”等方面詞都屬于“food quality”方面類別[25]。
句子級相鄰循環(huán)替換(Sentence Level-Neighbor Circle Replacement, SL-NCR):對于訓(xùn)練集Dtr中給定的一個句子s={w1,w2,...,wn},n為句子的長度,設(shè)其由單個單詞組成的方面集合為A={a1,a2,...am} ,m≥2 。那么SLNCR 操作如算法1 所示。
算法1 SL-NCR
Algorithm 1:SL-NCR Input: Dtr:training set with tsamples.alpha:random sampling factor.Output: Daug SL-NRR:augmented set.1D'tr←Random.sample(Dtr,t×alpha)//根據(jù)隨機抽樣因子抽取待增強樣本2 for s∈D'tr//依次遍歷抽取的評論3 do 4 if m=2:5saug←Swap(a1,am) //交換6 Append(DaugSL-NRR,saug) //生成新句7 else do:8 a1 ←am9 for i∈{1,…,m-1}10 do 11ai+1 ←ai//執(zhí)行右循環(huán)替換12 Append(Daug SL-NRR,saug)13 end 14 end 15 end 16 end
最終形成一個向右循環(huán)替換的閉環(huán),如圖2(a)所示。圖2(b)為基于SL-NCR 得到的新樣本。
圖2 應(yīng)用SL-NCR 生成新樣本示意圖Fig.2 Schematic diagram of applying SL-NCR to generate new samples
這里選擇相鄰詞循環(huán)替換法而不是隨機替換法,主要考慮到用戶通常會在發(fā)表評論時傾向于根據(jù)極性對各方面進行局部聚類,這就意味著相鄰的方面詞有可能會受到情緒一致性的影響[25]。選擇相鄰詞循環(huán)替換策略既可以最大概率保持相鄰詞替換后的情緒極性不變。
領(lǐng)域級同類詞替換(Domain Level-Similarity Word Replacement, DL-SWR),是在不改變標簽的情況下在各個方面的類別領(lǐng)域內(nèi)實現(xiàn)同類詞替換。無論是Rest 數(shù)據(jù)集還是Laptop數(shù)據(jù)集,數(shù)據(jù)集內(nèi)部的評論都是圍繞著各自主題領(lǐng)域的,各個方面詞擁有共同的領(lǐng)域特性。觀察圖3和圖4 可以發(fā)現(xiàn),Rest 數(shù)據(jù)集中的各個方面圍繞著餐廳主題領(lǐng)域可以劃分為食品、人員、環(huán)境、服務(wù)等類別,Laptop 數(shù)據(jù)集中的各個方面圍繞著筆記本電腦可以細分為部件、應(yīng)用、性能、外觀等類別。
圖3 Rest數(shù)據(jù)集主題領(lǐng)域Fig.3 Rest data-set subject area
圖4 Laptop數(shù)據(jù)集主題領(lǐng)域Fig.4 Laptop data-set subject area
屬于同一類別的這些方面詞具有領(lǐng)域相似性,可以作為同類詞替換,用于擴充訓(xùn)練數(shù)據(jù)。具體做法是:(1)先提取出各個訓(xùn)練集中由單個單詞構(gòu)成的方面,去重后構(gòu)建Rest和Laptop兩個領(lǐng)域的aspects 集合;(2)加載詞向量模型Glove,對同一領(lǐng)域內(nèi)的aspects 集合依次計算各個方面與其他方面之間的余弦相似度,生成各個方面詞aspect 和其相似度排在前10 的其他方面詞的數(shù)據(jù)字典aspects_similars;(3)按照一定比列隨機抽取訓(xùn)練集內(nèi)的句子,將句子中符合條件的方面詞用aspects_similars 中與其對應(yīng)的領(lǐng)域內(nèi)相似度詞隨機替換,從而生成新的訓(xùn)練樣本。
詞向量級同義詞替換(Word Vector Level-Synonym Word Replacement, WVL-SWR),該方法類似于DL-SWR,不同之處在于生成的數(shù)據(jù)字典aspects_similars 的詞向量范圍不同,DL-SWR方法是在數(shù)據(jù)集主題領(lǐng)域內(nèi)計算相似度詞,而WVL-SWR則是在整個Glove詞向量空間內(nèi)計算相似度詞。另外,實驗中發(fā)現(xiàn),在進行WVLSWR 同義詞替換時,往往不是取最近似的詞效果最好,也不是隨機取[0-9]的任意一個近似詞,而是隨機取[4-5]的任意一個近似詞效果最好。
表2 展示的是應(yīng)用MLDA 得到的增強樣本示例。從表2 中可以看出,應(yīng)用SL-NCR 和DLSWR 生成的新樣本都適當偏離了原語義,但是語法通暢,語義合理;而作為最常規(guī)的WVLSWR 方法,生成的新樣本與原語義相對偏差最大,語法的流暢度也略有削弱。
表2 應(yīng)用MLDA生成的增強樣本示例Table 2 Examples of augmented samples generated by MLDA
本小節(jié)主要介紹將MLDA 方法應(yīng)用于基于依賴樹+預(yù)訓(xùn)練模型進行ABSA 任務(wù)處理的過程,選用模型為Wang 等[13]提出的RGAT+BERT。圖5 展示了整體框架,它主要由數(shù)據(jù)預(yù)處理、多級數(shù)據(jù)增強模塊、BERT 嵌入層、特征提取層和輸出層構(gòu)成。
圖5 MLDA方法的運用示意圖Fig.5 Schematic diagram of the application of the MLDA method
數(shù)據(jù)預(yù)處理模塊是利用依賴樹進行修剪的過程,首先對輸入的每個句子應(yīng)用一個依賴解析器來獲得它的依賴樹,選擇的解析器是雙仿射解析器(Biaffine Parser)[18],然后通過重構(gòu)和修剪來構(gòu)建基于方面的依賴樹,如果存在多個方面,則為每個方面構(gòu)造一個獨立的語法依賴樹。圖6為基于語法依賴樹解析出的真實筆記本電腦評論的上下文表示,單詞之間的關(guān)系可以用有向邊和標簽來表示,其中方面“Drivers”是積極情緒,方面“BIOS update”和“system”是消極的情緒。圖7為經(jīng)過重構(gòu)和修剪得到的面向方面“system”的依賴樹,為了突出重要依賴關(guān)系,圖中只保留到二級虛擬關(guān)系(實驗結(jié)果表明三級以后的虛擬關(guān)系對方面情緒極性影響微乎其微)。
圖6 基于語法依賴樹解析出的真實筆記本電腦評論的上下文表示Fig.6 Dependency-based context example parsed from a real laptop review
圖7 經(jīng)過重構(gòu)和修剪得到的面向方面“system”的依賴樹Fig.7 Aspect-oriented "system" dependency tree from reshape and prune
本文采用關(guān)系圖注意力網(wǎng)絡(luò)(Relational Graph Attention Network, RGAT)[13]對帶有標記邊的圖進行編碼。RGAT 包括兩種類型的多頭注意機制,即注意頭(Attentional Head)和關(guān)系頭(Relational Head)。
經(jīng)過預(yù)處理后的依賴樹用一個有n個節(jié)點的圖? 表示,每個節(jié)點代表句子中的一個單詞,連接各個節(jié)點的邊代表單詞之間的依賴關(guān)系。Ni代表節(jié)點i的鄰接節(jié)點。RGAT通過使用多頭注意力聚合鄰接節(jié)點的表示迭代地更新每個節(jié)點的表示。其中Attentional Head計算公式為:
考慮到具有不同依賴關(guān)系的鄰接節(jié)點有不同的影響,考慮使用這些Relational Head 作為關(guān)系級門控機制來控制領(lǐng)域節(jié)點的信息流入程度。具體來說,首先將依賴關(guān)系映射到向量表示中,然后計算Relational Head,計算公式如下:
其中,rij表示節(jié)點i和節(jié)點j之間的依賴關(guān)系嵌入表示。
RGAT 包含K個注意頭和M個關(guān)系頭。每個節(jié)點的最終表示法的計算方法為:
使用預(yù)先訓(xùn)練過的BERT 的最后一個隱藏狀態(tài)來對依賴樹節(jié)點的單詞嵌入進行編碼,并在任務(wù)中進行微調(diào)。在一個面向方面的修剪依賴樹上應(yīng)用RGAT后,其根節(jié)點表示通過一個全連接softmax層,映射到不同情緒極性上的概率。
最終標準的交叉熵損失作為模型需要優(yōu)化的目標函數(shù)(損失函數(shù)),其定義為:
其中,D包含所有的句子-方面詞對;A表示句子S中出現(xiàn)的方面詞;θ包含所有的可訓(xùn)練的參數(shù)。
為了驗證提出的MLDA 方法的有效性,所有的實驗和基準測試都使用一個單一的GPU(RTX 2080 Ti)運 行,CPU 為Intel Core i7-8700K@4.7 GHz,內(nèi)存為32G。
實驗使用來自SemEval 2014 Task 4 Sub Task 2[6]兩個公共數(shù)據(jù)集:Rest 和Laptop,每個評論包含0 個、1 個或多個目標方面,擁有3 種情緒標簽:{positive,negative,neutral}。這些評論包含不規(guī)則的詞匯單位和句法模式,因此,這些數(shù)據(jù)是有噪聲的、稀疏的,甚至是有沖突的。與前人的實驗結(jié)果進行比較,確保實驗數(shù)據(jù)的一致性。詳細統(tǒng)計數(shù)據(jù)如表3所示。
表3 SemEval 2014 Task 4 Sub Task(2)方面情緒分類統(tǒng)計表Table 3 Summary of SemEval 2014 Task 4 Sub Task 2 on aspect sentiment classification
為了進行公平比較,在進行性能測試時,分類模型的參數(shù)設(shè)置與文獻[13]中的實驗設(shè)置保持一致。雙仿射解析器(Biaffine Parser)用于依賴關(guān)系解析,依賴關(guān)系嵌入維數(shù)設(shè)置為300。BERT模型dropout選擇0.3。初始學(xué)習(xí)率設(shè)置為5e-5。
MLDA 模塊使用Glove 的300 維單詞嵌入。引入變量α作為訓(xùn)練集中用于數(shù)據(jù)增強的樣本隨機抽取比率,實驗中嘗試α∈{0.05、0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9、1},對新提出的3種DA方法單獨應(yīng)用后,再將其組合應(yīng)用,具體組合方式嘗試如下幾種策略:(1)通過生成隨機因子ε∈{0,1,2},針對某一訓(xùn)練樣本隨機挑選其中一種DA 方法隨機組合運用;(2)將各種方法單獨運用時的最佳增強數(shù)據(jù)生成合集組合運用;(3)針對每一種DA方法選取一些代表性的α值如{0.05、0.3、0.7、0.9}運行,然后再組合運用。訓(xùn)練集的批量大小設(shè)置為16,測試集的批量大小設(shè)置為32。在訓(xùn)練過程中,設(shè)置epoch 數(shù)為30,并保存在此期間訓(xùn)練得到的最大準確率模型。采用Adam 優(yōu)化器對所有參數(shù)進行更新。每個模型訓(xùn)練了5輪,并給出了平均性能。
本文選取以下幾個最先進的模型進行比較,其中大多數(shù)是基于依賴學(xué)習(xí)的,同時對本文提出的改進方法進行了消融實驗。
BERT-BASE[2]:基于BERT模型的基線。
TD-GAT-BERT[16]:基于GAN 的模型,采用多層圖注意網(wǎng)絡(luò),可以捕獲跨層的方面相關(guān)情感依賴關(guān)系。
DGEDT-BERT[26]:提出一種雙向的transformer 結(jié)構(gòu)的網(wǎng)絡(luò),支持“水平表示學(xué)習(xí)”與“基于圖神經(jīng)網(wǎng)絡(luò)的表示學(xué)習(xí)”之間交互地學(xué)習(xí)。
LSA-BERT[27]:是一個基于GCN 的模型,目前在SemEval 2014 Task 4 Sub Task 2數(shù)據(jù)集上獲得了最高性能,它們針對相鄰方面的情緒集群,引入情緒模式幫助模型學(xué)習(xí)情感依賴。
AEN-BERT[15]:使用基于注意力的編碼器在上下文和目標之間進行建模。
RGAT-BERT[13]:是一種基于細化依賴解析樹的關(guān)系圖注意網(wǎng)絡(luò)。
模型的性能采用Accuracy 和Macro-f1 度量來評估,表4包含了對比模型和MLDA單獨應(yīng)用和隨機組合應(yīng)用在RGAT-BERT模型上的最優(yōu)實驗結(jié)果的總結(jié)。
4.4.1 MLDA影響
從實驗結(jié)果可以看到無論是單獨應(yīng)用SLNCR、DL-SWR 或WVL-SWR,還是3 種方法組合應(yīng)用,與原有模型相比,在Rest 和Laptop 兩個數(shù)據(jù)集上的分類性能都獲得了一定的提升。
具體來看,針對RGAT-BERT模型,在Rest和Laptop 兩個數(shù)據(jù)集上的分類性能都獲得了約1.2%~3%的提高。3 種DA 方法中SL-NCR 對Rest數(shù)據(jù)集最有效,DL-SWR對Laptop數(shù)據(jù)集最有效,混合應(yīng)用策略要優(yōu)于單獨應(yīng)用策略。與目前已公布的最佳模型LSA-BERT相比,本文提出的改進方案獲得了不相上下的性能,特別是在Rest 數(shù)據(jù)集上有所改善,Macro-f1 值均提升了1.4%。
總體來看,3 種數(shù)據(jù)增強方法中DL-SWR 方法最有效,而將3種方法組合應(yīng)用即MLDA方法性能提升效果最佳,從組合策略上來看,嘗試的第二種策略即將各種方法單獨運用時的最佳增強數(shù)據(jù)生成合集組合運用最佳。由此可見,MLDA 方法對基于依賴樹+預(yù)訓(xùn)練模型的ABSA任務(wù)性能提升是有效的。
4.4.2α值的影響
圖8 與圖9 分別顯示了針對RGAT-BERT 模型的數(shù)據(jù)增強實驗中,在不同隨機抽樣因子α值條件下3 種數(shù)據(jù)增強方法在Rest 和Laptop 數(shù)據(jù)集上的性能。可以觀察到隨著α的增加,性能變化并不是呈規(guī)律性的增加,而是跳躍性的,最終趨于平緩??傮w來看,對于Rest 數(shù)據(jù)集α取0.3是一個比較合適的值,而對于Laptop數(shù)據(jù)集α取0.4是一個比較合適的值。從新增的訓(xùn)練樣本數(shù)量來看,兩個數(shù)據(jù)集都是增強后的訓(xùn)練集是原訓(xùn)練集的1.5倍左右較為合適。例如Rest數(shù)據(jù)集經(jīng)過依賴樹重構(gòu)后生成的訓(xùn)練樣本數(shù)為3,602,而增強后比較合適的訓(xùn)練樣本數(shù)大約在5,400 左右。Laptop 數(shù)據(jù)集是從2,313 擴充到3,500 左右比較合適。
圖8 Rest數(shù)據(jù)集在不同α值下MLDA的性能可視化Fig.8 Visualization of performance under differential αon the Rest dataset
同樣類似的結(jié)論也出現(xiàn)在針對AEN-BERT模型的數(shù)據(jù)增強實驗中,隨著α的增加,性能呈不規(guī)律性變化。只是因為模型設(shè)計不同的原因,針對所提出的3種數(shù)據(jù)增強方法,獲得最優(yōu)性能的α取值并不相同:對于兩個數(shù)據(jù)集,采用SL-NCR 方法時α取值是0.3,采用DL-SWR 方法時α取值是0.7,采用WVL-SWR 方法時α取值是0.9,這表明針對基于注意力+預(yù)訓(xùn)練模型的數(shù)據(jù)增強方法,采用越偏離原始樣本的增強數(shù)據(jù)所需要的數(shù)據(jù)量越少??傮w來看,應(yīng)用數(shù)據(jù)增強時并不是合成的訓(xùn)練樣本越多越好,而是和原訓(xùn)練集的規(guī)模有一定的比列,并與分類器選擇也是緊密相關(guān)的。
4.4.3 MLDA泛化能力分析
為了考察MLDA 方法的泛化能力,本文將其應(yīng)用于基于注意力機制+預(yù)訓(xùn)練模型的ABSA任務(wù)中,選用模型是Song等[15]提出的AEN-BERT模型。整個實驗流程和RGAT-BERT+MLDA 模型類似,如圖4 所示,數(shù)據(jù)預(yù)處理部分和特征提取模不同之處在于數(shù)據(jù)預(yù)處理部分和特征提取模塊。在進行性能測試時,分類模型的參數(shù)設(shè)置與文獻[15]中的實驗設(shè)置保持一致。預(yù)訓(xùn)練的BERT 嵌入維數(shù)設(shè)置為768,隱藏狀態(tài)的維數(shù)設(shè)置為300,dropout 選擇0.1,初始學(xué)習(xí)率設(shè)置為3e-5。MLDA 模塊參數(shù)設(shè)置和4.2小節(jié)中設(shè)置相同。訓(xùn)練集的批量大小設(shè)置為32,測試集的批量大小設(shè)置為8。采用Adam 優(yōu)化器對所有參數(shù)進行更新。每個模型訓(xùn)練了5 輪,并給出了平均性能。
實驗結(jié)果如表5 所示。從實驗結(jié)果可以看到無論是單獨應(yīng)用SL-NCR、DL-SWR 或WVL-SWR,還是3 種方法組合應(yīng)用,與原有模型相比,在Rest 和Laptop 兩個數(shù)據(jù)集上的分類性能都獲得了一定的提升。
表5 MLDA泛化能力及應(yīng)用性能分析Table 5 Generalization ability and application performance analysis of MLDA
具體來看,單獨應(yīng)用3 種數(shù)據(jù)增強方法,可以提升Rest數(shù)據(jù)集的分類性能0.8%~1.8%,其中DL-SWR 方法最有效。但是在Laptop 數(shù)據(jù)集上的分類性能提升微乎其微,最佳效果是SL-SWR方法,Accuracy 提高了0.53%,Macro-f1 提高了0.76%,原因可能是所提出的數(shù)據(jù)增強方法以方面詞為替換核心,而Laptop數(shù)據(jù)集中的方面詞相對偏少,導(dǎo)致模型學(xué)習(xí)到的樣本多樣化不足使得整體性能提升不明顯。不過,當將這3 種數(shù)據(jù)增強方法組合使用時,在Rest 和Laptop 兩個數(shù)據(jù)集上都獲得了相當可觀的提升,其中在Rest 數(shù)據(jù)集上的Accuracy 和Macro-f1 分別提升1.81%和2.08%,而在Laptop 數(shù)據(jù)集上的Accuracy 和Macro-f1 分別提升了1.13%和1.22%,并取得了所有實驗的最佳性能。由此可見,MLDA方法也能很好地適用基于注意力機制+預(yù)訓(xùn)練模型的ABSA任務(wù),該方法具有一定的泛化能力。
4.4.4 MLDA應(yīng)用于對比學(xué)習(xí)
盡管PLMs 在NLP 任務(wù)上獲得了最先進的性能,然而近來一些研究表明,由PLMs 生成的句子表示在整個向量空間中只占據(jù)了一個狹窄的錐體,并非呈現(xiàn)均勻分布,這使得模型的空間表達能力受限,不利于下游任務(wù)[28]。而對比學(xué)習(xí)[29]已被證實可以有效地解決這個問題,其訓(xùn)練目標是拉近正樣本對來增強對齊,同時推遠不相關(guān)的負樣本以實現(xiàn)整個表示空間的均勻性。為了更廣泛地測試MLDA應(yīng)用性能,同時受文獻[30]啟發(fā),本文在AEN-BERT模型基礎(chǔ)上,將MLDA中的SL-NCR 和DL-SWR 作為兩種不同的數(shù)據(jù)增強策略應(yīng)用于原始句子上來產(chǎn)生高度相似的變化,形成正樣本對,構(gòu)建對比學(xué)習(xí)任務(wù),與原ABSA 任務(wù)做多任務(wù)聯(lián)合訓(xùn)練。AEN-BERT 模塊的參數(shù)設(shè)置同4.4.3小節(jié)。對比學(xué)習(xí)任務(wù)模塊與文獻[30]相同,采用正則化的溫度縮放的交叉熵損失(NT-Xent)作為對比目標。在每個訓(xùn)練步驟中,從可數(shù)據(jù)增強的訓(xùn)練集中隨機地采樣N條評論以構(gòu)建mini-batch,經(jīng)增強模塊后得到2N個表示。訓(xùn)練每個數(shù)據(jù)點,以在2(N-1)個樣本中找到其對應(yīng)的正例:
其中,sim(·)表示余弦相似函數(shù);τ控制溫度,?是指示函數(shù);平均所有2N個樣本的分類損失得到對比學(xué)習(xí)損失Lcl。
最終多任務(wù)訓(xùn)練模型的損失函數(shù)如下:
其中,Laen為AEN-BERT 模塊的損失函數(shù);λ為L2正則化項的系數(shù);Θ 為參數(shù)集。訓(xùn)練中,批量大小設(shè)置為32,τ設(shè)置為0.1。實驗結(jié)果如表5所示。在Rest 和Laptop 兩個數(shù)據(jù)集上取得比AEN-BERT+MLDA 更優(yōu)的性能,其中在Rest 數(shù)據(jù)集上的Accuracy 和Macro-f1 分別提升2.61%和1.17%,而在Laptop 數(shù)據(jù)集上的Accuracy 和Macro-f1分別提升了1.49%和1.65%。從中可以發(fā)現(xiàn)將MLDA 方法應(yīng)用于對比學(xué)習(xí)作為多任務(wù)參與到ABSA下游任務(wù)中,可以增強模型的表達能力,效果上比單純將MLDA 用于補充訓(xùn)練集更好。未來還將繼續(xù)嘗試將對比學(xué)習(xí)應(yīng)用于NLP其他下游任務(wù)中。
本研究調(diào)查了NLP 文本分類任務(wù)常用的替換法數(shù)據(jù)增強方法,并將其適應(yīng)到細粒度的ABSA 任務(wù)中,設(shè)計一個MLDA 方法,可以在句子、類別領(lǐng)域、詞向量3 個級別上生成具備弱噪聲并不會改變句子情緒標簽的訓(xùn)練樣本。還將MLDA 方法分別應(yīng)用在基于注意力機制+BERT模型和基于依賴樹+BERT 模型上進行方面級情感分析任務(wù),并測試其應(yīng)用于對比學(xué)習(xí)框架的效果,通過在兩個公共數(shù)據(jù)集上的實驗,表明MLDA方法能有效提升模型性能。
利益沖突聲明
所有作者聲明不存在利益沖突關(guān)系。