楊 晨,宋曉寧,宋 威
江南大學(xué)人工智能與計(jì)算機(jī)學(xué)院,江蘇無錫 214122
隨著經(jīng)濟(jì)社會(huì)的發(fā)展,互聯(lián)網(wǎng)中的用戶信息呈爆發(fā)式增長。爬蟲、數(shù)據(jù)庫等技術(shù)為收集這些信息提供了極大的便利,而如何使用這些數(shù)據(jù)則成了一個(gè)很重要的研究議題。這其中,最有價(jià)值,最讓企業(yè)、機(jī)構(gòu)或個(gè)人重視的就是用戶輿論的情感信息,比如微博上對熱點(diǎn)事件的評論,豆瓣上對電影的評價(jià)等。對用戶的情感進(jìn)行分析、分類,對企業(yè)和有關(guān)部門的發(fā)展、運(yùn)營有重大的意義。
計(jì)算機(jī)技術(shù)的發(fā)展為海量數(shù)據(jù)的處理提供可能,特別是深度學(xué)習(xí)的出現(xiàn),使得計(jì)算機(jī)模型對自然語言的理解能力大大提高。長短期記憶網(wǎng)絡(luò)(long shortterm memory,LSTM)[1-2]、卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural networks,CNN)[3-4]在情感類任務(wù)上都取得了很好的效果。近年也有研究使用降噪自編碼器[5],通過區(qū)分領(lǐng)域獨(dú)有特征和共享特征以及進(jìn)行二次干擾的方式來進(jìn)行跨領(lǐng)域的情感分類。
許多研究考慮任務(wù)的多元特征或加入外部信息來增強(qiáng)模型的效果。Yu等[6]結(jié)合產(chǎn)品信息來訓(xùn)練詞向量用于分類不同產(chǎn)品的評論情感。Zheng等[7]通過詞的語義規(guī)則來提取關(guān)鍵句,實(shí)現(xiàn)高效的情感分析。Yu等[8]通過加入輔助任務(wù),刪去文中情感詞來增加模型的泛化能力。
情感分類模型精度的不斷提升一定程度上受益于在大規(guī)模預(yù)料上預(yù)訓(xùn)練模型的發(fā)展,作為預(yù)訓(xùn)練語言模型的最初應(yīng)用形式,預(yù)訓(xùn)練的詞向量[9-10]已經(jīng)證明在許多任務(wù)中都有著明顯的積極效果。近些年來,研究者不滿足于詞向量保留的淺層語義信息,進(jìn)而追求一個(gè)能夠像ImageNet一樣保留深層次特征的可遷移的預(yù)訓(xùn)練模型[11]。Howard等[12]提出了一種適用于文本分類任務(wù)的通用可微調(diào)模型,該模型在6個(gè)數(shù)據(jù)集上獲得了先進(jìn)的效果。隨后不久,Radford等[13]提出了預(yù)訓(xùn)練語言模型OpenAI GPT,該模型僅僅需要很微小的改動(dòng)就可以用于各種下游任務(wù),最終在包含文本蘊(yùn)含、情感分析、文本相似度在內(nèi)的9個(gè)數(shù)據(jù)集上達(dá)到了最先進(jìn)的效果。
近期,預(yù)訓(xùn)練語言模型BERT(bidirectional encoder representations from transformers)引發(fā)了最激烈的討論,在自然語言處理領(lǐng)域的多個(gè)任務(wù)11個(gè)數(shù)據(jù)集上都取得了最先進(jìn)的效果[14]。目前,大量的研究已經(jīng)聚集在如何利用其執(zhí)行下游任務(wù)上,以進(jìn)一步提高目標(biāo)任務(wù)上的性能。Liu等[15]將預(yù)訓(xùn)練的BERT模型和多任務(wù)學(xué)習(xí)進(jìn)行結(jié)合,進(jìn)一步刷新了BERT的效果。Sun等[16]通過對輸入數(shù)據(jù)進(jìn)行改造,將單句分類問題改造成BERT更擅長的雙句分類問題進(jìn)行處理。Sun等[17]著重研究了BERT在多個(gè)文本分類任務(wù)上的表現(xiàn),對后續(xù)的研究有很強(qiáng)的借鑒意義。
然而,BERT在預(yù)訓(xùn)練階段,盡管通過多個(gè)任務(wù)學(xué)習(xí)了句法、語法等文本結(jié)構(gòu)和單詞語義信息,卻并沒有考慮任何情感信息,這使得其在情感任務(wù)上的表現(xiàn)并不如文本推理、閱讀理解等。同時(shí),作為一般的分類問題,BERT在許多情感數(shù)據(jù)集上已經(jīng)獲得了最先進(jìn)的效果,但很明顯的是,該過程還有細(xì)化和提升的空間,特別是當(dāng)樣本量較少時(shí),情感文本帶來的變化和噪聲使得準(zhǔn)確率差強(qiáng)人意。
針對以上問題,為BERT定制了一個(gè)新的預(yù)訓(xùn)練任務(wù),使得其在大量的、更容易獲取的無監(jiān)督的語料上也能獲取一定的情感信息。首先,在目標(biāo)領(lǐng)域數(shù)據(jù)集上使用改進(jìn)的掩蓋詞預(yù)測任務(wù)和下一句預(yù)測對BERT在目標(biāo)領(lǐng)域數(shù)據(jù)上進(jìn)一步預(yù)訓(xùn)練。然后,利用被掩蓋單詞蘊(yùn)含的情感極性作為標(biāo)簽,讓模型根據(jù)上下文來預(yù)測該標(biāo)簽,該任務(wù)與前兩個(gè)任務(wù)一同計(jì)算損失,訓(xùn)練參數(shù),以防止“災(zāi)難性遺忘”問題[18]。實(shí)驗(yàn)證明,相較于原版的BERT模型,這樣的訓(xùn)練方式使其在具體的情感數(shù)據(jù)集上可以用更少的樣本獲得更好的效果。
BERT是一種基于Transformer的雙向文本表征,作為最新的預(yù)訓(xùn)練語言模型的一種,最重要的特點(diǎn)是可以使用大規(guī)模無監(jiān)督數(shù)據(jù)集進(jìn)行預(yù)訓(xùn)練,然后在特定任務(wù)數(shù)據(jù)集上進(jìn)行微調(diào)。由于預(yù)訓(xùn)練階段引入了大量先驗(yàn)知識(shí),加上Transformer強(qiáng)大的特征抽取能力,BERT在11個(gè)數(shù)據(jù)集上都取得了最先進(jìn)的效果。
和傳統(tǒng)的n-gram語言模型不同,BERT使用掩蓋語言模型(masked language model,MLM)作為主要任務(wù)訓(xùn)練模型參數(shù),其任務(wù)目標(biāo)是使用類似于“完形填空”的方式,將一個(gè)句子里的多個(gè)詞使用特殊的標(biāo)記遮蓋掉,讓模型去預(yù)測被掩蓋的單詞,復(fù)原整個(gè)輸入。
掩蓋語言模型需要隨機(jī)遮蓋輸入文本序列中的單詞,然后模型給出遮擋目標(biāo)可能的單詞的概率分布。理論上來說,替換后的句子引入了噪聲[MASK],模型通過獲取降噪的上下文特征對被掩蓋的目標(biāo)單詞進(jìn)行重新編碼,因此掩蓋語言模型本質(zhì)上是一種自編碼的語言模型。
然而,掩蓋語言模型對不同類別單詞進(jìn)行重新編碼效果不盡相同。圖1展示了BERT對某個(gè)樣本(“電影太糟了,我從來沒有提前離場過,除了這次”)的不同單詞進(jìn)行掩蓋并編碼產(chǎn)生的損失。其中顏色越深代表該單詞產(chǎn)生的損失越大,模型對該詞的預(yù)測效果也就越差。
Fig.1 Loss of MLM on an example sentence圖1 掩蓋語言模型在某例句上的損失
從圖1中可以看到,一些介詞,例如“a”“the”等,由于有特定的語法規(guī)律和固定的搭配,模型可以對它們預(yù)測得非常準(zhǔn)確。一些名詞,例如“cinema”,模型注意到了前文特征詞“movie”,因此也能給出一定的判斷。然而,注意到,雖然下文表達(dá)了消極情感的語義特征,情感詞“bad”,仍舊產(chǎn)生了很高的損失,通過獲得模型的輸出,發(fā)現(xiàn)模型給出的概率分布中,前三的單詞分別為“great”“wonderful”“bad”。也就是說,模型沒有很好地提取到下文的情感特征,甚至給出了情感極性相反的判斷。從這一點(diǎn)來說,降低掩蓋語言模型對情感詞的預(yù)測損失,可以一定程度上增強(qiáng)模型對情感特征的提取能力,從而在具體情感任務(wù)上獲得更好的效果。
在BERT中,每個(gè)輸入到Transformer[19]的句子都要預(yù)先在開頭加入一個(gè)特殊的詞例[CLS],一般分類問題是將Transformer在[CLS]對應(yīng)位置的輸出看成是一個(gè)編碼輸入端全句分類特征的向量,然后將該特征向量放入分類器進(jìn)行分類。
由于BERT是一個(gè)預(yù)訓(xùn)練模型,可以直接使用,將目標(biāo)數(shù)據(jù)集放在大語料環(huán)境下預(yù)訓(xùn)練得到的BERT上進(jìn)行微調(diào),將目標(biāo)輸入編碼為一個(gè)固定大小特征向量進(jìn)行分類。但在這之前,還可以通過進(jìn)一步預(yù)訓(xùn)練[17]的方式,即在目標(biāo)任務(wù)微調(diào)前,使用目標(biāo)數(shù)據(jù)集(或目標(biāo)領(lǐng)域)的數(shù)據(jù)對模型進(jìn)一步預(yù)訓(xùn)練,使用掩蓋語言模型和下一句預(yù)測任務(wù)微調(diào)BERT的參數(shù),相當(dāng)于先將模型從一般領(lǐng)域向目標(biāo)領(lǐng)域進(jìn)行遷移,然后再執(zhí)行目標(biāo)分類任務(wù)。圖2展示了BERT在具體領(lǐng)域分類任務(wù)上的流程。
Fig.2 BERT classification flow chart圖2 BERT分類流程圖
大量的實(shí)驗(yàn)證明,進(jìn)一步預(yù)訓(xùn)練由于模型提前適應(yīng)了目標(biāo)領(lǐng)域的數(shù)據(jù),往往能取得更好的效果。這在本文的實(shí)驗(yàn)部分也有體現(xiàn)。具體來說,通過掩蓋詞的預(yù)測任務(wù),模型學(xué)習(xí)到了更多的目標(biāo)領(lǐng)域的語義、語法等信息,而這些信息則顯著地增強(qiáng)了模型的分類效果。同樣地,由于本文的目的是判斷目標(biāo)的情感,因此希望模型在該階段能更好地利用上下文的情感信息去監(jiān)督學(xué)習(xí),以增強(qiáng)在具體情感數(shù)據(jù)集上的分類能力,特別是當(dāng)用于分類的數(shù)據(jù)不足時(shí),模型仍然能夠?qū)㈩A(yù)先學(xué)習(xí)到的大量情感信息遷移到小數(shù)據(jù)集上來。
在BERT中,文本特征的提取主要依賴掩蓋詞預(yù)測任務(wù)。第2章分析了BERT對不同掩蓋詞編碼的效果,相較于可以被準(zhǔn)確預(yù)測的介詞、連詞和副詞,情感詞有兩個(gè)顯著的特點(diǎn),這是導(dǎo)致其預(yù)測效果不佳的原因。一是情感特征,特別是上下文中不包含情感詞的隱式情感表達(dá)難以被模型注意;二是情感詞出現(xiàn)頻率相對較小,導(dǎo)致其在預(yù)訓(xùn)練階段對情感特征提取不充分。針對這兩個(gè)問題,在BERT的基礎(chǔ)上進(jìn)行了兩點(diǎn)改動(dòng):
(1)通過加權(quán)的方式,提高掩蓋語言模型對情感詞的預(yù)測效果。
(2)根據(jù)情感詞典,設(shè)計(jì)了基于目標(biāo)上下文的單詞情感極性預(yù)測任務(wù),向模型中加入外部情感信息。
本文通過WordNet情感詞典獲取情感詞,同時(shí)為了使得該標(biāo)注擁有跨領(lǐng)域的性能,盡可能選取情感極性單一且鮮明的單詞。
直覺上,當(dāng)下游任務(wù)為情感任務(wù)時(shí),在預(yù)訓(xùn)練階段給予情感詞更多的關(guān)注有利于模型更好地提取全文的情感特征。但在實(shí)際應(yīng)用中,情感詞出現(xiàn)較少,如果將情感詞典中所有情感顯著的情感詞看作正類,非情感詞看作負(fù)類,則一般情況下情感詞僅占被掩蓋詞的1%,作為處理不均衡數(shù)據(jù)的常用手段。為了能在情感詞預(yù)測時(shí)產(chǎn)生更大的梯度,對模型參數(shù)產(chǎn)生更大的影響,挑選了樣本中所有的情感詞,并在計(jì)算損失時(shí)對其加入了更大的樣本權(quán)重。
假設(shè)一個(gè)不定長序列S中的特殊詞例w[CLS]和w[MASK],其經(jīng)Transformer提取特征后的對應(yīng)表征為x[CLS]和x[MASK],R為事先定義的情感詞集合,則對于掩蓋詞預(yù)測任務(wù),定義損失函數(shù)為:
在預(yù)訓(xùn)練階段,單詞本身所蘊(yùn)含的情感信息也非常重要,許多研究從詞向量入手[6,20],通過拼接情感向量或者相乘的方式向詞向量中加入情感因素。然而,BERT作為一個(gè)預(yù)訓(xùn)練模型并不適用,本文的出發(fā)點(diǎn)是將該信息以有監(jiān)督的方式提供給模型,通過反向傳播修改參數(shù)并學(xué)習(xí)情感信息。因此設(shè)計(jì)了一個(gè)無需手工標(biāo)注的預(yù)訓(xùn)練任務(wù),其任務(wù)具體描述為:在預(yù)測一個(gè)被掩蓋單詞的語義的同時(shí),根據(jù)上下文預(yù)測該單詞所蘊(yùn)含的情感極性。
例如,對于輸入“The food was [MASK]and the service was good”,從未被掩蓋的描述“the service was good”可以得知,這是對某個(gè)餐廳的正面評價(jià),而“and”作為連詞連接的是兩個(gè)表達(dá)相似的句子,因此可以推理出被掩蓋的單詞也表達(dá)正面情感。同理,給模型提供被掩蓋詞的情感信息,則模型也應(yīng)可以預(yù)測出其前后文所表達(dá)的情感色彩,從而在大語料環(huán)境下發(fā)現(xiàn)有關(guān)情感的隱式表達(dá)。BERT在許多文本推理和閱讀理解任務(wù)中都取得了不錯(cuò)的效果,該任務(wù)也不例外。
具體地,本文對被掩蓋單詞的單詞情感極性進(jìn)行批量標(biāo)注,作為在預(yù)訓(xùn)練階段提供給模型的額外監(jiān)督信息。數(shù)據(jù)輸入模型后,該任務(wù)在Transformer中與其他任務(wù)共享參數(shù),用被掩蓋單詞所對應(yīng)的表征作為編碼了上下文信息的動(dòng)態(tài)詞向量,將該向量作為特征使用softmax交叉熵?fù)p失函數(shù)對其表達(dá)的情感進(jìn)行預(yù)測:
和式(1)不同的是,式(3)使用隨機(jī)初始化的矩陣W作為任務(wù)參數(shù),而在掩蓋語言模型中則使用BERT的詞嵌入矩陣E作為參數(shù)進(jìn)行“反嵌入”,并計(jì)算損失。
和基礎(chǔ)的BERT模型一樣,本文的模型也主要由三部分組成,整體上如圖3所示。
(1)輸入層。輸入層即嵌入層,BERT的詞嵌入分為三部分,分別為詞嵌入(word embedding)、位置嵌入(position embedding)、片段嵌入(segment embedding),最終的輸入是這三個(gè)嵌入向量的和。
(2)Transformer。上一階段輸入的詞嵌入經(jīng)Transformer神經(jīng)網(wǎng)絡(luò)提取上下文特征,獲得每個(gè)輸入對應(yīng)的表征。
(3)多任務(wù)層。BERT主要通過NSP(next sentence prediction)和MLM任務(wù)在大規(guī)模無監(jiān)督文本上提取特征,保留了NSP任務(wù)(loss1),改進(jìn)了MLM(loss2)任務(wù),同時(shí)加上本文提出的單詞情感預(yù)測任務(wù)(loss3),模型最終的損失函數(shù)是三個(gè)任務(wù)產(chǎn)生的損失之和:
Fig.3 Model structure圖3 模型結(jié)構(gòu)
其中,λ表示為不同任務(wù)分配的權(quán)重。BERT的下一句預(yù)測和改進(jìn)后的掩蓋詞預(yù)測任務(wù)是提取文本特征的基礎(chǔ)任務(wù),因此沒有改動(dòng)loss1和loss2相對權(quán)重,而本文的單詞情感預(yù)測任務(wù)作為一個(gè)情感相關(guān)的輔助任務(wù),用于添加情感信息同時(shí)輔助學(xué)習(xí)情感特征,則是本文參數(shù)調(diào)整的對象。一般來說,多個(gè)任務(wù)之間互相影響,對其權(quán)重也十分敏感,將其看作超參數(shù),通過實(shí)驗(yàn)來選取最優(yōu)的λ1和λ2參數(shù)組合。
為了檢驗(yàn)BERT以及本文改進(jìn)的BERT模型在情感任務(wù)上的性能,選取了兩個(gè)情感分類領(lǐng)域的流行數(shù)據(jù)集進(jìn)行實(shí)驗(yàn),選取了訓(xùn)練集的少部分樣本作為訓(xùn)練集,其余訓(xùn)練集樣本去掉標(biāo)簽信息作為預(yù)訓(xùn)練語料。
表1展示了本文所使用的相關(guān)數(shù)據(jù)集的統(tǒng)計(jì)信息。其中,IMDB情感數(shù)據(jù)集來自美國最大的互聯(lián)網(wǎng)電影資料數(shù)據(jù)庫,包含5萬條不同電影的用戶評論信息,是一個(gè)傾向性明顯的二分類影評數(shù)據(jù)集。除此之外,該數(shù)據(jù)集還提供了不同于訓(xùn)練集和測試集的額外5萬條無標(biāo)注數(shù)據(jù)。
Yelp-L數(shù)據(jù)集是Yelp情感分析數(shù)據(jù)集的一個(gè)子集,來自于美國最大的點(diǎn)評網(wǎng)站Yelp.com,包含了餐飲領(lǐng)域的3萬條用戶評論,數(shù)據(jù)集的標(biāo)簽來自于用戶的原始評分,是一個(gè)5分類的餐飲領(lǐng)域評論數(shù)據(jù)集。
Table 1 Dataset表1 數(shù)據(jù)集
對原數(shù)據(jù)集的訓(xùn)練集進(jìn)行進(jìn)一步劃分,測試集不變,以測試模型在小樣本下的性能。IMDB數(shù)據(jù)集取原數(shù)據(jù)集(25 000)的1%,即250個(gè)訓(xùn)練樣本用于任務(wù)微調(diào),其中正負(fù)樣本各125個(gè)。Yelp數(shù)據(jù)集取原訓(xùn)練集的3%,即300個(gè)訓(xùn)練樣本,其中每類別樣本60個(gè)。剩余的訓(xùn)練樣本用于無監(jiān)督預(yù)訓(xùn)練和詞粒度情感預(yù)測任務(wù)(word sentiment prediction,WSP)。
使用BERT-base為基礎(chǔ)模型,該模型隱層節(jié)點(diǎn)數(shù)為768,有12個(gè)自注意力頭部和12個(gè)Transformer塊(Block)。為了使模型擁有足夠的上下文信息,僅掩蓋了10%的單詞,且對每個(gè)訓(xùn)練樣本反復(fù)取樣20次,每次取128個(gè)詞例。對于詞粒度情感預(yù)測任務(wù),將情感詞典中情感評分大于0.6的標(biāo)記為積極詞匯,小于0.4的標(biāo)記為消極詞匯。在訓(xùn)練時(shí),批量大小設(shè)置為28,學(xué)習(xí)率為5E-5,在一塊GTX1080ti訓(xùn)練100 000步。
在微調(diào)階段,將批量大小設(shè)置為16,對數(shù)據(jù)集迭代了2次,模型中所有dropout概率都為0.1。在4塊GTX1080ti上使用adam優(yōu)化器訓(xùn)練,β值為0.9和0.999。在訓(xùn)練過程中使用學(xué)習(xí)率為2E-5的動(dòng)態(tài)三角學(xué)習(xí)率,預(yù)熱率為0.1,訓(xùn)練過程中保存在驗(yàn)證集上表現(xiàn)最優(yōu)的模型在測試集上進(jìn)行測試。對于超過限制長度的樣本使用首尾分割的方式,保留前210個(gè)詞例和尾部300個(gè)詞例。
為了得到最佳效果,通過多組實(shí)驗(yàn)驗(yàn)證最優(yōu)的參數(shù)值,即改進(jìn)后掩蓋語言模型的k值和多任務(wù)損失的損失權(quán)重λ1和λ2。k值取大于1的常數(shù)。為了避免梯度問題,λ1和λ2之和一般為1,可看成是不同任務(wù)所占比重。取IMDB數(shù)據(jù)集中與訓(xùn)練集和測試集不相交的2 000個(gè)樣本作為驗(yàn)證集來完成該實(shí)驗(yàn)。
從表2可以看出,兩種改進(jìn)方式在驗(yàn)證集上較原方法精度都有所提升,情感詞的損失也有效下降,但是較依賴于權(quán)值的選擇??梢钥闯?,當(dāng)單詞情感預(yù)測任務(wù)所占比重超過0.3后,反而會(huì)取得更差的效果,而k值設(shè)為10時(shí),模型也在情感詞上產(chǎn)生過擬合。最終選取表現(xiàn)最好的取值k=2、λ1=0.90、λ2=0.10作為超參數(shù),測試模型的泛化性能。
Table 2 Accuracy with different hyper-parameters表2 不同超參數(shù)下的精度
表3展示了不同模型在這兩個(gè)數(shù)據(jù)集上的效果。其中,表的第一行為實(shí)驗(yàn)數(shù)據(jù)集名稱,IDMB+表示使用了額外5萬無監(jiān)督數(shù)據(jù)進(jìn)行預(yù)訓(xùn)練。LSTM+ATTN代表加入自注意力機(jī)制的雙向長短期神經(jīng)網(wǎng)絡(luò)模型,其結(jié)果來自對文獻(xiàn)[2]的復(fù)現(xiàn),非預(yù)訓(xùn)練模型很難在少量訓(xùn)練數(shù)據(jù)上取得好的效果,表格第二行給出了上述模型在全數(shù)據(jù)集下的表現(xiàn)。表的后半部分是預(yù)訓(xùn)練語言模型的相關(guān)實(shí)驗(yàn)數(shù)據(jù),ULMFIT(universal language model fine-tuning for text classification)的實(shí)驗(yàn)結(jié)果來自文獻(xiàn)[8],是基于LSTM的預(yù)訓(xùn)練語言模型。BERT代表使用原BERT模型在目標(biāo)數(shù)據(jù)集上直接進(jìn)行微調(diào)的結(jié)果。FP(further pre-training)代表在目標(biāo)領(lǐng)域內(nèi)進(jìn)一步預(yù)訓(xùn)練之后的模型的實(shí)驗(yàn)結(jié)果,SentiBERT(sentiment BERT)為本文改進(jìn)后的BERT模型。
Table 3 Test accuracy in different models表3 不同模型下的測試精度 %
實(shí)驗(yàn)結(jié)果表明,在訓(xùn)練數(shù)據(jù)較小的情況下,預(yù)訓(xùn)練的語言模型由于吸收了大量復(fù)雜語言知識(shí),結(jié)果遠(yuǎn)好于基于詞向量的LSTM神經(jīng)網(wǎng)絡(luò)模型,而進(jìn)一步預(yù)訓(xùn)練使得BERT在進(jìn)行具體任務(wù)的微調(diào)前適應(yīng)了相關(guān)語境,使得結(jié)果明顯優(yōu)于前者。最后,本文的模型由于實(shí)現(xiàn)情感信息的預(yù)先獲取,使得最終結(jié)果再上升1個(gè)百分點(diǎn)。除此之外,還測試了BERT相關(guān)模型在不同數(shù)量訓(xùn)練樣本下的性能。
從圖4可以看出,相較原BERT模型,本文方法在不同數(shù)量的訓(xùn)練數(shù)據(jù)集下均能取得較好的效果,特別在樣本數(shù)量較少的情況下,BERT的3種訓(xùn)練方式差異較大,隨著訓(xùn)練數(shù)據(jù)增多,本文的模型精度收斂更加迅速。最終,在全數(shù)據(jù)集下,3個(gè)模型的差距較小樣本下已經(jīng)不夠明顯,猜測足夠的人工標(biāo)注樣本使得BERT推斷出了一定的情感,補(bǔ)償了加入的單詞情感信息。
Fig.4 Accuracy with different number of training samples圖4 不同數(shù)量訓(xùn)練樣本下的模型精度
情感類任務(wù)的一個(gè)重要特征是模型的改變可以直觀地反映在詞向量的微調(diào)上。使用余弦相似度可以非常直觀地度量詞向量的語義相關(guān)性,而經(jīng)過情感任務(wù)訓(xùn)練得到的詞向量往往也可以蘊(yùn)含情感傾向,具體表現(xiàn)為情感傾向相同的詞其相似度會(huì)增加,而情感表達(dá)相反的詞其相似度會(huì)降低。
BERT的詞向量的組成和訓(xùn)練過程比較復(fù)雜,將BERT的詞嵌入進(jìn)行分離,分析了預(yù)訓(xùn)練后SentiBERT的詞嵌入的語義部分,雖然BERT的詞向量在整體上不具有word2vec[9]所表達(dá)的直觀語義特征,但是也發(fā)現(xiàn)了類似的情感傾向性。
選取了6個(gè)情感傾向明顯的詞例,其中正負(fù)類別各3個(gè),分別計(jì)算其在原BERT模型和本文模型上的余弦相似度,并將其變化記錄在表4中。
Table 4 BERT word vector表4 BERT詞向量參數(shù)
表4中的值代表該行該列對應(yīng)的單詞對在模型改進(jìn)前后的詞嵌入?yún)?shù)變化量(差值),可以看出,表中情感傾向相同的單詞對,其詞嵌入的相似度變化都為正值,即在本文的模型中相似度相較原模型有所提升,而表中顏色加深部分的情感傾向相反的詞對,相似度則相應(yīng)降低,這和本文的預(yù)期相符,也說明通過單詞情感預(yù)測任務(wù),BERT的確從無監(jiān)督文本中學(xué)到了有效的情感信息。
BERT區(qū)別于其他預(yù)訓(xùn)練語言模型的一大特點(diǎn)就是使用了自編碼語言模型,這是本文的單詞情感預(yù)測任務(wù)的基礎(chǔ)。為了驗(yàn)證在單詞情感預(yù)測任務(wù)中對單詞進(jìn)行掩蓋的重要性,設(shè)計(jì)了一組對照實(shí)驗(yàn),分別通過預(yù)測掩蓋詞和非掩蓋詞的情感來給模型加入外部情感信息,來進(jìn)一步訓(xùn)練BERT模型,結(jié)果如圖5、圖6所示。
Fig.5 Loss curves of two pre-training methods圖5 兩種預(yù)訓(xùn)練方法的損失曲線
Fig.6 Accuracy curves of two pre-training methods圖6 兩種預(yù)訓(xùn)練方法的精度曲線
從圖5可以看出,對非掩蓋詞進(jìn)行情感預(yù)測,損失非常迅速地下降至0,而掩蓋詞的損失則下降得更加曲折、緩慢。而在圖6中,掩蓋詞情感預(yù)測任務(wù)則在目標(biāo)數(shù)據(jù)集上明顯取得更好的效果,而通過對非掩蓋詞添加情感信息的方法則對情感任務(wù)提升不大,其效果甚至低于原BERT模型。由此推測,由于在本文的詞粒度情感預(yù)測任務(wù)中,所有的被預(yù)測單詞在輸入端都被掩蓋,這使得模型無法建立具體某個(gè)單詞和其對應(yīng)情感標(biāo)簽的對應(yīng)關(guān)系,以防止該任務(wù)出現(xiàn)過擬合。
本文就訓(xùn)練語言語言模型BERT在情感分類任務(wù)上的應(yīng)用進(jìn)行了研究。提出的改進(jìn)版模型實(shí)現(xiàn)了無監(jiān)督數(shù)據(jù)中情感信息的提取,相較原模型在小樣本下有較大提升。在實(shí)際生產(chǎn)生活中,大規(guī)模語料數(shù)據(jù)容易獲得,而手工標(biāo)注相較比較費(fèi)時(shí)。但是本文對模型的改進(jìn)停留在目標(biāo)數(shù)據(jù)集,并非一個(gè)從零開始訓(xùn)練得到的情感模型,下一步嘗試從零開始訓(xùn)練BERT。