黃健鈺,王笳輝,段 亮,冉 苒
(1.云南大學(xué) 信息學(xué)院;2.云南省智能系統(tǒng)與計(jì)算重點(diǎn)實(shí)驗(yàn)室;3.云南大學(xué) 文學(xué)院,云南 昆明 650500)
民間文學(xué)是由人民群眾以口頭方式創(chuàng)作并傳播,且經(jīng)過不斷集體修改與加工的文學(xué),常以民間傳說、民間故事、神話詩歌等形式存在。保護(hù)民間文學(xué)有利于傳承中華民族的傳統(tǒng)文化,建立文化自信。命名實(shí)體識(shí)別(Named Entity Recognition,NER)任務(wù)旨在從非結(jié)構(gòu)化文本中判別實(shí)體并將其分類為預(yù)定義的語義類別(如人名、組織和位置)[1-2]。NER 技術(shù)可以快速識(shí)別民間文學(xué)文本中的關(guān)鍵詞匯,在信息檢索、自動(dòng)文本摘要、問題回答等[3-4]各種自然語言處理任務(wù)中扮演著重要角色,為民間文學(xué)的保存與傳播提供了技術(shù)支撐。
與通用語言文本不同,民間文學(xué)文本語言特點(diǎn)不一、形式混雜,對(duì)其進(jìn)行NER 具有一定挑戰(zhàn)。首先,民間文學(xué)文本中的一詞多義問題突出,如語句“池塘生長(zhǎng)著千瓣蓮花”中的“千瓣蓮花”表示一種物品,而語句“千瓣蓮花姑娘”中的“千瓣蓮花”表示角色“仙女”;語句“英勇的勐蘭嘎”中的“勐蘭嘎”表示一個(gè)角色,但在“勐蘭嘎部落”中則表示一個(gè)組織;“贊頌”不僅為非實(shí)體動(dòng)詞,還在語句“他們給孩子取名叫做贊頌”中表示角色。由以上示例可以看出,如何準(zhǔn)確識(shí)別民間文學(xué)文本中的實(shí)體及其具體類型十分困難,需要NER 模型能夠在給定語境中將該類多義詞判定為其正確的實(shí)體類型,從而獲得高質(zhì)量的實(shí)體數(shù)據(jù)。此外,民間文學(xué)文本中存在較多領(lǐng)域?qū)S忻~,如“俄耶”在民間文學(xué)文本中表示“阿媽”;“粑粑”表示一種餅類食物;“國(guó)哈火塔”表示“兇猛的人”;“卡”表示“毒藥”。這些領(lǐng)域名詞未采用現(xiàn)代漢語中的常見釋義,使得通用模型難以理解其語義,從而影響實(shí)體判定,導(dǎo)致識(shí)別結(jié)果無法達(dá)到預(yù)期。
傳統(tǒng)的NER 方法通常采用Word2Vec 技術(shù)[5]計(jì)算詞之間的語義相似度,將文本字符轉(zhuǎn)化為詞向量,通過BiLSTM-CRF(Bidirectional Long Short-Term Memory-Conditional Random Fields)模型進(jìn)行序列建模與特征提取并輸出預(yù)測(cè)標(biāo)簽,難以針對(duì)一詞多義問題準(zhǔn)確劃分實(shí)體類型,也難以識(shí)別具有領(lǐng)域特色的實(shí)體。BERT 預(yù)訓(xùn)練模型能夠抽取文本特征,產(chǎn)生蘊(yùn)含豐富句法與語義信息的詞嵌入[6],但一般中文BERT(Bidirectional Encoder Representation from Transformers)預(yù)訓(xùn)練模型基于維基百科與大型書籍語料訓(xùn)練獲得,在民間文學(xué)文本NER 中存在一定局限性,仍有改進(jìn)空間。
NER 技術(shù)主要分為基于規(guī)則的識(shí)別方法和基于語言模型的識(shí)別方法兩大類[7]。基于規(guī)則的識(shí)別方法要求研究者對(duì)于領(lǐng)域知識(shí)具備一定了解,能夠根據(jù)研究領(lǐng)域的知識(shí)特點(diǎn)總結(jié)出相關(guān)規(guī)則并應(yīng)用于問題的解決方法中;基于語言模型的識(shí)別方法則不要求研究者具備專業(yè)領(lǐng)域知識(shí),其將NER 作為一種序列標(biāo)注和預(yù)測(cè)任務(wù),通過對(duì)現(xiàn)有機(jī)器學(xué)習(xí)模型遷移學(xué)習(xí)后再進(jìn)行識(shí)別。
在通用領(lǐng)域,鄭玉艷等[8]利用元路徑探測(cè)種子實(shí)體間的潛在特征以擴(kuò)展實(shí)體集合,嘗試解決最優(yōu)種子的選擇問題;Ju 等[9]在BILSTM+CRF 模型上疊加平面NER 層以提取嵌套實(shí)體特征,該方法對(duì)于深層次實(shí)體的識(shí)別效果較為明顯;琚生根等[10]利用關(guān)聯(lián)記憶網(wǎng)絡(luò)結(jié)合實(shí)體標(biāo)簽信息特征以提高模型的整體分類能力,但對(duì)部分少樣本實(shí)體分類效果不明顯;Xu 等[11]在字符嵌入中添加漢字部首特征,獲得了良好的模型表現(xiàn),證實(shí)了在不同粒度中同時(shí)利用多個(gè)嵌入的有效性;武惠等[12]利用遷移學(xué)習(xí)算法緩解了模型對(duì)于少量實(shí)驗(yàn)數(shù)據(jù)學(xué)習(xí)能力不足的問題,以自動(dòng)捕獲特征的方式有效解決了領(lǐng)域知識(shí)的需求問題;Wang 等[13]利用已訓(xùn)練完成的NER 模型提取舊類數(shù)據(jù)特征以合成新數(shù)據(jù),通過實(shí)體數(shù)據(jù)增量方法提升了模型訓(xùn)練效果;Nie 等[14]提出一種對(duì)語義進(jìn)行擴(kuò)充的方法,提升了模型對(duì)于稀疏實(shí)體的識(shí)別效果。以上方法考慮了中文通用領(lǐng)域知識(shí)的特點(diǎn),通過提取漢字特征、實(shí)體結(jié)構(gòu)特征等方式提升模型性能,而民間文學(xué)中存在著大量領(lǐng)域?qū)S忻~,以上方法難以識(shí)別。
在垂直領(lǐng)域,余俊康[15]利用交叉共享結(jié)構(gòu)學(xué)習(xí)多個(gè)相關(guān)任務(wù)的特征,克服了通用模型需要大量領(lǐng)域標(biāo)注數(shù)據(jù)的問題;楊錦鋒等[16]分階段規(guī)范標(biāo)注法則,借助領(lǐng)域知識(shí)特點(diǎn)抽取中文電子病歷實(shí)體關(guān)系,但該方法對(duì)實(shí)體的一致性要求較高;Li等[17]建立臨床命名實(shí)體識(shí)別(CNER)模型,分別使用LSTM 和CRF 提取文本特征和解碼預(yù)測(cè)標(biāo)簽,同時(shí)在模型中添加醫(yī)學(xué)字典特征,可有效識(shí)別和分類電子病歷中的臨床術(shù)語;Wang 等[18]提出一個(gè)建立在BiLSTM-CRF模型基礎(chǔ)上的多任務(wù)學(xué)習(xí)方法,通過共享不同醫(yī)學(xué)NER 模型的特征提升性能;李麗雙等[19]利用大量未標(biāo)記的生物醫(yī)學(xué)語料與醫(yī)學(xué)詞典進(jìn)行半監(jiān)督學(xué)習(xí),獲得了更深層次的語義特征信息,提高了模型性能;王得賢等[20]利用自注意力機(jī)制獲取法律文書的內(nèi)部特征表示,有效確定了證據(jù)名、證實(shí)內(nèi)容和卷宗號(hào)等實(shí)體邊界。以上方法將部分領(lǐng)域知識(shí)特征應(yīng)用于NER 任務(wù)中,而民間文學(xué)文本一詞多義問題更加突出,要求模型具備更強(qiáng)的分類能力,常規(guī)模型難以滿足需求。
為此,針對(duì)民間文學(xué)文本中存在的一詞多義與實(shí)體分類問題,本文提出TBERT-BiLSTM-CRF 模型,修改傳統(tǒng)BERT 模型的嵌入層結(jié)構(gòu),增加實(shí)體類別標(biāo)簽表征,從而使詞向量包含實(shí)體類別信息,增強(qiáng)了字符對(duì)應(yīng)向量的表達(dá)能力,亦加強(qiáng)了模型對(duì)于實(shí)體類別的劃分能力。針對(duì)民間文學(xué)文本中存在較多領(lǐng)域?qū)I(yè)名詞的問題,利用未標(biāo)記的民間文學(xué)專有領(lǐng)域語料增量預(yù)訓(xùn)練BERT 模型,在一般中文BERT 模型的基礎(chǔ)上添加了民間文學(xué)文本語義特征,使得模型輸出更符合民間文學(xué)文本的語境。該模型的創(chuàng)新之處在于通過添加類型嵌入層使傳統(tǒng)BERT 模型具備表征實(shí)體標(biāo)簽的能力,通過民間文學(xué)語料增量預(yù)訓(xùn)練進(jìn)一步優(yōu)化了TBERT 模型的輸出,結(jié)合BiLSTM-CRF 模型根據(jù)序列依賴特征與標(biāo)簽約束規(guī)則輸出全局最優(yōu)結(jié)果,改善了傳統(tǒng)NER 方法對(duì)于民間文學(xué)文本NER 任務(wù)的局限性。
民間文學(xué)文本的NER 問題可被視作一項(xiàng)序列標(biāo)注任務(wù)。例如,給定一段民間文學(xué)文本序列S={w1,w2,…,wn},其中wi為序列中的第i個(gè)字符(i≥1),民間文學(xué)文本NER 任務(wù)旨在準(zhǔn)確充分地預(yù)測(cè)出該字符序列對(duì)應(yīng)的標(biāo)簽序列L={l1,l2,…,ln},以最終識(shí)別出其中所有實(shí)體的位置和類別。本文提出的TBERT-BiLSTM-CRF模型總體框架如圖1 所示,主要包括TBERT、序列依賴學(xué)習(xí)與實(shí)體識(shí)別3 個(gè)部分:①TBERT。TBERT 模型學(xué)習(xí)實(shí)體類別特征,同時(shí)利用民間文學(xué)文本語料進(jìn)行增量預(yù)訓(xùn)練進(jìn)一步優(yōu)化TBERT 模型的輸出,從而將輸入文本轉(zhuǎn)化為含有字符類型信息與文本語義信息的字符表示;②序列依賴學(xué)習(xí)。BiLSTM 模型學(xué)習(xí)序列上下文依賴特征并對(duì)序列進(jìn)行建模;③實(shí)體識(shí)別。CRF 模型對(duì)序列進(jìn)行解碼,根據(jù)標(biāo)簽依賴規(guī)則輸出全局最優(yōu)結(jié)果。
Fig.1 Main framework of TBERT-BiLSTM-CRF圖1 TBERT-BiLSTM-CRF 模型總體框架
預(yù)訓(xùn)練模型能夠挖掘文本中的深層語義知識(shí)并通過語言模型進(jìn)行表達(dá),針對(duì)民間文學(xué)領(lǐng)域的預(yù)訓(xùn)練模型,若采用通用的BERT 模型則難以恰當(dāng)?shù)乇磉_(dá)出存在著較多領(lǐng)域?qū)倜~的民間文學(xué)的語境。因此本文首先利用未經(jīng)標(biāo)記民間文學(xué)的文本語料對(duì)BERT 進(jìn)行預(yù)訓(xùn)練,使最終模型中的字符表示包含民間文學(xué)領(lǐng)域相關(guān)深層特征知識(shí)。BERT 模型采用遮蔽策略(Masked Language Modeling,MLM)以[MASK]標(biāo)記對(duì)輸入的字符隨機(jī)遮蔽,并根據(jù)其上下文語義預(yù)測(cè)被遮蔽的詞。此外,模型還針對(duì)訓(xùn)練語句進(jìn)行預(yù)測(cè)下一句任務(wù)(Next Sentence Prediction,NSP),若輸入的兩個(gè)句子為前后句關(guān)系,則使用[isNext]標(biāo)記,反之則以[notNext]標(biāo)記,通過這種方式能夠捕獲句子級(jí)別的上下文關(guān)系。
設(shè)Encoder 中的參數(shù)為θ,被遮蔽的單詞集合為M,輸出層中MLM 任務(wù)使用的參數(shù)分別為θ1,詞典為V,則模型采用負(fù)對(duì)數(shù)似然函數(shù)計(jì)算其損失。表示為:
若NSP 任務(wù)的輸出層參數(shù)為θ2,預(yù)測(cè)標(biāo)簽集合為N,則模型計(jì)算NSP 任務(wù)的損失函數(shù)表示為:
重新訓(xùn)練模型將花費(fèi)巨大開銷,因此本文采用增量訓(xùn)練方式,使用BERT 模型的初始權(quán)重,在保留通用領(lǐng)域知識(shí)的基礎(chǔ)上對(duì)模型進(jìn)行民間文學(xué)領(lǐng)域知識(shí)擴(kuò)展,從而使其融合民間文學(xué)文本的語義特征。
民間文學(xué)文本中的同一個(gè)字符可能表示不同類型的實(shí)體。目前通用BERT 模型采用詞嵌入ew、句子嵌入es與位置嵌入ep相加的方式生成文本的向量表示,其中詞嵌入生成字符本身的向量,反映了其語義;句子嵌入表示當(dāng)前句子的歸屬,使模型具備一定的文本分類能力;位置嵌入記錄字符的位置信息以保證文本輸入的時(shí)序性。對(duì)于民間文學(xué)文本NER 任務(wù)而言,實(shí)體類別信息作為最終的預(yù)測(cè)目標(biāo)直接影響NER 結(jié)果的好壞,能否高效準(zhǔn)確地表達(dá)字符的類別信息是NER 任務(wù)的關(guān)鍵所在,而通用BERT 模型無法表征實(shí)體類別信息。因此,本文提出Type based Bidirectional Encoder Representation from Transformers(TBERT)模型,利用嵌入層生成實(shí)體類別標(biāo)簽向量,并與文本字符向量相結(jié)合對(duì)實(shí)體類別特征進(jìn)行捕獲,使模型能夠到學(xué)習(xí)實(shí)體類別信息,以更好地完成序列標(biāo)注任務(wù)。
將文本字符與其對(duì)應(yīng)的實(shí)體類別標(biāo)簽作為TBERT 模型的輸入,利用模型原始的3 層嵌入對(duì)文本字符進(jìn)行表征以生成字符向量(ew,es,ep)。該模型額外增加了一層類型嵌入,由于實(shí)體標(biāo)簽間不存在明顯的上下文語義聯(lián)系,采用One-Hot 技術(shù)對(duì)各實(shí)體及非實(shí)體類型進(jìn)行統(tǒng)一編碼并對(duì)齊BERT 模型向量,然后將實(shí)體類別向量與字符向量相加得到最終向量表示eb。公式為:
TBERT 模型堆疊使用全連接Transformer 編碼器(Encoder)結(jié)構(gòu),具體如圖2 所示,主要包括多頭注意力機(jī)制(Multi-head Attention)、前饋神經(jīng)網(wǎng)絡(luò)(Feedforward Network)與歸一化操作(Add and Norm)。
Fig.2 Framework of Transformer encoder圖2 Transformer編碼器結(jié)構(gòu)
Attention 機(jī)制的通用表達(dá)式如式(5)所示,其中V表示輸入,Q與K表示計(jì)算注意力的權(quán)重,三者由eb經(jīng)過線性變換得到;dk表示Q與V的維度。通過Softmax 函數(shù)對(duì)Q與K的點(diǎn)積運(yùn)算結(jié)果作歸一化處理并乘以V獲得輸出向量。
多頭注意力機(jī)制利用多個(gè)Attention 層計(jì)算文本語句權(quán)重以獲取字符關(guān)系信息,將各Attention 層的結(jié)果整合輸出。為了避免Attention 機(jī)制對(duì)于上述操作的擬合程度不夠,Encoder 結(jié)構(gòu)使用前饋神經(jīng)網(wǎng)絡(luò)對(duì)結(jié)果修飾,并再次歸一化處理獲得最終輸出eb’,如公式(6)所示,其中n表示Attention 的頭數(shù),W表示權(quán)重矩陣,b表示偏置。
在BERT 預(yù)訓(xùn)練的基礎(chǔ)上,利用TBERT 再次對(duì)標(biāo)記字符類型數(shù)據(jù)進(jìn)行微調(diào)更新,使得模型增加字符的類型信息。TBERT 結(jié)合了文本字符信息與對(duì)應(yīng)實(shí)體類別標(biāo)簽信息的詞向量,可更輕易地區(qū)分一詞多義類實(shí)體。例如:“千瓣蓮花”在語句1 中表示角色,在語句2 中表示物品。原始BERT 模型能夠在考慮當(dāng)前語境的情況下將語句1 中的“千瓣蓮花”以向量v=(v0,v1,…,vn)表示,語句2 中的“千瓣蓮花”以向量v'=(v'0,v'1,…,v'n)表示,但由于其未采用實(shí)體類別信息,導(dǎo)致兩者在數(shù)值上近似而令模型難以區(qū)分。而TBERT 模型能夠?qū)?shí)體類別標(biāo)簽轉(zhuǎn)化為向量并疊加至原有字符向量中,擴(kuò)大了v與v'的數(shù)值差距,從而有效增強(qiáng)了模型對(duì)于實(shí)體的分類能力。
民間文學(xué)文本NER 作為一項(xiàng)序列標(biāo)注任務(wù)旨在輸出文本序列對(duì)應(yīng)的標(biāo)簽序列,因此利用BiLSTM 模型對(duì)TBERT 產(chǎn)生的詞嵌入進(jìn)行編碼以學(xué)習(xí)序列上下文依賴特征。BiLSTM 模型由前向LSTM 層與后向LSTM 層組成,解決了循環(huán)神經(jīng)網(wǎng)絡(luò)的梯度消失問題[21],從而更適用于民間文學(xué)中長(zhǎng)文本的編碼工作。
如式(7)、式(8)、式(9)、式(10)所示,LSTM 網(wǎng)絡(luò)使用細(xì)胞狀態(tài)記錄當(dāng)前最重要的信息,同時(shí)利用遺忘門ft與輸入門it控制中信息的更新,通過Sigmoid 函數(shù)σ將輸出值控制在0~1之間,其中0表示完全舍棄,1表示完全保留。
式中:W表示權(quán)重矩陣,b表示偏置量,t表示時(shí)刻,ht-1表示t-1 時(shí)刻的隱藏狀態(tài),xt表示t時(shí)刻的輸入,ot表示輸出門。
根據(jù)細(xì)胞狀態(tài),利用tanh 函數(shù)確定最終的輸出值ht。計(jì)算公式為:
最后將雙向LSTM 層的結(jié)果進(jìn)行拼接作為CRF 層的輸入進(jìn)行解碼操作。
BIO(Begin-Inside-Outside)標(biāo)注規(guī)則中,“I-X”標(biāo)簽只可能存在于實(shí)體的中間位置,不可能出現(xiàn)在實(shí)體的開頭或單獨(dú)出現(xiàn)。若僅使用一個(gè)線性層選取BiLSTM 輸出中概率最高的標(biāo)簽作為最終結(jié)果,則很可能產(chǎn)生不合理的序列,如“B-CHA O O I-CHA”。因此,本文利用CRF 模型對(duì)BiLSTM 層的輸出進(jìn)行修正并計(jì)算出全局最優(yōu)序列[22]。
對(duì)于給定的輸入h=(h0,h1,…,hn),其對(duì)應(yīng)的預(yù)測(cè)輸出標(biāo)簽L={l0,l1,…,ln}的得分計(jì)算公式為:
PR(L|h)為h的預(yù)測(cè)結(jié)果為L(zhǎng)的概率,計(jì)算公式為:
式中:L'為真實(shí)標(biāo)簽,Lh為所有可能存在標(biāo)簽組合。
在最終預(yù)測(cè)階段,根據(jù)式(15)輸出最優(yōu)結(jié)果:
本文提出的TBERT-BiLSTM-CRF 模型在BERT 模型利用未經(jīng)標(biāo)記的民間文學(xué)文本語料進(jìn)行增量預(yù)訓(xùn)練的基礎(chǔ)上,通過字符類型嵌入并再次優(yōu)化產(chǎn)生含有字符類型信息與文本語義信息的字符表示,然后由BiLSTM 模型進(jìn)行序列依賴學(xué)習(xí),經(jīng)CRF 模型預(yù)測(cè)輸出最優(yōu)結(jié)果。該模型算法具體步驟為:
輸入:原始未標(biāo)記民間文學(xué)文本語料,BERT 模型,帶類型標(biāo)記數(shù)據(jù)
S={w1,w2,…,wn'}:句子
輸出:L*:句子對(duì)應(yīng)標(biāo)簽序列
本文使用的民間文學(xué)文本語料包括《千瓣蓮花》、《傣族文本》、《娥并與桑洛》與《云南少數(shù)民族古典史詩全集》,字?jǐn)?shù)信息如表1所示。
Table 1 Word count for the corpus of folk literature texts表1 民間文學(xué)文本語料字?jǐn)?shù)信息
由于民間文學(xué)文本語料規(guī)模龐大且需要人工標(biāo)注,且以上4 則文本在內(nèi)容與形式上具有相似性,挑選其中1 824句能夠反映民間文學(xué)文本一詞多義等特點(diǎn)的語句,利用BIO 標(biāo)注的方式產(chǎn)生數(shù)據(jù)集,共計(jì)5 921 個(gè)標(biāo)簽。人名(PER)、地點(diǎn)(LOC)與組織(ORG)是3 種廣泛應(yīng)用于NER任務(wù)的標(biāo)簽,其同樣適用于民間文學(xué)的NER 工作。考慮到民間文學(xué)中不僅會(huì)出現(xiàn)人名,還會(huì)有許多擬人化的動(dòng)植物角色,因此將PER 替換為角色(CHA)。此外,民間文學(xué)中描述了一些對(duì)于劇情發(fā)展具有推動(dòng)作用的“寶物”,本文對(duì)該類實(shí)體也進(jìn)行了標(biāo)注,并用物品標(biāo)簽(OBJ)表示。表2為序列標(biāo)簽集。數(shù)據(jù)集以8∶2 的比例隨機(jī)劃分為訓(xùn)練集與測(cè)試集,其中語句和各類實(shí)體的分布情況如表3所示。
Table 2 The sequence labels表2 序列標(biāo)簽集
Table 3 Statistics of the datasets表3 數(shù)據(jù)集統(tǒng)計(jì)信息
NER 任務(wù)旨在識(shí)別出文本中的預(yù)定義語義類別,能否準(zhǔn)確全面地進(jìn)行識(shí)別在NER 模型性能評(píng)價(jià)中占據(jù)重要地位,因此本文使用準(zhǔn)確率P、召回率R與F1 值評(píng)價(jià)實(shí)驗(yàn)結(jié)果。計(jì)算公式分別為:
式中:Np表示模型識(shí)別的正確實(shí)體數(shù)量,NA表示測(cè)試集中的實(shí)體數(shù)量,NF表示模型識(shí)別的實(shí)體數(shù)量。P、R和F1取值范圍均為0~1,其值越大越好。
實(shí)驗(yàn)平臺(tái)為Intel(R)Xeon(R)CPU E5-2650 v3 @2.30GHz 處理器,RTX 2080Ti GPU,256 GB 內(nèi)存,Ubuntu20.04.1 操作系統(tǒng),Python 3.6 語言,Tensorflow-gpu 1.11.0框架。
預(yù)訓(xùn)練在chinese_L-12_H-768_A-12模型的基礎(chǔ)上進(jìn)行,民間文學(xué)文本數(shù)據(jù)經(jīng)處理后生成tf.record 文件。同時(shí)設(shè)置最大句子長(zhǎng)度為128,batch_size 為32,學(xué)習(xí)率為2e-5進(jìn)行訓(xùn)練。模型參數(shù)設(shè)置見表4。
Table 4 Model parameter settings表4 模型參數(shù)設(shè)置
3.4.1 不同模型比較
在民間文學(xué)數(shù)據(jù)集上對(duì)本文模型(TBERT-BiLSTMCRF)與目前廣泛應(yīng)用于NER 任務(wù)的BERT-BiLSTMCRF[17]、BiLSTM-CRF[18]、BiLSTM[21]、CRF[22]模型的表現(xiàn)進(jìn)行比較,結(jié)果見表5??梢钥闯觯瑢RF 與BiLSTM 結(jié)合后,3 項(xiàng)評(píng)價(jià)指標(biāo)相較單獨(dú)結(jié)構(gòu)均有明顯提高;在此基礎(chǔ)上添加一般中文語料BERT 預(yù)訓(xùn)練模型后,3 項(xiàng)指標(biāo)比BiLSTM-CRF 模型分別提高了1.15%、2.24%、1.75%;將一般中文語料BERT 預(yù)訓(xùn)練模型更換為本文方法生成的TBERT模型后,相比BERT-BiLSTM-CRF 3 項(xiàng)指標(biāo)分別提高了3.61%、2.14%、2.89%。說明同時(shí)利用民間文學(xué)的語義特征與實(shí)體類別特征可使模型理解民間文學(xué)的領(lǐng)域知識(shí)并加強(qiáng)對(duì)實(shí)體的劃分,從而在識(shí)別出更多實(shí)體的同時(shí)確保分類的準(zhǔn)確率。
Table 5 Experimental result comparison of each model表5 各模型實(shí)驗(yàn)結(jié)果比較
比較TBERT-BiLSTM-CRF、BiLSTM-CRF、BERT-BiLSTM-CRF 3 種模型對(duì)民間文學(xué)數(shù)據(jù)集中4 種不同類型實(shí)體的準(zhǔn)確率、召回率與F1值,結(jié)果見表6、表7、表8。
Table 6 Precision comparison of each model for different entity categories表6 各模型對(duì)不同類型實(shí)體識(shí)別準(zhǔn)確率比較 (%)
Table 7 Recall comparison of each model for different entity categories表7 各模型對(duì)不同類型實(shí)體召回率比較 (%)
由表6 可知,TBERT-BiLSTM-CRF 模型對(duì)各類實(shí)體識(shí)別的準(zhǔn)確率均優(yōu)于其他模型約2%,說明利用標(biāo)簽信息能使模型更好地區(qū)分一詞多義類實(shí)體,使識(shí)別更加準(zhǔn)確。
由表7 可知,TBERT-BiLSTM-CRF 模型對(duì)3 類實(shí)體的召回率超出其他模型0.7%~3%,表現(xiàn)優(yōu)異。
由表8 可知,TBERT-BiLSTM-CRF 模型對(duì)各類實(shí)體識(shí)別的F1 值均超過其他模型1%~5%。由于F1 值的計(jì)算綜合考慮了模型識(shí)別準(zhǔn)確率與召回率,說明TBERT-BiLSTM-CRF 模型較目前廣泛使用的NER 模型能夠更準(zhǔn)確完整地識(shí)別出民間文學(xué)文本中存在的實(shí)體。
3.4.2 案例分析
以下列舉了BiLSTM-CRF、BERT-BiLSTM-CRF 模型與TBERT-BiLSTM-CRF 模型對(duì)于民間文學(xué)文本具體句子案例的識(shí)別結(jié)果,其中加粗部分表示模型識(shí)別的實(shí)體,括號(hào)內(nèi)記錄其對(duì)應(yīng)的類型。
(1)BiLSTM-CRF 模型。國(guó)王(CHA)的第七個(gè)姑娘她說的每一句話會(huì)變成一朵千瓣蓮花(OBJ)漂在天上,噴發(fā)出馥郁的清香,世上千萬個(gè)美麗的姑娘我一個(gè)也不看在心上,我單單愛上千瓣蓮花(OBJ)姑娘,我真有福氣能來到與莫板森林(LOC)遇見美麗的蓮花(OBJ)姑娘。
(2)BERT-BiLSTM-CRF 模型。國(guó)王(CHA)的第七個(gè)姑娘她說的每一句話會(huì)變成一朵千瓣蓮花(OBJ)漂在天上,噴發(fā)出馥郁的清香,世上千萬個(gè)美麗的姑娘我一個(gè)也不看在心上,我單單愛上千瓣蓮花(OBJ)姑娘,我真有福氣能來到與莫板森林(LOC)遇見美麗的蓮花(CHA)姑娘。
(3)TBERT-BiLSTM-CRF 模型。國(guó)王(CHA)的第七個(gè)姑娘她說的每一句話會(huì)變成一朵千瓣蓮花(OBJ)漂在天上,噴發(fā)出馥郁的清香,世上千萬個(gè)美麗的姑娘我一個(gè)也不看在心上,我單單愛上千瓣蓮花(CHA)姑娘,我真有福氣能來到與莫板森林(LOC)遇見美麗的蓮花(CHA)姑娘。
可以看出,BiLSTM-CRF 模型利用Word2Vec 技術(shù)生成的詞向量較為單一,導(dǎo)致涉及“蓮花”的實(shí)體皆判斷為物品,且其因缺少民間文學(xué)領(lǐng)域知識(shí)而未將實(shí)體“莫板森林”完整地識(shí)別出來。這個(gè)問題同樣出現(xiàn)在BERT-BiLSTMCRF 模型的識(shí)別結(jié)果中,該模型雖然能夠根據(jù)上下文將“蓮花姑娘”中的“蓮花”正確判斷為角色,但對(duì)于文字表述上完全相同的兩個(gè)“千瓣蓮花”并沒有進(jìn)行區(qū)分而均判斷為物品。TBERT-BiLSTM-CRF 模型因融合了民間文學(xué)的語義特征與實(shí)體類別特征,在實(shí)體識(shí)別的準(zhǔn)確度方面表現(xiàn)良好。
嵌套類實(shí)體會(huì)對(duì)TBERT-BiLSTM-CRF 模型造成干擾,如表9 中的案例1 與案例2 所示,其分別為地名嵌套角色名實(shí)體與組織名嵌套角色名實(shí)體。對(duì)于前后文關(guān)系緊密的民間文學(xué)文本,若前后文割裂輸入進(jìn)模型,則模型難以根據(jù)前后文判斷出實(shí)體的正確類別,如表9 中的案例3所示。
Table 9 Error analysis表9 錯(cuò)誤分析
本文針對(duì)民間文學(xué)文本領(lǐng)域名詞眾多和一詞多義的特點(diǎn)提出TBERT-BiLSTM-CRF 模型,將民間文學(xué)的語義特征與實(shí)體類別特征融入一般中文BERT 模型,使其具備識(shí)別具有領(lǐng)域特色實(shí)體與多重詞義實(shí)體的能力;同時(shí)結(jié)合BiLSTM 模型與CRF 模型,根據(jù)上下文信息與序列間存在的強(qiáng)依賴關(guān)系使模型獲得全局最優(yōu)結(jié)果。與經(jīng)典模型CRF、BiLSTM、BiLSTM-CRF 與BERT-BiLSTM-CRF 相比,本文模型在民間文學(xué)文本數(shù)據(jù)集上獲得了最高的準(zhǔn)確率、召回率與F1 值。然而,本文仍存在一定不足:一方面是并未構(gòu)建較為完備的民間文學(xué)文本數(shù)據(jù)集,另一方面是模型效果未在其他領(lǐng)域數(shù)據(jù)集中得到驗(yàn)證。未來將進(jìn)一步探索完備數(shù)據(jù)集上的領(lǐng)域知識(shí)NER 工作。