彭 雪 李正華 張 民
(蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 江蘇 蘇州 215006)
依存句法分析作為自然語(yǔ)言處理的基礎(chǔ)研究任務(wù),主要用于刻畫句子中詞語(yǔ)與詞語(yǔ)之間的依存關(guān)系。給定一個(gè)自然語(yǔ)句S=W0W1…Wn,依存句法結(jié)構(gòu)可以描述為d={(h,m,l),0≤h≤n,1≤m≤n,l∈L},(h,m,l)是一條從頭節(jié)點(diǎn)Wh指向修飾詞Wm的依存弧,依存關(guān)系為l。
得益于神經(jīng)網(wǎng)絡(luò)較好的特征表示能力,依存句法分析取得了巨大的進(jìn)步[1-4]。但是,當(dāng)測(cè)試的文本與訓(xùn)練文本差別較大時(shí),解析性能迅速下降。近年來(lái),隨著網(wǎng)絡(luò)的迅速發(fā)展,出現(xiàn)了大量的由用戶自己撰寫的文本。這些文本往往不符合常規(guī)的語(yǔ)法規(guī)范,與訓(xùn)練文本差異較大,進(jìn)一步加大了跨領(lǐng)域分析問(wèn)題的難度,成為自然語(yǔ)言處理的主要挑戰(zhàn)。
提高跨領(lǐng)域分析性能最直接有效的方法是標(biāo)注大量的目標(biāo)領(lǐng)域數(shù)據(jù)。但數(shù)據(jù)標(biāo)注是一項(xiàng)非常復(fù)雜的工作,需要花費(fèi)大量的時(shí)間、人力和金錢。與英語(yǔ)相比,漢語(yǔ)的語(yǔ)序更加靈活,缺省情況更多,因此標(biāo)注起來(lái)更加復(fù)雜。由于缺乏標(biāo)注數(shù)據(jù),前人的工作多集中在無(wú)監(jiān)督跨領(lǐng)域方法的研究,即訓(xùn)練集中不包含目標(biāo)領(lǐng)域的標(biāo)注數(shù)據(jù)集,但是該方法一直沒(méi)有取得較大的進(jìn)展。
隨著語(yǔ)言模型迅速發(fā)展,ELMo(Embeddings from Language Models)[5]、BERT(Bidirectional Encoder Representations from Transformers)[6]等通過(guò)其極強(qiáng)的上下文信息學(xué)習(xí)能力,已經(jīng)幫助很多數(shù)據(jù)驅(qū)動(dòng)的自然語(yǔ)言處理任務(wù)提高性能[7-9]。在使用語(yǔ)言模型時(shí),一方面,可以通過(guò)大規(guī)模的通用文本預(yù)訓(xùn)練語(yǔ)言模型,使其適應(yīng)大多數(shù)的自然語(yǔ)言處理任務(wù);另一方面,可以使用其他數(shù)據(jù)對(duì)語(yǔ)言模型進(jìn)行微調(diào),以適應(yīng)不同的任務(wù)需求,進(jìn)一步提升性能。因此,通過(guò)語(yǔ)言模型從無(wú)標(biāo)注數(shù)據(jù)中學(xué)習(xí)更多領(lǐng)域相關(guān)的特征,來(lái)幫助提高跨領(lǐng)域依存句法分析性能也是一個(gè)有效的方法。
本文基于三個(gè)較大規(guī)模的目標(biāo)領(lǐng)域[10],主要工作如下:
(1) 提出了一種簡(jiǎn)單而有效的領(lǐng)域嵌入方法,將源領(lǐng)域與目標(biāo)領(lǐng)域訓(xùn)練集有效的結(jié)合。
(2) 在數(shù)據(jù)合并過(guò)程中,使用語(yǔ)料庫(kù)加權(quán)策略。選擇不同權(quán)重,在驗(yàn)證集的最高實(shí)驗(yàn)結(jié)果和最低實(shí)驗(yàn)結(jié)果之間相差約1%。
(3) 將BERT應(yīng)用到跨領(lǐng)域依存句法分析任務(wù)中,并通過(guò)微調(diào)方法從大規(guī)模的目標(biāo)領(lǐng)域無(wú)標(biāo)注數(shù)據(jù)中學(xué)習(xí)有效信息。
由于缺乏充足的標(biāo)注數(shù)據(jù),前人將研究重心放在無(wú)監(jiān)督領(lǐng)域遷移方法,重點(diǎn)研究如何從大規(guī)模的無(wú)標(biāo)注目標(biāo)領(lǐng)域數(shù)據(jù)中抽取出有效的特征。
自訓(xùn)練方法(Self-Training)作為典型的無(wú)監(jiān)督領(lǐng)域遷移方法,在成分句法分析[11]和依存句法分析[12]的跨領(lǐng)域遷移任務(wù)中都被證明具有一定的作用。Yu等[13]在NLPCC-2019跨領(lǐng)域依存句法分析評(píng)測(cè)任務(wù)中使用基于模型融合的自訓(xùn)練方法,首先根據(jù)不同的隨機(jī)種子,利用標(biāo)注數(shù)據(jù)訓(xùn)練了三個(gè)句法分析器;進(jìn)而利用三個(gè)句法分析器解析目標(biāo)領(lǐng)域的無(wú)標(biāo)注數(shù)據(jù),并從中隨機(jī)選擇部分?jǐn)?shù)據(jù)加入原始的訓(xùn)練數(shù)據(jù)重新訓(xùn)練三個(gè)句法分析器;重復(fù)操作一定的次數(shù)。Sagae等[14]在CoNLL-2007依存句法跨領(lǐng)域分析任務(wù)中使用聯(lián)合訓(xùn)練(Co-Training)的方法并取得最好的性能。
在多源跨領(lǐng)域分析任務(wù)中,已標(biāo)注的訓(xùn)練數(shù)據(jù)中包含多個(gè)領(lǐng)域,由于各個(gè)領(lǐng)域之間存在較大的差異,在一定程度上會(huì)影響分析性能。因此,當(dāng)給定一個(gè)目標(biāo)領(lǐng)域,如何能夠?qū)⑵渑c源領(lǐng)域數(shù)據(jù)有效結(jié)合成為很多學(xué)者研究的重點(diǎn)。McClosky等[15]首次將該場(chǎng)景應(yīng)用到成分句法分析中,他們首先使用一個(gè)回歸模型測(cè)試跨領(lǐng)域的性能,并根據(jù)得到的性能合并在每個(gè)源領(lǐng)域上單獨(dú)訓(xùn)練的模型。Guo等[16]基于多任務(wù)學(xué)習(xí)框架,使用專家混合的方法,采用元訓(xùn)練方法來(lái)計(jì)算源領(lǐng)域和目標(biāo)領(lǐng)域之間的差異,并用于情感分類和詞性標(biāo)注任務(wù)。
當(dāng)訓(xùn)練數(shù)據(jù)中存在小規(guī)模的目標(biāo)領(lǐng)域標(biāo)注數(shù)據(jù)時(shí),對(duì)跨領(lǐng)域分析任務(wù)可以起到非常大的作用。
文獻(xiàn)[17]介紹了一種簡(jiǎn)單而有效的特征增強(qiáng)方法,在很多序列標(biāo)注任務(wù)上都取得較好的性能。其主要思路是通過(guò)對(duì)每個(gè)領(lǐng)域的每個(gè)特征加上一個(gè)虛領(lǐng)域(共享領(lǐng)域)特征來(lái)區(qū)分某個(gè)領(lǐng)域的特征和共享特征。Finkel等[18]在其方法的基礎(chǔ)上進(jìn)一步提出了層次貝葉斯方法,這兩項(xiàng)工作可以理解為基于傳統(tǒng)離散特征機(jī)器學(xué)習(xí)框架的多任務(wù)學(xué)習(xí)方法。
Kim等[19]提出了專家混合方法用于跨領(lǐng)域意圖分類任務(wù),與無(wú)監(jiān)督領(lǐng)域遷移中Guo等提出的方法相比,他們使用少量的目標(biāo)領(lǐng)域數(shù)據(jù)訓(xùn)練了一個(gè)注意力模塊,用于計(jì)算目標(biāo)領(lǐng)域與源領(lǐng)域的差異。
Flannery等[20]基于主動(dòng)學(xué)習(xí)的方法,標(biāo)注了一批局部標(biāo)注數(shù)據(jù),即只標(biāo)注句子中的部分詞語(yǔ),極大地降低了標(biāo)注成本。類似地,Joshi等[21]標(biāo)注了一批局部標(biāo)注的目標(biāo)領(lǐng)域數(shù)據(jù)用于成分句法分析。兩個(gè)工作均取得較好的結(jié)果,同時(shí)也說(shuō)明了目標(biāo)領(lǐng)域的標(biāo)注數(shù)據(jù)對(duì)于跨領(lǐng)域分析的重要性。主流的上下位關(guān)系自動(dòng)獲取方法可按數(shù)據(jù)。
本文使用目前性能最好的基于圖的雙仿射神經(jīng)網(wǎng)絡(luò)依存句法分析器(Biaffine Parser)[2]作為基準(zhǔn)模型。該模型首先利用雙向長(zhǎng)短期記憶網(wǎng)絡(luò)(Bi-directional Long Short-Term Memory,Bi-LSTM)對(duì)句子進(jìn)行編碼;進(jìn)而利用多層感知機(jī)(Multi-Layer Perceptron,MLP)對(duì)Bi-LSTM的輸出降維,進(jìn)行二次編碼;最后使用雙仿射變換(Biaffine)計(jì)算得分,找出一棵最優(yōu)的依存句法樹。
本文依存句法分析主要完成兩個(gè)任務(wù):① 預(yù)測(cè)詞語(yǔ)的頭節(jié)點(diǎn);② 預(yù)測(cè)與頭節(jié)點(diǎn)之間的依存關(guān)系標(biāo)簽。頭節(jié)點(diǎn)與依存關(guān)系標(biāo)簽的分?jǐn)?shù)計(jì)算過(guò)程類似,由于篇幅有限,下面以預(yù)測(cè)詞語(yǔ)的頭節(jié)點(diǎn)為例介紹分?jǐn)?shù)的計(jì)算過(guò)程。如圖1所示。
圖1 依存弧分?jǐn)?shù)計(jì)算模型圖
給定一個(gè)自然語(yǔ)句S=W0W1…Wn,Wi表示句子中的第i(i∈[1,n])個(gè)詞語(yǔ),n表示句子中的詞數(shù)。首先將第i個(gè)詞語(yǔ)的詞向量ewi和詞性向量eti拼接起來(lái)得到向量Xi,作為模型的輸入。其計(jì)算式表示為:
Xi=ewi?eti
(1)
將句子映射為向量輸入到模型后,利用Bi-LSTM對(duì)句子進(jìn)行雙向編碼。將第i個(gè)詞語(yǔ)的前向LSTM和反向LSTM最后一個(gè)隱藏層的輸出Hfi、Hbi拼接后得到向量hi,該向量中集成了詞語(yǔ)的上下文信息。其計(jì)算式表示為:
hi=Hfi?Hbi
(2)
向量hi中包含了能夠預(yù)測(cè)當(dāng)前詞語(yǔ)所有可能的頭結(jié)點(diǎn)、依存關(guān)系標(biāo)簽和其他與當(dāng)前決策無(wú)關(guān)的信息。這些冗余的信息不僅降低了計(jì)算的速度,同時(shí)增加了過(guò)擬合的風(fēng)險(xiǎn)。因此,在計(jì)算分?jǐn)?shù)之前,模型利用MLP對(duì)hi進(jìn)行降維處理,去除這些多余信息。其計(jì)算式表示為:
(3)
(4)
式中:MLPH和MLPD分別處理該詞語(yǔ)作為依存詞和作為頭節(jié)點(diǎn)情況。
最后,利用雙仿射變換計(jì)算依存弧得分,其計(jì)算式表示為:
(5)
結(jié)合源領(lǐng)域和目標(biāo)領(lǐng)域數(shù)據(jù)最直接的方法是將多個(gè)訓(xùn)練數(shù)據(jù)集直接合并為一個(gè)數(shù)據(jù)集。該方法并不區(qū)分源領(lǐng)域數(shù)據(jù)集和目標(biāo)領(lǐng)域數(shù)據(jù)集,合并后直接用于訓(xùn)練基礎(chǔ)的依存句法分析器。這種方法的主要缺點(diǎn)是模型對(duì)源領(lǐng)域和目標(biāo)領(lǐng)域使用相同的參數(shù),無(wú)法充分學(xué)習(xí)特定于某個(gè)領(lǐng)域的特征。當(dāng)源領(lǐng)域與目標(biāo)領(lǐng)域數(shù)據(jù)差異過(guò)大時(shí),源領(lǐng)域數(shù)據(jù)反而會(huì)降低分析性能。
Stymne等[22]提出了一種樹庫(kù)嵌入方法,通過(guò)對(duì)一種語(yǔ)言使用多個(gè)異構(gòu)樹庫(kù)(遵循不同的標(biāo)注規(guī)范)來(lái)提升性能。參考該工作,我們?cè)诿總€(gè)詞語(yǔ)的向量表示后面拼接一個(gè)額外的領(lǐng)域特征向量作為模型的輸入。如圖2所示,edomain用于表示該句子所在的領(lǐng)域。
圖2 領(lǐng)域嵌入模型圖
與直接合并相比,該方法中大多數(shù)參數(shù)是共享的,模型仍然可以學(xué)習(xí)通用特征。同時(shí),模型也可以通過(guò)領(lǐng)域特征更好地學(xué)習(xí)特定于源領(lǐng)域與目標(biāo)領(lǐng)域各自的特征,解決了直接合并時(shí)源領(lǐng)域與目標(biāo)領(lǐng)域差異過(guò)大帶來(lái)的問(wèn)題。
在上述兩種方法中,由于源領(lǐng)域和目標(biāo)領(lǐng)域的標(biāo)注數(shù)據(jù)規(guī)模通常差異較大,在訓(xùn)練模型時(shí),可能出現(xiàn)目標(biāo)領(lǐng)域的標(biāo)注數(shù)據(jù)被源領(lǐng)域數(shù)據(jù)淹沒(méi)的情況。為了避免出現(xiàn)該問(wèn)題,本文使用簡(jiǎn)單的語(yǔ)料庫(kù)加權(quán)策略[23]。
在每輪迭代之前,從目標(biāo)領(lǐng)域和源領(lǐng)域訓(xùn)練集中隨機(jī)抽取比例為1 ∶M的訓(xùn)練數(shù)據(jù),將選出的標(biāo)注數(shù)據(jù)合并后隨機(jī)打亂,作為該輪迭代的訓(xùn)練集。M作為超參數(shù),在驗(yàn)證集上選擇使模型性能最高的值。
除了使用目標(biāo)領(lǐng)域的標(biāo)注數(shù)據(jù)外,如何利用相對(duì)容易獲得的大規(guī)模無(wú)標(biāo)注數(shù)據(jù)幫助提升跨領(lǐng)域分析性能也是一個(gè)值得探討的問(wèn)題。最近提出的雙向語(yǔ)言模型BERT由巨大的數(shù)據(jù)、模型和計(jì)算開銷訓(xùn)練而成。其基于雙向的Transform編碼,通過(guò)Masked Language Model(MLM)和Next Sentence Prediction(NSP)兩個(gè)無(wú)監(jiān)督任務(wù)訓(xùn)練模型,實(shí)現(xiàn)了真正意義上的上下文相關(guān)的信息學(xué)習(xí),具有強(qiáng)大的表征能力。
本文使用以下兩種方法將BERT應(yīng)用到跨領(lǐng)域依存句法分析任務(wù)中:
(1) 使用預(yù)訓(xùn)練BERT模型獲得詞表示。谷歌發(fā)布了一個(gè)使用大規(guī)模無(wú)標(biāo)注數(shù)據(jù)預(yù)訓(xùn)練的中文BERT模型。該模型訓(xùn)練數(shù)據(jù)主要來(lái)自維基百科,領(lǐng)域覆蓋全面,較為通用。這里直接使用該模型獲得詞表示。
(2) 利用目標(biāo)領(lǐng)域無(wú)標(biāo)注數(shù)據(jù)微調(diào)BERT。本文選取的目標(biāo)領(lǐng)域具有較強(qiáng)的領(lǐng)域特色,為了使BERT獲得的詞表示中包含更多目標(biāo)領(lǐng)域的有效信息,我們使用目標(biāo)領(lǐng)域的無(wú)標(biāo)注數(shù)據(jù)和訓(xùn)練集微調(diào)語(yǔ)言模型。
微調(diào)語(yǔ)言模型時(shí),將模型參數(shù)初始化為預(yù)訓(xùn)練中文BERT模型的參數(shù)。利用目標(biāo)領(lǐng)域的無(wú)標(biāo)注數(shù)據(jù)和訓(xùn)練集迭代訓(xùn)練模型3次,將模型最后四層的輸出加權(quán)平均后作為詞表示,代替之前使用的預(yù)訓(xùn)練詞向量作為模型的輸入。即將式(1)中的ewi替換為ebi,如式(6)所示,ebi為通過(guò)BERT模型獲得的詞向量。
Xi=ebi?eti
(6)
另外,對(duì)于中文,給定一個(gè)自然語(yǔ)句,BERT模型為句子中的每個(gè)字生成一個(gè)字向量。而依存句法分析是基于詞語(yǔ)的任務(wù)。因此,這里將每個(gè)詞語(yǔ)中第一個(gè)字符的字向量作為該詞語(yǔ)的詞向量表示。
本文選取了一個(gè)源領(lǐng)域和三個(gè)目標(biāo)領(lǐng)域研究跨領(lǐng)域依存句法分析任務(wù)。其中源領(lǐng)域?yàn)槠胶庹Z(yǔ)料(Balanced Corpus,BC),數(shù)據(jù)主要來(lái)源于人民日?qǐng)?bào)等較為規(guī)范的文本。三個(gè)目標(biāo)領(lǐng)域分別為產(chǎn)品評(píng)論(Comments Products,PC)、產(chǎn)品博客(Product Blogs,PB)和“誅仙”小說(shuō)(ZX)數(shù)據(jù)。數(shù)據(jù)均由Peng等[10]在NLPCC-2019舉辦的依存句法跨領(lǐng)域分析評(píng)測(cè)任務(wù)中提供。表1中統(tǒng)計(jì)了各領(lǐng)域的句子數(shù)。
表1 數(shù)據(jù)統(tǒng)計(jì)
1) 評(píng)級(jí)標(biāo)準(zhǔn)。本文使用目前常用的兩種依存句法分析評(píng)價(jià)指標(biāo):
(1) 只考慮依存弧預(yù)測(cè)是否正確(Unlabeled Attachment Score,UAS),其計(jì)算式為:
(7)
(2) 除了考慮依存弧,還要考慮依存標(biāo)簽是否預(yù)測(cè)正確(Labeled Attachment Score,LAS),其計(jì)算式為:
(8)
2) 參數(shù)設(shè)置。本文實(shí)驗(yàn)基于PyTorch重現(xiàn)的Biaffine Parser,模型中向量維度、學(xué)習(xí)率等超參數(shù)均參考Dozat等[2]中使用的參數(shù)。具體細(xì)節(jié)如下:每個(gè)詞的詞向量和詞性向量均為100維;Bi-LSTM的神經(jīng)元維度為400,層數(shù)為3;使用Adam優(yōu)化器,其初始的學(xué)習(xí)步長(zhǎng)為0.2,β1和β2設(shè)為0.9;使用mini-Batch方式更新參數(shù),Batch大小設(shè)為200。句法分析器最多迭代訓(xùn)練1 000輪,每輪迭代訓(xùn)練結(jié)束后在驗(yàn)證集上測(cè)試當(dāng)前模型性能,保存最優(yōu)模型。如果連續(xù)50次迭代,驗(yàn)證集的最優(yōu)LAS沒(méi)有改變,則停止訓(xùn)練。
4.3.1單一領(lǐng)域訓(xùn)練集訓(xùn)練模型
表2給出了使用單一領(lǐng)域的標(biāo)注數(shù)據(jù)訓(xùn)練的模型(Single-Model)在驗(yàn)證集上的結(jié)果??梢钥吹剑孩?使用各自領(lǐng)域訓(xùn)練的模型在對(duì)應(yīng)領(lǐng)域上性能最好,其中源領(lǐng)域數(shù)據(jù)的性能最好,三個(gè)目標(biāo)領(lǐng)域性能相對(duì)較低。主要原因是BC訓(xùn)練集規(guī)模較大,是PC、PB訓(xùn)練集規(guī)模的3倍,是ZX訓(xùn)練集的10倍。② 在源領(lǐng)域數(shù)據(jù)上訓(xùn)練的模型(BC-Model)在BC領(lǐng)域上的LAS為74.75%,但是在目標(biāo)領(lǐng)域數(shù)據(jù)上性能明顯下降。尤其是在PC數(shù)據(jù)上,LAS僅為25.64%,PB、ZX數(shù)據(jù)訓(xùn)練的模型的性能與BC-Model之間的差異相對(duì)較小,但是也有7%的差異,可見跨領(lǐng)域分析任務(wù)的重要性。
表2 單一領(lǐng)域訓(xùn)練集訓(xùn)練模型在驗(yàn)證集上的結(jié)果(%)
4.3.2源領(lǐng)域與目標(biāo)領(lǐng)域訓(xùn)練集合并訓(xùn)練模型
在將源領(lǐng)域訓(xùn)練集與目標(biāo)領(lǐng)域訓(xùn)練集合并時(shí),使用語(yǔ)料庫(kù)加權(quán)策略避免目標(biāo)領(lǐng)域訓(xùn)練集被源領(lǐng)域訓(xùn)練集淹沒(méi)。
為了選擇語(yǔ)料庫(kù)加權(quán)策略中的最優(yōu)比例,每次迭代時(shí)嘗試使用以下兩種方法:
(1) 不使用全部的目標(biāo)領(lǐng)域訓(xùn)練集,只隨機(jī)選擇其中的1 500句,并與選擇的1 500×M句源領(lǐng)域數(shù)據(jù)合并后作為本次迭代的訓(xùn)練集;
(2) 目標(biāo)領(lǐng)域訓(xùn)練集中所有數(shù)據(jù)均作為本次迭代的訓(xùn)練集。
假設(shè)目標(biāo)領(lǐng)域參與訓(xùn)練的數(shù)據(jù)為N1,源領(lǐng)域參與訓(xùn)練的數(shù)據(jù)為N2,則M為不大于N2/N1的整數(shù)。
針對(duì)以上兩種方法,本文均測(cè)試了使用不同的M,在目標(biāo)領(lǐng)域驗(yàn)證集上的性能。對(duì)比兩種方法中的最優(yōu)實(shí)驗(yàn)結(jié)果,最終選擇使用第二種方法。表3中記錄了在領(lǐng)域嵌入方法基礎(chǔ)上,使用第二種方法的實(shí)驗(yàn)結(jié)果??梢钥闯觯琍C、PB、ZX的M分別為1、2、5時(shí),在驗(yàn)證集上性能最高。
表3 源領(lǐng)域與目標(biāo)領(lǐng)域不同權(quán)重比例在驗(yàn)證集上結(jié)果(%)
表4中記錄了源領(lǐng)域與目標(biāo)領(lǐng)域標(biāo)注數(shù)據(jù)結(jié)合后訓(xùn)練的模型在驗(yàn)證集上的結(jié)果。
表4 源領(lǐng)域與目標(biāo)領(lǐng)域訓(xùn)練集合并在驗(yàn)證集上的結(jié)果(%)
Concat行是將源領(lǐng)域與目標(biāo)領(lǐng)域直接合并后的實(shí)驗(yàn)結(jié)果。與Single-Model相比,PC、PB上并沒(méi)有取得提升,甚至在PC數(shù)據(jù)上的性能略有下降,其主要原因是PC、PB數(shù)據(jù)為電商數(shù)據(jù),與BC數(shù)據(jù)差異較大,增加源領(lǐng)域數(shù)據(jù)后反而會(huì)干擾模型,使分析性能下降。而將BC與ZX數(shù)據(jù)合并后性能提高了約4%,其主要原因是ZX領(lǐng)域的訓(xùn)練集規(guī)模較小,僅有1 600。
DE行是使用領(lǐng)域嵌入方法的實(shí)驗(yàn)結(jié)果。使用領(lǐng)域嵌入方法后,每個(gè)詞語(yǔ)輸入向量中包含了該詞語(yǔ)所屬領(lǐng)域信息,模型可以學(xué)習(xí)特定于其領(lǐng)域的特征,在三個(gè)目標(biāo)領(lǐng)域上均取得了提升。
BERT行記錄的是在領(lǐng)域嵌入方法的基礎(chǔ)上,使用Google官方發(fā)布的預(yù)訓(xùn)練的中文BERT模型的結(jié)果。在三個(gè)目標(biāo)領(lǐng)域的LAS上取得了至少7%的提升。
FT行記錄的是在領(lǐng)域嵌入方法的基礎(chǔ)上,使用三個(gè)目標(biāo)領(lǐng)域的無(wú)標(biāo)注數(shù)據(jù)和訓(xùn)練集微調(diào)中文BERT模型的結(jié)果。可以看到,在PC數(shù)據(jù)上的性能提升最大,約提升1.7%。一方面是因?yàn)镻C數(shù)據(jù)的無(wú)標(biāo)注數(shù)據(jù)規(guī)模較大,約35萬(wàn);另一方面,PC數(shù)據(jù)為用戶對(duì)于商品的評(píng)論,文本不夠規(guī)范,BERT可以從其無(wú)標(biāo)注數(shù)據(jù)中學(xué)習(xí)到更多該領(lǐng)域的特定信息。
4.3.3最終結(jié)果
表5記錄了在測(cè)試集上的最終實(shí)驗(yàn)結(jié)果,與上文在驗(yàn)證集上的分析基本一致。
表5 在測(cè)試集上的結(jié)果(%)
在NLPCC-2019舉辦的依存句法跨領(lǐng)域分析評(píng)測(cè)任務(wù)中,Li等[24]取得了半監(jiān)督子任務(wù)的最好性能。他們基于子詞進(jìn)行句法分析,提出了新的解碼算法和tri-training方法,具體細(xì)節(jié)可以參考他們的論文。表5中“Li等”行記錄了其使用基于子詞的BERT方法和改進(jìn)的tri-training方法得到的最好實(shí)驗(yàn)結(jié)果。與本文直接使用簡(jiǎn)單的領(lǐng)域嵌入方法和BERT方法相比,在PB領(lǐng)域的LAS高最多,也僅高出0.4%。但與本文微調(diào)BERT后的性能相比,在PC上的LAS低最多,為1.49%。表中BC表示使用BC訓(xùn)練集訓(xùn)練的模型,Single表示使用各自領(lǐng)域的訓(xùn)練集訓(xùn)練的模型。
本文基于三個(gè)具有鮮明領(lǐng)域特色的目標(biāo)領(lǐng)域樹庫(kù),研究了半監(jiān)督依存句法跨領(lǐng)域分析問(wèn)題,提出了一種簡(jiǎn)單而有效的半監(jiān)督方法:領(lǐng)域嵌入,將源領(lǐng)域訓(xùn)練集與目標(biāo)領(lǐng)域訓(xùn)練集有效結(jié)合。在結(jié)合時(shí),使用語(yǔ)料庫(kù)加權(quán)策略控制源領(lǐng)域與目標(biāo)領(lǐng)域數(shù)據(jù)規(guī)模。此外,本文還使用無(wú)標(biāo)注數(shù)據(jù)幫助提升跨領(lǐng)域依存句法分析性能。通過(guò)微調(diào)BERT方法,從大規(guī)模無(wú)標(biāo)注數(shù)據(jù)中學(xué)習(xí)領(lǐng)域特征,在三個(gè)目標(biāo)領(lǐng)域數(shù)據(jù)上均達(dá)到目前最好的性能。
在研究半監(jiān)督跨領(lǐng)域分析方法時(shí),本文只選擇了一個(gè)源領(lǐng)域數(shù)據(jù)。根據(jù)直接合并方法的弊端,我們考慮在以后的工作中選擇多個(gè)源領(lǐng)域數(shù)據(jù),重點(diǎn)研究給定某個(gè)目標(biāo)領(lǐng)域時(shí),如何自動(dòng)地找到與其最相似的源領(lǐng)域數(shù)據(jù),從而可以從規(guī)模較大的源領(lǐng)域標(biāo)注數(shù)據(jù)中學(xué)習(xí)更多的與目標(biāo)領(lǐng)域之間的通用特征,幫助提升目標(biāo)領(lǐng)域性能。