武乾坤,彭敦陸
(上海理工大學(xué) 光電信息與計(jì)算機(jī)工程學(xué)院,上海 200093)
多任務(wù)學(xué)習(xí)(Multi-task Learning,MTL)在機(jī)器學(xué)習(xí)領(lǐng)域中是一個(gè)很有前景的課題.對(duì)比單任務(wù)學(xué)習(xí),多任務(wù)學(xué)習(xí)是把多個(gè)相關(guān)任務(wù)放在同一個(gè)模型中訓(xùn)練,同時(shí)學(xué)習(xí)多個(gè)任務(wù).多任務(wù)學(xué)習(xí)機(jī)類(lèi)似人類(lèi)的一種學(xué)習(xí)行為,人類(lèi)學(xué)習(xí)某一項(xiàng)技能時(shí)也會(huì)對(duì)除此之外的技能有提升效果,例如學(xué)習(xí)編程也能提高學(xué)生數(shù)學(xué)思維能力.多任務(wù)學(xué)習(xí)目標(biāo)就是通過(guò)共同學(xué)習(xí)多個(gè)任務(wù)來(lái)幫助提升每一項(xiàng)任務(wù)性能.
自然語(yǔ)言處理領(lǐng)域中,大多數(shù)任務(wù)僅解決單一問(wèn)題.由于單任務(wù)學(xué)習(xí)的目標(biāo)往往只關(guān)注了局部信息,限制了模型的泛化性.而多任務(wù)學(xué)習(xí)能利用任務(wù)之間潛在信息,提取各個(gè)任務(wù)之間共通的特征,提高模型性能[1].
在深度學(xué)習(xí)領(lǐng)域,通常采用兩種常用方法來(lái)實(shí)現(xiàn)多任務(wù)學(xué)習(xí):1)參數(shù)硬共享機(jī)制;2)參數(shù)軟共享機(jī)制.在參數(shù)硬共享機(jī)制中,不同子任務(wù)除擁有自己模型參數(shù)外還共享一部分參數(shù).而在參數(shù)軟共享機(jī)制中,每個(gè)任務(wù)都有自己的模型參數(shù).任務(wù)之間使用正則化方式保障參數(shù)相似性.Long Duong等人使用L2正則化方式實(shí)現(xiàn)參數(shù)軟共享機(jī)制[2].本文關(guān)注于參數(shù)硬共享機(jī)制實(shí)現(xiàn)自然語(yǔ)言處理多任務(wù)學(xué)習(xí).
針對(duì)使用參數(shù)硬共享機(jī)制實(shí)現(xiàn)多任務(wù)學(xué)習(xí),研究者傾向于用前饋神經(jīng)網(wǎng)絡(luò)作為共享參數(shù)層[3].為了使共享層能更好抓取數(shù)據(jù)中潛在信息,本文使用BERT預(yù)訓(xùn)練模型作為多任務(wù)之間的共享層.BERT作為一種動(dòng)態(tài)語(yǔ)義表示模型,具有更強(qiáng)的語(yǔ)義表達(dá)能力,能夠彌補(bǔ)靜態(tài)詞向量語(yǔ)義提取不足問(wèn)題.
自然語(yǔ)言處理領(lǐng)域,有監(jiān)督的文本分類(lèi)問(wèn)題已經(jīng)取得很好的性能.回歸任務(wù)性能提升相對(duì)滯后.回歸任務(wù)的挑戰(zhàn)主要體現(xiàn)在均方損失魯棒性不足、輸出空間較密集.多任務(wù)學(xué)習(xí)能通過(guò)在互補(bǔ)任務(wù)之間共享域信息來(lái)提高模型通用性.即通過(guò)提高容易訓(xùn)練的分類(lèi)任務(wù)精度提升難以訓(xùn)練的回歸任務(wù)的性能.深度模型得益于多個(gè)子任務(wù)的聯(lián)合學(xué)習(xí),但是,在實(shí)踐中各個(gè)任務(wù)之間的相對(duì)權(quán)重嚴(yán)重地影響了系統(tǒng)的性能[4].在文獻(xiàn)中,權(quán)重都被當(dāng)作為超參數(shù),并通過(guò)手動(dòng)進(jìn)行調(diào)優(yōu),在深度背景下,這一過(guò)程往往是困難且低效的.
本文針對(duì)文本領(lǐng)域分類(lèi)任務(wù)和回歸任務(wù),從貝葉斯先驗(yàn)概率角度出發(fā)提出一個(gè)任務(wù)之間權(quán)重自適應(yīng)的模型.本文的貢獻(xiàn)如下:1)使用BERT作為多任務(wù)學(xué)習(xí)參數(shù)共享層,提高模型語(yǔ)義抓取能力;2)利用均值池化和最大值池化級(jí)聯(lián)的方式合并BERT模型提取出來(lái)的語(yǔ)義特征,多方位保存語(yǔ)義特征;3)設(shè)計(jì)MTL-BERT模型,運(yùn)用自適應(yīng)方式設(shè)置多任務(wù)學(xué)習(xí)任務(wù)之間權(quán)重;4)使用多任務(wù)學(xué)習(xí)解決文本多標(biāo)簽分類(lèi)和回歸問(wèn)題.
自然語(yǔ)言處理(Natural Language Processing,NLP)是計(jì)算機(jī)科學(xué)領(lǐng)域中一個(gè)重要方向.近些年來(lái),得益于神經(jīng)網(wǎng)絡(luò)技術(shù)迅速發(fā)展,自然語(yǔ)言處理也有重大進(jìn)展.Bengio等人提出第一個(gè)神經(jīng)語(yǔ)言模型,使用前饋神經(jīng)網(wǎng)絡(luò)構(gòu)建語(yǔ)言模型推動(dòng)詞嵌入技術(shù)進(jìn)步[5].
在自然語(yǔ)言處理任務(wù)中,無(wú)論是使用深度學(xué)習(xí)還是傳統(tǒng)機(jī)器學(xué)習(xí),都需要對(duì)文本進(jìn)行向量化表示.Mikolov等人提出word2vec語(yǔ)言模型使用稠密向量來(lái)表示文本中詞序列[6].作為靜態(tài)詞向量,word2vec無(wú)法解決一詞多義問(wèn)題.隨著動(dòng)態(tài)詞嵌入技術(shù)發(fā)展,自然語(yǔ)言處理中一詞多義問(wèn)題有了初步解決方案.Matthew等人提出的ELMo模型可以生成動(dòng)態(tài)詞向量[7].但是由于ELMo由兩個(gè)單向LSTM組成,每一個(gè)LSTM只能注意到出現(xiàn)在它前面的所有詞,觸及不到它后面的詞語(yǔ),無(wú)法做到真正雙向.Devlin等人[8]提出的BERT模型很好地解決ELMo的不足,實(shí)現(xiàn)真正雙向語(yǔ)言模型.BERT模型能更好理解上下文語(yǔ)境,對(duì)語(yǔ)義挖掘有更好的支持.預(yù)訓(xùn)練模型通常使用大量未標(biāo)記數(shù)據(jù)來(lái)學(xué)習(xí)通用語(yǔ)言表示,并且能夠針對(duì)不同任務(wù)把預(yù)訓(xùn)練的模型適配給下游任務(wù),以滿(mǎn)足各種不同任務(wù)的需要.預(yù)訓(xùn)練模型性能能夠直接影響下游具體任務(wù)性能.
BERT是基于Transformers的一種文本表示模型,通常BERT預(yù)訓(xùn)練過(guò)程有兩種方式:1)預(yù)測(cè)文本某一句話(huà)中MASK的某些Token;2)預(yù)測(cè)兩句話(huà)是否是上下文關(guān)系.BERT模型通過(guò)訓(xùn)練上述兩種方式得到文本語(yǔ)義表示.
如同在人類(lèi)學(xué)習(xí)環(huán)境下,在機(jī)器學(xué)習(xí)領(lǐng)域,模型所要學(xué)習(xí)的內(nèi)容也不應(yīng)該是獨(dú)立的.如文獻(xiàn)[9]在多個(gè)網(wǎng)絡(luò)流之間提取特征,多個(gè)網(wǎng)絡(luò)流之間的內(nèi)容存在著相關(guān)性.模型能學(xué)習(xí)很多相關(guān)的知識(shí),這些知識(shí)遵循相同的規(guī)律.如文獻(xiàn)[10]提出在人臉識(shí)別領(lǐng)域,多任務(wù)學(xué)習(xí)能提高模型泛化能力和識(shí)別準(zhǔn)確率.多任務(wù)學(xué)習(xí)讓我們可以用更少的先驗(yàn)知識(shí),學(xué)習(xí)到更多內(nèi)容.文獻(xiàn)[11]提出改進(jìn)的在線(xiàn)MTL算法,通過(guò)權(quán)重矩陣分解克服任務(wù)之間嚴(yán)格的相關(guān)性,對(duì)多任務(wù)學(xué)習(xí)權(quán)重分配有很好的啟發(fā).
多任務(wù)學(xué)習(xí)屬于遷移學(xué)習(xí)的一種.如圖1所示在神經(jīng)網(wǎng)絡(luò)中,往往通過(guò)使用共享特征表示,并行訓(xùn)練多個(gè)相關(guān)任務(wù)來(lái)實(shí)現(xiàn)多任務(wù)學(xué)習(xí).與單任務(wù)模型相比較,多任務(wù)旨在通過(guò)任務(wù)相互影響,提高每一個(gè)任務(wù)準(zhǔn)確度和性能.Xia等人基于深度置信網(wǎng)絡(luò)(Deep Belief Network,DBN)設(shè)計(jì)一種多任務(wù)學(xué)習(xí)框架[12].將情感識(shí)別任務(wù)作為模型主要任務(wù),把基于類(lèi)別級(jí)別分類(lèi)和基于連續(xù)級(jí)別回歸作為次要任務(wù).最后使用支持向量機(jī)作為主任務(wù)分類(lèi)器,模型取得較好結(jié)果.Anirban等人提出基于多任務(wù)學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)[13],把情緒識(shí)別和情感識(shí)別作為兩個(gè)聯(lián)合任務(wù),提高了模型在情緒識(shí)別上的性能.
圖1 多任務(wù)學(xué)習(xí)架構(gòu)Fig.1 Architecture of multi task learning
多任務(wù)學(xué)習(xí)實(shí)現(xiàn)方式有很多種:聯(lián)合學(xué)習(xí)(joint learning)、自主學(xué)習(xí)(learning to learn)和帶有輔助任務(wù)的學(xué)習(xí)(learning with auxiliary task)等.多任務(wù)學(xué)習(xí)本質(zhì)是模型能同時(shí)優(yōu)化多個(gè)目標(biāo),并行優(yōu)化每個(gè)任務(wù)的損失函數(shù),進(jìn)而提高模型性能.多任務(wù)學(xué)習(xí)中不同任務(wù)有不同的噪音模式,對(duì)兩個(gè)任務(wù)同時(shí)訓(xùn)練能學(xué)習(xí)到一個(gè)更為泛化的表示.不同任務(wù)的噪音對(duì)彼此互相有影響,使多任務(wù)學(xué)習(xí)有效增加訓(xùn)練實(shí)例數(shù)目.
用FW(x)表示模型的特征提取部分,因此,回歸模型可以定義為映射FW,W1(x):X→Y1,多標(biāo)簽?zāi)P涂梢远x為映射FW,W2(x):X→Y2,W1和W2分別為兩項(xiàng)任務(wù)的私有參數(shù).區(qū)別于對(duì)每個(gè)模型進(jìn)行單獨(dú)優(yōu)化,本研究嘗試采用聯(lián)合學(xué)習(xí)的模式.
本節(jié)將首先闡述本文的模型結(jié)構(gòu),并對(duì)多任務(wù)進(jìn)行建模.此外對(duì)于建模中存在的超參數(shù)難以?xún)?yōu)化的問(wèn)題,本研究提出了一種權(quán)重動(dòng)態(tài)優(yōu)化的方法.并從貝葉斯優(yōu)化的角度加以闡述.
在自然語(yǔ)言處理中,通常是先將文本序列嵌入到稠密詞向量中,但過(guò)往的詞嵌入方法,類(lèi)似于Word2Vec對(duì)語(yǔ)義和語(yǔ)法的解析是靜態(tài)的.BERT作為遷移模型,通過(guò)無(wú)監(jiān)督模式學(xué)習(xí)海量預(yù)料庫(kù)的語(yǔ)言范式,以便在下游任務(wù)中能更快適應(yīng)任務(wù)需求.本文將BERT作為特征提取器具有以下優(yōu)點(diǎn):1)BERT在預(yù)訓(xùn)練過(guò)程中已經(jīng)保存深層次語(yǔ)義信息;2)不同于word2vec等靜態(tài)詞向量,BERT處理文本數(shù)據(jù)時(shí)對(duì)一詞多義有更好的支持;3)BERT模型有強(qiáng)大的特征提取能力,支持多任務(wù)模型有更好的泛化能力.
BERT模型[14]編碼過(guò)程會(huì)將原始的輸入序列映射到一個(gè)指定維度向量空間,通常BERT模型在輸入文本前插入一個(gè)[CLS]符號(hào),將該符號(hào)對(duì)應(yīng)輸出向量作為輸入文本語(yǔ)義表示.該語(yǔ)義表示用于下游回歸任務(wù)和分類(lèi)任務(wù).定義BERT編碼方式如下:
h1,h2,…,hl=bert(x1,x2,…,xl)
(1)
這里,bert(·)是BERT預(yù)訓(xùn)練模型,(x1,x2,…,xl)是原始輸入,h∈d是輸入Token經(jīng)過(guò)BERT編碼之后向量表示.為提高BERT模型在多任務(wù)階段泛化能力,本文將采用平均mean(·)池化和最大max(·)池化級(jí)聯(lián)方式將嵌入序列轉(zhuǎn)化為d維特征向量f.經(jīng)過(guò)平均池化提取的特征能抓取輸入數(shù)據(jù)中每一個(gè)Token的平均響應(yīng),而最大池化提取的特征能抓取輸入數(shù)據(jù)中每一個(gè)Token的最大響應(yīng).經(jīng)過(guò)實(shí)驗(yàn)證明平均池化特征和最大池化特征融合使模型具有更好的泛化能力.特征池化方式如圖2所示,特征提取過(guò)程見(jiàn)式(2).
f=mean(h)+max(h)
(2)
提取出來(lái)的特征f用于下游任務(wù),如分類(lèi)回歸等任務(wù).通常各個(gè)任務(wù)都作為單獨(dú)模型去訓(xùn)練.對(duì)有些任務(wù),由于目標(biāo)函數(shù)的局限性,深層網(wǎng)絡(luò)訓(xùn)練往往會(huì)存在欠擬合.比如,通過(guò)法律文書(shū)預(yù)測(cè)刑期,側(cè)重了樣本的局部特征,使得單模型的訓(xùn)練很難進(jìn)行有效收斂,而B(niǎo)ERT的使用能有效緩解這一問(wèn)題.進(jìn)一步地,多任務(wù)學(xué)習(xí)目標(biāo)之間通常都有相關(guān)性,不同任務(wù)之間有著相互促進(jìn)的作用,模型可以利用多個(gè)相關(guān)任務(wù)之間有用信息來(lái)提升模型表現(xiàn).模型聯(lián)合多任務(wù)學(xué)習(xí)訓(xùn)練過(guò)程如圖2所示.
圖2 MTL-BERT模型架構(gòu)Fig.2 Architecture of MTL-BERT model
多任務(wù)學(xué)習(xí)所考慮的是如何實(shí)現(xiàn)各個(gè)任務(wù)上的最優(yōu).一般地,可以通過(guò)加權(quán)線(xiàn)性累加的方式將多個(gè)任務(wù)統(tǒng)合成一個(gè).
L(W,α1,α2)=α1L1(W,W1)+α2L2(W,W2)+b
(3)
這里,L1(W,W1)為回歸問(wèn)題的損失,而L2(W,W2)為多標(biāo)簽分類(lèi)問(wèn)題的損失,α為任務(wù)間的權(quán)重,b為偏置項(xiàng).上述方法是可解釋的,權(quán)重越大,說(shuō)明對(duì)應(yīng)任務(wù)的貢獻(xiàn)越大,反之亦然.此外,模型的性能極為依賴(lài)權(quán)重的選擇,但同時(shí)這些超參數(shù)非常難以調(diào)優(yōu),尤其在深度學(xué)習(xí)背景下.
任務(wù)本身具有不確定性,這源自于模型輸出和真實(shí)標(biāo)簽之間存在本質(zhì)的噪聲.在多任務(wù)背景下,這種不確定性亦可以表示各個(gè)任務(wù)間的權(quán)重,這一點(diǎn)將在后文做進(jìn)一步論述.并且,可預(yù)見(jiàn)的是這一不確定性對(duì)不同任務(wù)是固有的,說(shuō)明了存在一組超參數(shù)滿(mǎn)足最優(yōu)范式.
論文從概率模型思想出發(fā),針對(duì)文本中的回歸預(yù)測(cè)和多標(biāo)簽分類(lèi)任務(wù),提出一種多任務(wù)之間權(quán)重學(xué)習(xí)方法.本章節(jié)是該定理的證明:
正態(tài)分布概率密度函數(shù)如下所示:
(4)
Y1=FW,W1(x)+ε
(5)
其中ε為殘差,由式(5)可得:
ε=Y1-FW,W1(x)
(6)
(7)
將式(4)帶入式(7)可得:
(8)
對(duì)式(8)求對(duì)數(shù)之后整理可得:
(9)
式(9)中l(wèi)og(Y1|FW,W1(x))是回歸任務(wù)的損失值,可以看出回歸任務(wù)的損失正比關(guān)系.
在多標(biāo)簽分類(lèi)任務(wù)中我們通常將模型的輸出壓縮到sigmoid函數(shù)中去,那么分類(lèi)模型的概率則可以寫(xiě)成式(10)所示:
p(Y2|FW,W2(x))=sigmoid(FW,W2(x))
(10)
Y2為多標(biāo)簽分類(lèi)模型輸出值.兩個(gè)任務(wù)條件概率應(yīng)該如下所示:
p(Y1,Y2|FW,W2(x))=p(Y1|FW,W2(x))·p(Y2|FW,W2(x))
(11)
對(duì)于神經(jīng)網(wǎng)絡(luò)每一個(gè)節(jié)點(diǎn)使用sigmoid函數(shù)進(jìn)行激活.分類(lèi)模型輸出符合高斯分布.根據(jù)式(9)可得出回歸任務(wù)的損失系數(shù).又因?yàn)榉诸?lèi)模型輸出符合高斯分布,同理我們定義我們的損失函數(shù)為:
(12)
我們采用數(shù)據(jù)集CAIL2018(1)https://github.com/thunlp/CAIL進(jìn)行實(shí)驗(yàn),該數(shù)據(jù)集共有 187,100 篇中文法律文書(shū),這些文書(shū)均為中國(guó)裁判文書(shū)網(wǎng)公開(kāi)的法律判決書(shū).實(shí)驗(yàn)中,我們將訓(xùn)練集設(shè)置為154,592 篇,測(cè)試集設(shè)置為32,508篇,驗(yàn)證集設(shè)置為17,131篇.表1給出一些樣本實(shí)例,其中罪名預(yù)測(cè)共有202種標(biāo)簽,刑期單位為月.
表1 數(shù)據(jù)集樣本實(shí)例Table 1 Dataset sample instance
考慮到本研究包括多標(biāo)簽分類(lèi)和回歸兩個(gè)任務(wù),所以有兩個(gè)方面評(píng)價(jià)指標(biāo)需要指定.多標(biāo)簽分類(lèi)任務(wù)中通常使用兩種評(píng)價(jià)指標(biāo):微平均F1值(Micro-F1-measur)和宏平均F1值(Macro-F1-measure);回歸任務(wù)的評(píng)價(jià)指標(biāo)多采用預(yù)測(cè)值和真實(shí)值之間誤差值.
在給出微平均F1值和宏平均F1值之前,我們先把分類(lèi)問(wèn)題預(yù)測(cè)結(jié)果分為3類(lèi):True Positive(TP),F(xiàn)alse Positive(FP)和False Negative(FN).TP代表真陽(yáng)性,預(yù)測(cè)為正實(shí)際也為正;FP代表假陽(yáng)性,預(yù)測(cè)為正實(shí)際為負(fù);FN代表假陰性,預(yù)測(cè)為負(fù)實(shí)際為正.
精確率的定義為:
(13)
召回率的定義為:
(14)
F1值是精確率和召回率的調(diào)和平均數(shù):
(15)
微平均F1值是在計(jì)算出所有類(lèi)別的精確率和召回率的基礎(chǔ)上,計(jì)算出來(lái)的F1值:
(16)
對(duì)每一個(gè)類(lèi)別的F1值求平均稱(chēng)為宏觀(guān)情況下的F1值:
(17)
從式(16)和式(17)也可以看出微平均F1值受到高頻類(lèi)別影響較大,而宏平均F1值更容易受到低頻類(lèi)別影響.微觀(guān)F1值越大表明模型在常見(jiàn)類(lèi)別標(biāo)簽中的預(yù)測(cè)精度越高,模型的性能越好.宏觀(guān)F1值越大表明模型在稀有類(lèi)別比標(biāo)簽中的預(yù)測(cè)精度越高.
回歸任務(wù)評(píng)價(jià)指標(biāo):定義模型預(yù)測(cè)出的刑期為lp, 真實(shí)刑期為la,則定義刑期預(yù)測(cè)的評(píng)價(jià)指標(biāo)為:
E(f;W)=|log(lp+1)-log(la+1)|
(18)
評(píng)價(jià)指標(biāo)E(f;W)用來(lái)描述回歸預(yù)測(cè)值和真實(shí)值之間的差距,該指標(biāo)越小說(shuō)明模型回歸預(yù)測(cè)越接近真實(shí)值.模型性能越好.
論文使用哈工大訊飛聯(lián)合發(fā)布的全詞覆蓋中文BERT預(yù)訓(xùn)練模型(2)https://github.com/ymcui/Chinese-BERT-wwm.該模型采用維基百科作為原始語(yǔ)料,同時(shí)使用簡(jiǎn)體和繁體中文進(jìn)行預(yù)訓(xùn)練.數(shù)據(jù)清洗之后,使用1,360萬(wàn)條數(shù)據(jù)作為輸入.使用全詞MASK的方式進(jìn)行模型預(yù)訓(xùn)練.
實(shí)驗(yàn)環(huán)境:本研究進(jìn)行實(shí)驗(yàn)的操作系統(tǒng)是Windows10,該設(shè)備配備CPU為Core(TM)i7-8700KCPU@ 3.70GHz,內(nèi)存為64.0 GB以及兩塊NVIDIA GeForce 1080Ti顯卡,然后在深度學(xué)習(xí)框架Keras-GPU 2.2.4下使用Python3.6編程完成實(shí)驗(yàn).
數(shù)據(jù)預(yù)處理:為保證原始數(shù)據(jù)中輸入特征差異性,對(duì)原始數(shù)據(jù)中出現(xiàn)的數(shù)字做量化替換.金額中:0~1000元替換為A,1000~4000元替換為B.重量中:0~10克替換為H,10~20克替換為I.酒精濃度:0~20mg/100ml替換為O,20~80mg/100ml替換為P.
實(shí)驗(yàn) 1.單任務(wù)模型和多任務(wù)模型性能比較
我們使用單任務(wù)模型訓(xùn)練4個(gè)深度學(xué)習(xí)模型,用以和MTL-BERT模型進(jìn)行對(duì)比.Baseline模型參數(shù)設(shè)置如表2所示.
表2 Baseline 模型的參數(shù)設(shè)置Table 2 Parameter setting of the Baseline model
FastText:FastText是一種簡(jiǎn)單高效的文本特征提取方法[15].FastText 將句子表示成詞袋模型,使用N-grams獲取文本特征信息.
LSTM:LSTM模型是一種RNN變體,可以用來(lái)處理序列長(zhǎng)度變化的數(shù)據(jù)[16,17].LSTM考慮上下文關(guān)系,從而豐富文本的表達(dá).
TextCNN:TextCNN是具有多個(gè)過(guò)濾器,能很好捕捉文本信息局部相關(guān)性[18].可以用來(lái)提取句子中類(lèi)似N-grams的關(guān)鍵信息.
Sigle-BERT:預(yù)訓(xùn)練BERT模型作為特征提取器,對(duì)預(yù)訓(xùn)練的BERT模型進(jìn)行微調(diào).
實(shí)驗(yàn)結(jié)果如表3所示.從結(jié)果中可以看出,單任務(wù)BERT模型在文本分類(lèi)和回歸模型中有出色表現(xiàn).任務(wù)1中兩個(gè)指標(biāo)體現(xiàn)模型兩個(gè)方面表現(xiàn)能力,微觀(guān)F1值體現(xiàn)模型對(duì)出現(xiàn)次數(shù)較多的標(biāo)簽預(yù)測(cè)能力.宏觀(guān)F1值則更能體現(xiàn)模型對(duì)出現(xiàn)次數(shù)較少的標(biāo)簽預(yù)測(cè)命中的情況.MTL-BERT模型在任務(wù)1中兩個(gè)指標(biāo)的表現(xiàn)都有所提升,任務(wù)2的回歸問(wèn)題有明顯提升.可以看出多任務(wù)模型對(duì)單個(gè)任務(wù)的預(yù)測(cè)能力有互補(bǔ)效果,能提升每個(gè)任務(wù)的性能.
表3 Baseline模型和MTL-BERT性能比較Table 3 Comparison of baselin model and MTL-BERT
實(shí)驗(yàn) 2.自適應(yīng)損失權(quán)重對(duì)模型性能的影響
為驗(yàn)證子任務(wù)損失權(quán)重對(duì)模型性能的影響.在實(shí)驗(yàn)2中手動(dòng)設(shè)置3組不同損失權(quán)重和MTL-BERT進(jìn)行對(duì)比.子任務(wù)損失權(quán)重分別設(shè)置為α1,α2=0.5,0.5、α1,α2=0.4,0.6和α1,α2=0.6,04.子任務(wù)對(duì)應(yīng)損失權(quán)重設(shè)置越大,表明該任務(wù)對(duì)整個(gè)模型貢獻(xiàn)就越大.從表4中可以看出,當(dāng)我們手動(dòng)設(shè)置某項(xiàng)子任務(wù)損失權(quán)重所占比例較大時(shí),會(huì)讓模型在該任務(wù)上的得分偏高而在另一個(gè)子任務(wù)上的得分偏低.MTL-BERT模型使用自適應(yīng)損失權(quán)重方法,能夠自主的找到任務(wù)損失權(quán)重之間的平衡.從而讓模型能在各個(gè)子任務(wù)上達(dá)到最佳性能.
表4 自適應(yīng)損失權(quán)重對(duì)模型性能的影響Table 4 Influence of adaptive loss weight on model performance
實(shí)驗(yàn) 3.采用不同的共享層多任務(wù)學(xué)習(xí)性能對(duì)比
為便于觀(guān)察,圖3中任務(wù)2評(píng)價(jià)指標(biāo)E(f;W)得分是乘以100之后的結(jié)果.為驗(yàn)證BERT作為共享層對(duì)多任務(wù)學(xué)習(xí)的貢獻(xiàn),實(shí)驗(yàn)3對(duì)比了采用前饋神經(jīng)網(wǎng)絡(luò)作為共享層的多任務(wù)學(xué)習(xí)模型(MTL-FNN)和采用BERT作為共享層的多任務(wù)學(xué)習(xí)模型(MTL-BERT)的實(shí)驗(yàn)結(jié)果.在圖3中可以看出無(wú)論是任務(wù)1中的微觀(guān)F1值、宏觀(guān)F1值還是任務(wù)2中的E(f;W)值,MTL-BERT模型都要比MTL-FNN模型有較高的性能提升.尤其是宏觀(guān)的F1值,MTL-BERT效果提升更為明顯.通過(guò)5.2節(jié)內(nèi)容可知,宏觀(guān)的F1值更能體現(xiàn)模型對(duì)低頻類(lèi)別的預(yù)測(cè)能力.模型對(duì)低頻類(lèi)別的預(yù)測(cè)能力越強(qiáng),表明模型具有更好的泛化能力.實(shí)驗(yàn)結(jié)果證明了MTL-BERT模型具有更好的性能以及更泛化.
圖3 不同共享層多任務(wù)學(xué)習(xí)性能對(duì)比Fig.3 Comparison with differrnt shared layer
在自然語(yǔ)言處理任務(wù)中很多子問(wèn)題之間具有相關(guān)性.把多個(gè)相關(guān)任務(wù)放在一起去學(xué)習(xí)對(duì)模型獲取任務(wù)之間豐富關(guān)聯(lián)信息有著極大貢獻(xiàn).設(shè)置各個(gè)任務(wù)對(duì)模型的貢獻(xiàn)一直以來(lái)都是一個(gè)值得研究的問(wèn)題.本文使用BERT去提取文本數(shù)據(jù)中的特征信息,從概率學(xué)的角度出發(fā),根據(jù)模型預(yù)測(cè)結(jié)果的方差,針對(duì)多標(biāo)簽分類(lèi)和回歸任務(wù),為模型提供動(dòng)態(tài)損失權(quán)重.將難以學(xué)習(xí)的多任務(wù)之間損失權(quán)重也轉(zhuǎn)化成為一個(gè)可學(xué)習(xí)參數(shù).實(shí)驗(yàn)結(jié)果顯示這種方法具有更好的性能.未來(lái)我們將考慮更多種類(lèi)型任務(wù)聯(lián)合,嘗試?yán)斫舛嗳蝿?wù)學(xué)習(xí)任務(wù)之間的層次結(jié)構(gòu)、相似性關(guān)系;充分去掌握任務(wù)之間的關(guān)系對(duì)多任務(wù)學(xué)習(xí)模型性能的影響;旨在提高多任務(wù)模型的泛化能力.