色差甲,桑杰端珠,才讓加,慈禎嘉措
(1. 省部共建藏語智能信息處理及應(yīng)用國家重點(diǎn)實(shí)驗(yàn)室,青海 西寧 810008;2. 青海省藏文信息處理工程研究中心,青海 西寧 810008)
自動(dòng)分詞是自然語言信息處理領(lǐng)域中基礎(chǔ)研究課題之一,是在詞法分詞、句法分析、信息提取、機(jī)器翻譯、自然語言理解及生成等下游任務(wù)中需要解決的首要問題。隨著信息技術(shù)的不斷發(fā)展,藏文分詞研究已歷經(jīng)20余年(2002年陳玉忠等人提出的藏文自動(dòng)分詞方案[1]是較早的一篇研究工作),分詞技術(shù)取得了長足的進(jìn)步,也是目前藏文信息處理領(lǐng)域中比較成熟的研究任務(wù)之一。
藏文分詞研究可分為三個(gè)階段: 第一階段使用規(guī)則方法,根據(jù)藏文含有豐富的格助詞、接續(xù)詞、正字知識(shí)及基礎(chǔ)詞典等先驗(yàn)知識(shí)的支撐下提出藏文分詞方法,在藏文分詞精度方面具有較高的實(shí)用價(jià)值[1-4];第二階段使用統(tǒng)計(jì)和規(guī)則相結(jié)合的方法,主要利用條件隨機(jī)場、最大熵模型及隱馬爾可夫模型等統(tǒng)計(jì)模型來進(jìn)行綜合切分,并在此基礎(chǔ)上,針對(duì)藏文緊縮格和未登錄詞等特殊問題利用規(guī)則進(jìn)行進(jìn)一步處理[5-8];第三階段使用深度學(xué)習(xí)方法,也是目前主流的藏文分詞方法,最常用的是BiLSTM和CRF相結(jié)合的方法,其中通過添加一個(gè)特殊標(biāo)簽有效解決了緊縮格的識(shí)別問題,而不需單獨(dú)進(jìn)行處理[9-10]。
通過對(duì)現(xiàn)有藏文分詞方法進(jìn)行對(duì)比并分析后發(fā)現(xiàn),對(duì)未登錄詞無法有效識(shí)別與語料領(lǐng)域受限問題的處理技術(shù)有待進(jìn)一步提高。因此,本文針對(duì)這個(gè)問題,首先收集、整理較大規(guī)模的藏文文本語料;然后借鑒近期很受歡迎的預(yù)訓(xùn)練語言模型,對(duì)藏文也預(yù)訓(xùn)練一個(gè)藏文語言模型;其次,利用人工標(biāo)注的藏文分詞語料在該模型上進(jìn)行微調(diào);最后,實(shí)驗(yàn)結(jié)果表明,與基線模型相比,本文方法能夠緩解語料領(lǐng)域受限及未登錄詞問題,特別是對(duì)含有較多音譯詞、人名和地名詞等的語料上F1值能夠提高2.3到6個(gè)百分點(diǎn)。同時(shí),本方法在第十八屆全國少數(shù)民族語言文字信息處理學(xué)術(shù)研討會(huì)暨第二屆少數(shù)民族語言分詞技術(shù)評(píng)測中榮獲藏文分詞的第一名。
自2018年BERT[11]模型問世至今,大量的研究工作表明,在大規(guī)模無標(biāo)注文本語料上進(jìn)行預(yù)訓(xùn)練的語言模型,不僅能夠?qū)W習(xí)到詞法、句法以及語義等通用語言表征,而且還能夠緩解下游任務(wù)對(duì)數(shù)據(jù)規(guī)模不足和模型重新訓(xùn)練等問題。隨著算力的發(fā)展、深層模型的出現(xiàn)以及訓(xùn)練技能的不斷提高,預(yù)訓(xùn)練體系結(jié)構(gòu)已然從淺層發(fā)展到了深層,已經(jīng)成為目前比較主流的訓(xùn)練范式[12-13]。
本文把藏文分詞模型的訓(xùn)練分為兩個(gè)階段: 第一階段利用大規(guī)模藏文文本語料來預(yù)訓(xùn)練語言模型;第二階段利用藏文分詞語料來進(jìn)一步訓(xùn)練該模型,使得該語言模型能夠處理藏文分詞任務(wù)。其步驟如圖1所示。
圖1 藏文分詞模型的訓(xùn)練流程
UniLM[14]是微軟提出的統(tǒng)一語言模型,該模型有效結(jié)合了語義理解和生成模型,而且結(jié)構(gòu)簡約,即直接復(fù)用了BERT的結(jié)構(gòu)。該模型通過一個(gè)遮蔽機(jī)制(掩碼矩陣)有效融合了單向、雙向以及序列到序列等三種語言模型。該模型的架構(gòu)如圖2所示。
圖2 UniLM的模型架構(gòu)
從圖2中可見,UniLM的輸入方式與BERT一樣,包括詞向量、位置向量、片段向量,其骨架構(gòu)由L層Transformer的編碼器組成,其中對(duì)第1層的計(jì)算如式(1)、式(2)所示。
MultiHead(Q,K,V)=Concat(head1,…,headh)WO
(1)
Headi=Attentions(Qi,KiVi)
(2)
其中每個(gè)W都表示模型的權(quán)重;Headh表示多頭注意力機(jī)制中的第h個(gè)頭;M是自注意力機(jī)制的掩碼矩陣,主要用于遮蔽一些未能關(guān)注的信息;dk表示隱藏層的維度。
本文借鑒UniLM模型,并通過遮蔽機(jī)制充分利用現(xiàn)有的藏文文本語料。換言之,將同一個(gè)句子通過不同數(shù)據(jù)方式或不同預(yù)測任務(wù)來多次利用。顯然,本文中使用單向、雙向以及序列到序列三種不同預(yù)測任務(wù),不僅能提高文本語料的使用率,而且也能提高模型的性能及穩(wěn)定性,同時(shí)能夠防止出現(xiàn)過擬合現(xiàn)象。
在預(yù)訓(xùn)練藏文語言模型過程中,數(shù)據(jù)的預(yù)處理方式與UniLM模型的處理方式幾乎一樣。其中單向和雙向語言模型的數(shù)據(jù)預(yù)處理方式與該模型保持一致,二者的主要區(qū)別在于序列到序列語言模型的數(shù)據(jù)預(yù)處理方式,借鑒了BART[15]模型中的數(shù)據(jù)預(yù)處理方法,并結(jié)合藏文豐富的虛詞特征、動(dòng)詞時(shí)態(tài)等信息對(duì)句子進(jìn)行加噪,包括刪除和替換等操作[16],從而使每個(gè)輸入序列的左半部分是加噪后的句子,而右半部分是該句子的原句。另外,模型除了要處理上述的任務(wù)之外,還要處理句子次序預(yù)測(SOP)任務(wù),這與ALBERT[17]模型中的SOP任務(wù)一樣,而未使用BERT模型中的NSP任務(wù)[11]。
在模型訓(xùn)練過程中,單向、雙向和序列到序列等三者目標(biāo)任務(wù)是交替訓(xùn)練的。與其他預(yù)訓(xùn)練語言模型相比,該模型有如下兩個(gè)優(yōu)點(diǎn): 一是用同一個(gè)模型即可訓(xùn)練多種完全不同的目標(biāo)任務(wù);二是正因?yàn)橥粋€(gè)模型中有不同的多個(gè)目標(biāo)任務(wù),使得學(xué)習(xí)出來的模型更具泛化能力。
圖3 藏文分詞標(biāo)簽的使用示例
其中,標(biāo)簽“BEMS”跟常見的一致,分別表示開始、結(jié)束、中間、單獨(dú)等含義,然而“N”表示該詞的詞尾音節(jié)中包含緊縮格(或),需要進(jìn)一步切分,“C”表示該虛詞(之一)不能切分,且需要進(jìn)行還原處理。
本文的基線模型有兩個(gè),分別為: 基于條件隨機(jī)場的傳統(tǒng)方法TIP-LAS[7],該方法已開源,可自行進(jìn)行訓(xùn)練和測試(1)源碼地址: https://github.com/liyc7711/tip-las;另一個(gè)是基于神經(jīng)網(wǎng)絡(luò)的方法BiLSTM-CRF[9-10],本文復(fù)現(xiàn)了該方法。然而,基于預(yù)訓(xùn)練的UniLM-CRF模型作為主方法。模型參數(shù)設(shè)置情況如表1所示。
表1 參數(shù)設(shè)置情況
從表1中可知,兩個(gè)模型中所使用的詞表大小是一樣的,摘自于《藏文規(guī)范音節(jié)頻率詞典》[18],是從大規(guī)模的藏文文本中統(tǒng)計(jì)和整理的,其中只含有具有實(shí)際意義的藏文音節(jié),以及部分梵文。在此基礎(chǔ)上添加了一些特殊符號(hào),以用于表示句子的開始、結(jié)束、拼接等。UniLM-CRF的循環(huán)次數(shù)是指微調(diào)時(shí)的循環(huán)次數(shù)。通過對(duì)比可知,預(yù)訓(xùn)練模型在微調(diào)時(shí)有助于加快模型的收斂時(shí)間。然而語言模型預(yù)訓(xùn)練時(shí),耗費(fèi)了近十天的時(shí)間,但該模型非常便于遷移,能夠提升更多下游任務(wù)的性能,甚至可以遷移到少樣本或者零樣本的任務(wù)中。
本文使用的第二屆少數(shù)民族語言分詞技術(shù)評(píng)測的藏文分詞語料,是一種含有新聞、小說、教育及法律等綜合性領(lǐng)域的語料,共有27 479個(gè)句子(含有778 817個(gè)詞),其中只有訓(xùn)練集,未提供測試集。因此,在本實(shí)驗(yàn)中訓(xùn)練集和測試集以8∶2比例進(jìn)行隨機(jī)分配,并從訓(xùn)練集中刪除共同出現(xiàn)的句子。為了避免出現(xiàn)過擬合的問題,本實(shí)驗(yàn)中采用交叉驗(yàn)證法,最后取三組交叉驗(yàn)證的平均值。用精確率P、召回率R以及F1值來進(jìn)行評(píng)價(jià)和對(duì)比。各個(gè)模型的實(shí)驗(yàn)結(jié)果如表2所示。
表2 交叉驗(yàn)證的對(duì)比實(shí)驗(yàn)結(jié)果 (單位:%)
表3 校對(duì)之后的對(duì)比實(shí)驗(yàn)結(jié)果 (單位: %)
從表3可知,訓(xùn)練集的質(zhì)量對(duì)分詞結(jié)果有一定的影響。隨著訓(xùn)練集中分詞質(zhì)量的提升,對(duì)分詞模型的性能也有所提升,F1分別提高了2和1.1個(gè)百分點(diǎn)。TIP-LAS無法有效解決未登錄詞的問題。
最后為了驗(yàn)證本方法在多領(lǐng)域中的有效性,分別收集了法律、新聞、語文和自傳等領(lǐng)域差異較大的四種測試集,均有1 000個(gè)句子,并進(jìn)行人工分詞。在不同領(lǐng)域的對(duì)比結(jié)果如表4所示。
表4 不同領(lǐng)域的對(duì)比實(shí)驗(yàn)結(jié)果 (單位: %)
與基線模型BiLSTM-CRF相比,本文方法在領(lǐng)域差異較大的四個(gè)測試任務(wù)中均取得優(yōu)異的成績,F1提高了2.3到6個(gè)百分點(diǎn)。因此,預(yù)訓(xùn)練語言模型能夠緩解藏文分詞語料領(lǐng)域受限的問題。分詞實(shí)例的對(duì)比結(jié)果如表5所示。
表5 藏文分詞結(jié)果的實(shí)例對(duì)比
本文圍繞藏文分詞訓(xùn)練集的規(guī)模少、未登錄詞、以及領(lǐng)域受限等問題進(jìn)行設(shè)計(jì),其關(guān)鍵任務(wù)是如何充分利用含有46.55億字符的藏文文本語料。為了提高藏文分詞模型的效果及泛化能力,借鑒了微軟提出的統(tǒng)一語言模型UniLM[14]的框架。該模型將有效結(jié)合單向語言模型、雙向語言模型、序列到序列語言模型,以及句子次序預(yù)測任務(wù)等,并在該文本語料上進(jìn)行預(yù)訓(xùn)練。最后實(shí)驗(yàn)結(jié)果表明,與基線模型相比,我們的方法可以提升藏文分詞的正確率,F1值在MLIP2021上提高了2.5個(gè)百分點(diǎn),在新聞、語文、法律和自傳等不同領(lǐng)域上分別提高了4.6、6、4.2和2.3個(gè)百分點(diǎn),特別是對(duì)音譯詞、人名和地名等的切分正確率顯著優(yōu)于基線模型。