張 棟,王銘濤,陳文亮
(蘇州大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇蘇州 215006)
命名實(shí)體識別(Named Entity Recognition,NER)是自然語言處理中的一項(xiàng)重要任務(wù)[1-2],其目的是在非結(jié)構(gòu)化文本中識別人名、地名和組織名等專有名詞[3]。NER 問題通常被轉(zhuǎn)換為序列標(biāo)注問題,即給序列中的每個(gè)字或詞打上一個(gè)預(yù)定義的實(shí)體標(biāo)簽。近年來,基于有監(jiān)督學(xué)習(xí)的NER 模型取得較大進(jìn)展,系統(tǒng)性能得到大幅提升[4-6]。
傳統(tǒng)的NER 系統(tǒng)主要是基于統(tǒng)計(jì)機(jī)器學(xué)習(xí),如最大熵模型[7]、隱馬爾科夫模型[8]和條件隨機(jī)場(Conditional Random Field,CRF)模型[9-10]等。這類模型非常依賴手工特征,如上下文特征、前綴詞和后綴詞等。由于語言的多樣性以及領(lǐng)域的差異性,手工特征通常需要重新設(shè)計(jì),缺乏可遷移性。隨著深度學(xué)習(xí)的快速發(fā)展,基于神經(jīng)網(wǎng)絡(luò)的方法被廣泛應(yīng)用于NER 任務(wù)。文獻(xiàn)[11]使用前饋神經(jīng)網(wǎng)絡(luò)和卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)作為特征編碼器,文獻(xiàn)[12]使用長短時(shí)記憶(Long Short Term Memory,LSTM)網(wǎng)絡(luò)作為特征編碼器。這些深度學(xué)習(xí)模型不僅擺脫了對手工特征工程的依賴,而且命名實(shí)體識別性能明顯優(yōu)于基于統(tǒng)計(jì)機(jī)器學(xué)習(xí)的方法。神經(jīng)網(wǎng)絡(luò)的初始化對于深度學(xué)習(xí)模型性能影響很大,傳統(tǒng)的詞向量在訓(xùn)練時(shí)對上下文中的詞進(jìn)行預(yù)測,得到詞的分布式向量表示。但通過這種方式取得的詞向量都是靜態(tài)的,無法體現(xiàn)一詞多義的情況。例如,“自然”在不同上下文中具有“不造作,不呆板”或“理所當(dāng)然”的含義。為了解決這一問題,文獻(xiàn)[13]在大規(guī)模無標(biāo)注語料上預(yù)訓(xùn)練一個(gè)語言模型,將多層上下文的隱狀態(tài)通過線性加權(quán)作為詞的向量表示,基于該預(yù)訓(xùn)練語言模型得到的上下文相關(guān)詞向量在英文NER 任務(wù)中取得了較好的效果。
在中文NER 任務(wù)中,通常將字作為最小的處理單元,使用大規(guī)模無標(biāo)注語料預(yù)訓(xùn)練字向量。漢字是一種象形文字,其中包含豐富的筆畫、部首等字形信息。具有相似字形的漢字通常具有相似的語義,如“他、你、俺”都有部首“亻”,“亻”是“人”的變體,因此,這些字都包含與“人”相關(guān)的意思。雖然在大規(guī)模無標(biāo)注語料上訓(xùn)練得到的字向量,可以在一定程度上學(xué)習(xí)到自然語言中的語法和語義特征,但是這種特征表示能力是有限的。一些研究人員嘗試將漢字字形應(yīng)用于中文NER 任務(wù)中,目前已取得了一定成果。文獻(xiàn)[14]將漢字拆分成多個(gè)組件,通過雙向LSTM 提取漢字的字形特征,將其與隨機(jī)初始化的上下文無關(guān)字向量進(jìn)行拼接并作為漢字的特征表示,該方法的NER 性能得到有效提升。但是,目前較少有學(xué)者將預(yù)訓(xùn)練語言模型和漢字字形相結(jié)合,從而增強(qiáng)字的語義表達(dá)。同時(shí),漢字存在多種字形表現(xiàn)形式,如部首、五筆和筆畫,其中,部首只提供漢字的部分字形信息,筆畫只有橫類、豎類、撇類、點(diǎn)類和折類等,過于簡單,而五筆拆解出的漢字較完整且字形具有一定含義。因此,本文將五筆字形信息引入漢字的向量表示中,以改進(jìn)中文命名實(shí)體識別效果。
為了充分利用大規(guī)模無標(biāo)注語料,本文將中文特有的字形信息和預(yù)訓(xùn)練語言模型相結(jié)合,提出2 種結(jié)合五筆字形的上下文相關(guān)字向量表示方法。第一種方法分別訓(xùn)練得到2 個(gè)語言模型,一是基于字序列訓(xùn)練一個(gè)基于字的語言模型,二是將文本轉(zhuǎn)換為五筆編碼序列,訓(xùn)練一個(gè)基于五筆的語言模型。第二種方法是將五筆字形作為輔助特征拼接到字向量表示中,將兩者信息直接融合,訓(xùn)練一個(gè)基于字與五筆字形的混合語言模型。通過這2 種方法得到2 種結(jié)合五筆字形的上下文相關(guān)字向量,并以此構(gòu)建中文NER 系統(tǒng)。
目前,序列標(biāo)注任務(wù)主要通過基于神經(jīng)網(wǎng)絡(luò)的方法來完成。文獻(xiàn)[11]去掉特征工程和先驗(yàn)知識,使用語言模型中訓(xùn)練的詞向量替換手工設(shè)計(jì)特征,在詞性標(biāo)注、分塊以及NER 任務(wù)上取得了較好的效果。文獻(xiàn)[15-16]分別使用CNN 和雙向LSTM 以捕獲英文單詞內(nèi)的拼寫特征,結(jié)果驗(yàn)證了字符級特征的有效性。借鑒英文中提取單詞拼寫特征的思想,文獻(xiàn)[14]將漢字拆分成多個(gè)組件,通過雙向LSTM提取組件級別的特征,然后和上下文無關(guān)字向量相拼接,以改進(jìn)中文NER 的性能。文獻(xiàn)[17]通過CNN對漢字五筆進(jìn)行編碼,然后與上下文無關(guān)字向量相拼接以作為NER 模型的輸入。此外,為了提取命名實(shí)體的前綴和后綴特征,文獻(xiàn)[17]使用多個(gè)卷積核模擬傳統(tǒng)的n-gram 特征。由于LSTM 在處理序列時(shí)無法并行運(yùn)算以及傳統(tǒng)卷積感受野受限,因此文獻(xiàn)[18]使用空洞卷積增大感受野從而進(jìn)行命名實(shí)體識別,該方法在未降低識別性能的同時(shí)顯著縮短了模型訓(xùn)練時(shí)間。為了降低人工標(biāo)注語料的成本,文獻(xiàn)[19]提出了一種利用對抗網(wǎng)絡(luò)在眾包數(shù)據(jù)上進(jìn)行命名實(shí)體識別的方法。為了避免分詞錯(cuò)誤,很多研究人員都以字為處理單元。文獻(xiàn)[20]建立一種Lattice-LSTM 模型來引入序列中所有潛在的詞信息,其在NER 任務(wù)中取得了很好的效果。
除了對NER 模型進(jìn)行改進(jìn)外,自然語言處理的一個(gè)重要任務(wù)是學(xué)習(xí)文本中較好的特征表示。研究表明,在大規(guī)模無標(biāo)注數(shù)據(jù)上預(yù)訓(xùn)練學(xué)習(xí)得到的詞向量可以捕獲語法和語義信息,使得預(yù)訓(xùn)練的詞向量成為自然語言處理模型的一個(gè)基本組成部分[21]。文獻(xiàn)[22]利用漢字的上下文和部首信息來訓(xùn)練上下文無關(guān)字向量,并將其應(yīng)用于漢字的相似性計(jì)算任務(wù)和中文分詞任務(wù)中,且取得了較好效果。文獻(xiàn)[23]基于五筆將漢字轉(zhuǎn)變成五筆序列,使用CBOW 模型預(yù)訓(xùn)練五筆的上下文無關(guān)向量,在中文分詞、短文本分類以及網(wǎng)頁排序任務(wù)中,該方法的效果優(yōu)于基于傳統(tǒng)特征的機(jī)器學(xué)習(xí)方法。文獻(xiàn)[24]在SkipGram 和CBOW 模型中,將漢字的組件信息融合到字向量的預(yù)訓(xùn)練中,在文本分類中取得一定效果。文獻(xiàn)[25]在預(yù)訓(xùn)練上下文無關(guān)詞向量時(shí),同時(shí)考慮詞、字和部首三者的信息,在詞相似性和詞推理任務(wù)中的結(jié)果驗(yàn)證了上下文無關(guān)詞向量的有效性。文獻(xiàn)[26]根據(jù)漢字的圖像表示,通過CNN 提取漢字的可視化特征。上述方法雖然在一定程度上豐富了字向量的表示,但多數(shù)是對上下文無關(guān)向量的改進(jìn)。此外,很多研究僅聚焦于字或詞級的語義任務(wù),未在句子、文檔等自然語言處理的高層任務(wù)上進(jìn)行延伸。
文獻(xiàn)[13]提出基于語言模型的上下文相關(guān)詞向量表示方法,其在多個(gè)英文自然語言處理任務(wù)中取得了較好的效果。但是,該方法不能直接應(yīng)用于中文NER 任務(wù),因此,本文在中文語料上訓(xùn)練一個(gè)基于字的語言模型。此外,為了更好地挖掘中文的字形信息,本文建立2 種結(jié)合五筆字形的預(yù)訓(xùn)練語言模型,并在此基礎(chǔ)上分別構(gòu)建2 種結(jié)合五筆字形的上下文相關(guān)字向量表示模型。
LSTM-CRF 已經(jīng)成為命名實(shí)體識別中最主要的模型之一。本文采用LSTM-CRF 構(gòu)建基準(zhǔn)系統(tǒng)(baseline),如圖1 所示。整個(gè)模型主要由輸入層、編碼層和解碼層3 個(gè)部分組成。baseline 模型的輸入為傳統(tǒng)的靜態(tài)字向量,使用雙向LSTM 對序列的特征進(jìn)行編碼。在解碼層,本文使用CRF 模型。
圖1 LSTM-CRF 模型Fig.1 LSTM-CRF model
假設(shè)LSTM-CRF 模型的輸入為一句話s=c1,c2,…,cn,ck表示句子中的第k個(gè)字。對每個(gè)字ci,通過word2vec 預(yù)訓(xùn)練字向量將其嵌入為連續(xù)稠密向量表示,本文使用xk表示LSTM-CRF 模型第k個(gè)字向量的輸入,
本層使用LSTM 對特征進(jìn)行編碼,LSTM 單元能夠處理當(dāng)前時(shí)刻的信息,也可以處理歷史信息,非常適合對序列問題進(jìn)行建模。LSTM 單元通過輸入門、遺忘門和輸出門來控制單元的隱狀態(tài),可以有效捕獲長距離依賴信息。LSTM 單元的實(shí)現(xiàn)方式如式(1)~式(3)所示:
其中,σ是sigmoid 函數(shù),*代表元素乘,W是權(quán)重矩陣,b代表偏置。
在序列標(biāo)注任務(wù)中,上下文特征對于標(biāo)簽決策很重要。由于LSTM 只能對序列的一個(gè)方向進(jìn)行編碼,因此本文使用雙向LSTM(BiLSTM)對輸入進(jìn)行特征編碼,將BiLSTM 的2 個(gè)前后向隱狀態(tài)相連接以作為最終的特征編碼。輸入序列(x1,x2,…,xn)經(jīng)過BiLSTM編碼后可以得到特征序列(h1,h2,…,hn)。
根據(jù)BiLSTM 提取到的第k時(shí)刻的特征hk,可以直接對每個(gè)字的輸出進(jìn)行獨(dú)立的標(biāo)簽預(yù)測。但是,由于標(biāo)簽之間存在一定的相關(guān)性,如B-ORG 后面不能跟著I-PER,因此本文使用CRF 對標(biāo)簽序列進(jìn)行一些約束。定義矩陣O是對隱層表示H={h1,h2,…,hn}進(jìn)行線性變換所得表示第k個(gè)字是yk的得分,O的表達(dá)式如式(4)所示:
其中,Wo和bo是矩陣O的參數(shù)。對于標(biāo)簽序列y={y1,y2,…,yn},本文通過式(5)計(jì)算其概率:
其中,T是轉(zhuǎn)移矩陣表示所有可能的標(biāo)簽序列。
在訓(xùn)練過程中,給定N個(gè)句子的命名實(shí)體識別數(shù)據(jù),使用梯度反向傳播算法來最小化損失函數(shù)loss,如式(6)所示:
在訓(xùn)練完成后,需要對模型輸出進(jìn)行解碼,通過式(7)來找到得分最高的標(biāo)簽序列:
本文建立2 種上下文相關(guān)字向量表示系統(tǒng)。第一種是在基于字的語言模型和基于五筆的語言模型的基礎(chǔ)上所構(gòu)建,第二種是在基于字與五筆的混合語言模型的基礎(chǔ)上所構(gòu)建。
將字和五筆的信息分開,分別訓(xùn)練基于字的語言模型和基于五筆的語言模型,在這2 個(gè)語言模型的基礎(chǔ)上構(gòu)建本文所提第一種結(jié)合五筆字形的上下文相關(guān)字向量表示系統(tǒng)。
3.1.1 基于字的語言模型
本文使用ELMo(Embeddings from Language Model)作為基于字的語言模型的訓(xùn)練框架。作為傳統(tǒng)上下文無關(guān)詞向量的一種替代方法,ELMo 已經(jīng)在解決一系列句法和語義NLP 問題上取得了成功。與文獻(xiàn)[11]系統(tǒng)不同,本文系統(tǒng)構(gòu)建基于字的ELMo 框架。對于字序列(c1,c2,…,cn),前向語言模型通過式(8)計(jì)算序列概率:
前向語言模型只能編碼一個(gè)字的上文信息,因此,還需要一個(gè)后向語言模型來編碼字的下文信息,如式(9)所示:
訓(xùn)練的目標(biāo)是最大化前向語言模型和后向語言模型對數(shù)似然概率,如式(10)所示:
前向語言模型和后向語言模型互相獨(dú)立,即參數(shù)不共享。同時(shí),較低的層可以學(xué)到更多的語法特征,而較高的層能夠?qū)W習(xí)上下文特征。因此,本文前向語言模型和后向語言模型均采用兩層LSTM 堆疊的結(jié)構(gòu),如圖2 所示。
圖2 基于字的語言模型Fig.2 Character-based language model
不同于傳統(tǒng)的上下文無關(guān)字向量,上下文相關(guān)字向量直到整個(gè)句子被構(gòu)造出來才確定。因此,每個(gè)字向量都是上下文相關(guān)的,一旦預(yù)訓(xùn)練完成,通過雙向語言模型就可以得到上下文相關(guān)字向量。對于第k個(gè)時(shí)刻,前向語言模型的隱狀態(tài)為,后向語言模型的隱狀態(tài)為。因此,對于第k個(gè)時(shí)刻,L層雙向語言模型可以得到2L+1 個(gè)向量表示,如式(11)、式(12)所示:
3.1.2 基于五筆的語言模型
在基于五筆的語言模型中,將字轉(zhuǎn)換為其對應(yīng)的五筆編碼形式,將句子轉(zhuǎn)化為五筆編碼序列。如文本表示“愛國家”,其對應(yīng)的五筆序列表示為“epdc>lgyi>peu”。本文基于五筆的編碼方式將句子轉(zhuǎn)換為五筆字符串r1,r2,…,rm。漢字的五筆表示包含多個(gè)五筆碼元(用英文字母表示),每個(gè)五筆碼元刻畫漢字的字形信息,漢字與漢字的五筆編碼之間使用特殊字符“>”分隔。本文不再將字或詞當(dāng)成一個(gè)最小的處理單元,而將五筆的碼元當(dāng)成最小的語義單元。
預(yù)訓(xùn)練一個(gè)基于五筆序列的語言模型(簡稱五筆語言模型),該語言模型的目標(biāo)是學(xué)習(xí)一個(gè)五筆序列分布p(r1,r2,…,rm),根據(jù)前一個(gè)五筆碼元序列預(yù)測后一個(gè)五筆碼元。在基于五筆的語言模型中,對于輸入序列“epdc>lgyi>pe”,其對應(yīng)的輸出序列為“pdc>lgyi>peu”,與基于字的語言模型類似,基于五筆的語言模型同樣通過堆疊的LSTM 來訓(xùn)練前后向的語言模型。
與基于字的語言模型得到上下文相關(guān)字向量表示不同,本文利用預(yù)訓(xùn)練的五筆語言模型的內(nèi)部狀態(tài)來產(chǎn)生一種新型的上下文相關(guān)字向量。在五筆語言模型訓(xùn)練完成后,根據(jù)五筆的前向語言模型和后向語言模型中最后一層的隱狀態(tài)創(chuàng)建字的向量表示。圖3 中的“國”對應(yīng)的五筆編碼“l(fā)gyi”,通過前向語言模型中“l(fā)gyi”前的“>”隱狀態(tài)和后向語言模型中“l(fā)gyi”后的“>”隱狀態(tài)的拼接,并作為“l(fā)gyi”的向量表示。這種字向量在沒有任何明確的字或詞的概念下訓(xùn)練,從根本上將字建模為五筆碼元序列。此外,其可以隨著上下文碼元的不同而變化。在本文中,對于第k個(gè)字,基于五筆語言模型得到的上下文相關(guān)字向量為
圖3 基于五筆的上下文相關(guān)字向量表示Fig.3 Contextualized character embeddings representation based on Wubi
將上述基于字的語言模型和基于五筆的語言模型相拼接,得到本文第一種結(jié)合五筆的上下文相關(guān)字向量表示
將字信息和五筆信息相結(jié)合,基于字和五筆混合語言模型構(gòu)建本文所提第二種上下文相關(guān)字向量表示。在混合語言模型的訓(xùn)練過程中,字的嵌入表示和五筆編碼表示相拼接作為語言模型的輸入。對于句子c1,c2,…,cn,第k個(gè)時(shí)刻的輸入包含字的嵌入表示和五筆表示,字的嵌入表示不作介紹,本文主要關(guān)注五筆表示。
圖4 所示為五筆信息的獲取方式,將句子中的每個(gè)漢字表示成五筆編碼形式,如“愛國家”對應(yīng)的五筆形式為“epdc lgyi peu”。對于“國”的五筆編碼“l(fā)gyi”,利用多個(gè)卷積核從不同角度對其進(jìn)行卷積以提取特征,然后通過最大池化進(jìn)一步提取特征。為了防止網(wǎng)絡(luò)過深導(dǎo)致梯度彌散從而難以訓(xùn)練,本文加入高速網(wǎng)絡(luò),高速網(wǎng)絡(luò)的輸出即為五筆編碼的最終表示。
圖4 五筆信息的獲取方式Fig.4 The way of obtaining Wubi information
混合語言模型的訓(xùn)練同樣是最大化前向語言模型和后向語言模型的概率分布。在混合語言模型訓(xùn)練完成后,通過類似ELMo 的方式獲得第k個(gè)時(shí)刻包含五筆和字信息的上下文相關(guān)字向量
4.1.1 實(shí)驗(yàn)數(shù)據(jù)
本文實(shí)驗(yàn)數(shù)據(jù)分為無標(biāo)注數(shù)據(jù)和命名實(shí)體識別數(shù)據(jù)2 類。對于無標(biāo)注數(shù)據(jù),使用Gigaword(https://catalog.ldc.upenn.edu/LDC2003T09)訓(xùn)練基于word2vec的上下文無關(guān)字向量和語言模型。對于命名實(shí)體識別數(shù)據(jù),為了從不同領(lǐng)域評估本文模型的性能,選取來自新聞?lì)I(lǐng)域的數(shù)據(jù)集Ontonotes 和社交媒體領(lǐng)域的數(shù)據(jù)集Weibo,2 個(gè)數(shù)據(jù)集的句子數(shù)和字?jǐn)?shù)統(tǒng)計(jì)如表1 所示。
表1 數(shù)據(jù)集信息統(tǒng)計(jì)結(jié)果Table 1 Statistical results of datasets information
4.1.2 評價(jià)指標(biāo)
實(shí)體識別需要同時(shí)識別實(shí)體的邊界和類別,只有當(dāng)實(shí)體邊界和類別都識別正確時(shí)結(jié)果才算正確。本文實(shí)驗(yàn)使用綜合指標(biāo)F1 值來衡量模型性能,F(xiàn)1 值計(jì)算公式如下:
其中,N表示模型預(yù)測出的實(shí)體數(shù)目,M表示模型預(yù)測正確的實(shí)體數(shù)目,K表示標(biāo)注數(shù)據(jù)中包含的實(shí)體數(shù)目。
4.1.3 標(biāo)簽框架
實(shí)驗(yàn)采用BIO 標(biāo)簽框架,B 即Begin,表示當(dāng)前字是實(shí)體的第一個(gè)字,I即Inside,表示當(dāng)前字是實(shí)體內(nèi)的字,O 即Other,表示其他。對于某種具體類型(Type),某個(gè)字可選標(biāo)注集合為{B-Type,I-Type,O}。
4.1.4 模型訓(xùn)練和參數(shù)設(shè)置
實(shí)驗(yàn)采用pytorch 深度學(xué)習(xí)框架,使用NVIDIA GeForce GTX 1080 Ti 加速模型訓(xùn)練。在BiLSTMCRF 模型中設(shè)置LSTM 隱層維度為200。采用Adam優(yōu)化器更新神經(jīng)網(wǎng)絡(luò)的參數(shù),對LSTM 輸入向量和輸出向量采用dropout 策略,概率設(shè)置為0.5。為防止模型過擬合,總訓(xùn)練輪次設(shè)置為50 輪,當(dāng)連續(xù)迭代10 輪模型在開發(fā)集上的性能不再提升時(shí)模型停止訓(xùn)練。預(yù)訓(xùn)練語言模型均采用2 層BiLSTM,Embedding 映射維度為512,負(fù)采樣窗口大小設(shè)置為8 192。其中,基于字與五筆的混合語言模型中使用256 個(gè)n-gram 卷積濾波器進(jìn)行特征抽取。預(yù)訓(xùn)練語言模型的迭代次數(shù)設(shè)置為10,當(dāng)模型困惑度在開發(fā)集上不再明顯降低時(shí)停止訓(xùn)練。
本文實(shí)驗(yàn)中的對比模型具體如下:
1)LSTM-CRF:即本文baseline 模型,其將雙向LSTM 作為編碼器,CRF 作為解碼器,輸入為傳統(tǒng)字向量,即
2)LSTM-CRF-char:在baseline 的基礎(chǔ)上,輸入增加基于字語言模型得到的上下文相關(guān)字向量,即輸入為
3)LSTM-CRF-wubi:在baseline 的基礎(chǔ)上,輸入增加基于五筆語言模型得到的上下文相關(guān)字向量,即輸入為
4)LSTM-CRF-concat:在baseline 的基礎(chǔ)上,增加基于字的語言模型和基于五筆的語言模型得到的2 個(gè)上下文相關(guān)字向量的拼接,對應(yīng)本文所提第一種結(jié)合五筆的上下文相關(guān)字向量表示,即輸入為xk=
5)LSTM-CRF-hybrid:在baseline 的基礎(chǔ)上,輸入增加基于字和五筆的混合語言模型得到的上下文相關(guān)字向量,對應(yīng)本文所提第二種結(jié)合五筆的上下文相關(guān)字向量表示,即輸入為
表2、表3 所示為Ontonotes 和Weibo 2 個(gè)數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果。從表2、表3 下半部分可以看出,模型在增加上下文相關(guān)字向量(LSTM-CRF-char)后,命名實(shí)體識別的性能在Ontonotes 和Weibo 數(shù)據(jù)集上分別提升9.04 和6.19 個(gè)百分點(diǎn)。從表2、表3 最后兩行可以看出,本文所提2 種結(jié)合五筆的上下文相關(guān)字向量(LSTM-CRF-hybrid 和LSTM-CRF-concat)在2 個(gè)數(shù)據(jù)集上的F1 值相比基于字的上下文相關(guān)字向量(LSTM-CRF-char)有了進(jìn)一步提高,在Weibo 上尤為顯著,最高提升3.03 個(gè)百分點(diǎn),說明在預(yù)訓(xùn)練語言模型中引入五筆字形信息具有有效性。此外,LSTM-CRF-concat 比LSTM-CRF-hybrid 效果更好,原因是基于五筆的語言模型不僅可以學(xué)習(xí)到漢字本身的字形信息,而且可以學(xué)習(xí)到上下文的碼元信息。
表2 Ontonotes 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 2 Experimental results on Ontonotes dataset %
表3 Weibo 數(shù)據(jù)集上的實(shí)驗(yàn)結(jié)果Table 3 Experimental results on Weibo dataset %
在表2 中,文獻(xiàn)[27]模型使用一種基于中英雙語語料的方法,LSTM-CRF-char 在沒有借助英文語料的情況下F1 值仍然比其高0.6 個(gè)百分點(diǎn),說明上下文相關(guān)字向量能大幅提升語義表征能力。文獻(xiàn)[27]模型通過結(jié)合基于多種手工特征以及外部資源的CRF 和基于神經(jīng)網(wǎng)絡(luò)的LSTM-CRF 模型,使得命名實(shí)體識別性能達(dá)到76.40%。相比之下,LSTMCRF-concat 完全沒有使用手工設(shè)計(jì)特征和模型融合,但是F1 值僅比文獻(xiàn)[29]模型低0.56 個(gè)百分點(diǎn)。在表3 中,文獻(xiàn)[31]模型和文獻(xiàn)[20]模型分別利用分詞和外部詞典來更好地判斷實(shí)體邊界,本文方法的F1 值比文獻(xiàn)[31]模型高4.32 個(gè)百分點(diǎn)。Weibo 數(shù)據(jù)集來自社交媒體領(lǐng)域,文本的表達(dá)通常是非正式的,包含很多噪聲,從表3 可以看出,模型在Weibo 數(shù)據(jù)集上的結(jié)果與Ontonotes 結(jié)果一致,說明結(jié)合五筆增強(qiáng)的上下文相關(guān)字向量在社交媒體領(lǐng)域同樣有效,而沒有因?yàn)轭I(lǐng)域的不同導(dǎo)致命名實(shí)體識別系統(tǒng)性能下降。
4.2.1 五筆信息與WC-LSTM 相結(jié)合對識別結(jié)果的影響
基于字的命名實(shí)體識別方法雖然取得了較好的效果,但是其未利用句子中詞的信息。詞的邊界往往也是命名實(shí)體的邊界,詞的邊界信息可以幫助基于字的命名實(shí)體識別方法確定命名實(shí)體的邊界。文獻(xiàn)[33]提出一種可以同時(shí)整合字和詞信息的WCLSTM(Word-Character LSTM)模型。為了進(jìn)一步驗(yàn)證本文所提方法的有效性,在WC-LSTM 模型的輸入中增加結(jié)合五筆的上下文相關(guān)字向量表示,從而同時(shí)對五筆、字和詞的多個(gè)層面進(jìn)行特征表示。
從表4 可以看出,增加了基于五筆的上下文相關(guān)字向量的WC-LSTM 模型,命名實(shí)體識別性能進(jìn)一步提升,性能優(yōu)于表2 中的文獻(xiàn)[29]模型,這說明詞、字、五筆攜帶的信息不同,對中文命名實(shí)體識別具有不同的作用。
表4 Ontonotes 數(shù)據(jù)集上的模型性能對比Table 4 Performance comparison of models on Ontonotes dataset%
4.2.2 訓(xùn)練數(shù)據(jù)規(guī)模對識別結(jié)果的影響
為了驗(yàn)證在訓(xùn)練不充分的情況下基于五筆的上下文相關(guān)字向量對命名實(shí)體識別性能的影響,本文從Ontonotes 訓(xùn)練數(shù)據(jù)中分別隨機(jī)選取5%、10%、20%、50%和100%比例的數(shù)據(jù)作為訓(xùn)練集,固定驗(yàn)證集和測試集,然后進(jìn)行對比實(shí)驗(yàn)。從表5 可以看出,訓(xùn)練數(shù)據(jù)規(guī)模越小,基于五筆的上下文相關(guān)字向量對模型性能提升越大,這說明基于五筆的上下文相關(guān)字向量可以在一定程度上緩解模型在小數(shù)據(jù)集上的欠擬合問題。
表5 數(shù)據(jù)規(guī)模對模型性能的影響Table 5 The impact of data size on models performance%
中文預(yù)訓(xùn)練語言模型在命名實(shí)體識別時(shí)僅對字符進(jìn)行建模而較少關(guān)注中文特有的字形信息。本文考慮中文五筆字形的優(yōu)勢,將其作為額外的輸入信息,提出2 種融合字形信息的上下文相關(guān)字向量表示方法。第一種方法在預(yù)訓(xùn)練語言模型中引入額外的五筆編碼器以豐富字向量表示,第二種方法對五筆序列進(jìn)行建模從而抽取字向量表示。實(shí)驗(yàn)結(jié)果表明,2 種方法在實(shí)體識別任務(wù)中取得了較高的F1 值,且結(jié)合五筆的上下文相關(guān)字向量表示方法的性能優(yōu)于基于字的上下文相關(guān)字向量表示方法。語言模型BERT[34]具有更強(qiáng)的特征編碼能力,在各項(xiàng)識別任務(wù)中取得了較好效果。下一步考慮在BERT 中結(jié)合五筆編碼特征提取來增強(qiáng)語義表達(dá),以獲取更高的命名實(shí)體識別性能。