摘? 要:針對(duì)transformer編碼器架構(gòu)在中文命名實(shí)體識(shí)別任務(wù)上表現(xiàn)不佳的問(wèn)題,提出使用無(wú)參數(shù)化的傅立葉子層替換編碼器中自注意力子層,使用卷積神經(jīng)網(wǎng)絡(luò)替代前饋神經(jīng)網(wǎng)絡(luò)。實(shí)驗(yàn)表明,采用結(jié)合傅立葉變換和卷積神經(jīng)網(wǎng)絡(luò)的transformer encoder架構(gòu)的算法,可以在較小的字符嵌入和參數(shù)量下實(shí)現(xiàn)性能提升,且訓(xùn)練過(guò)程更快。
關(guān)鍵詞:中文命名實(shí)體識(shí)別;編碼器;傅立葉變換;卷積神經(jīng)網(wǎng)絡(luò)
中圖分類號(hào):TP391;TP18? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):2096-4706(2022)02-0104-03
Abstract: In view of the poor performance of transformer encoder architecture in the task of Chinese named entity recognition, a non-parameter Fourier sublayer is proposed to replace the self attention sublayer in the encoder, and a convolutional neural network is used to replace the feedforward neural network. Experiments show that the algorithm based on the transformer encoder architecture combining Fourier transform and convolutional neural network can improve the performance with small character embedding and parameters, and the training process is faster.
Keywords: Chinese named entity recognition; encoder; Fourier transform; convolutional neural network
0? 引? 言
命名實(shí)體識(shí)別是自然語(yǔ)言處理領(lǐng)域的重要基礎(chǔ)課題,旨在將文本中命名實(shí)體分類到預(yù)定義的類別,如人名、組織和公司等。自然語(yǔ)言處理領(lǐng)域的一系列下游任務(wù)都依賴于命名實(shí)體的準(zhǔn)確識(shí)別,如問(wèn)答系統(tǒng)和知識(shí)圖譜,甚至在推薦系統(tǒng)領(lǐng)域內(nèi)NER也開(kāi)始扮演著重要角色。
現(xiàn)有的標(biāo)準(zhǔn)NER模型將命名實(shí)體識(shí)別視作逐字符的序列標(biāo)注任務(wù),通過(guò)捕獲上下文信息預(yù)測(cè)每個(gè)命名實(shí)體的預(yù)定義標(biāo)簽分類概率。該領(lǐng)域內(nèi)的主要模型可以大致分為以條件隨機(jī)場(chǎng)為代表的概率統(tǒng)計(jì)模型和以BiLSTM-CRF[1]為代表的深度學(xué)習(xí)模型。
Transformer[2]架構(gòu)在NLP領(lǐng)域的其他任務(wù)中快速地占據(jù)了主導(dǎo)地位,通過(guò)從輸入的組合中學(xué)習(xí)更高階特征的方式靈活地捕獲不同語(yǔ)法和語(yǔ)義關(guān)系。但其核心的注意力子層在方向性、相對(duì)位置、稀疏性方面不太適合NER任務(wù)。
本文引入無(wú)參數(shù)的傅立葉變換子層和卷積神經(jīng)網(wǎng)絡(luò)單元對(duì)Transformer架構(gòu)中注意力子層和前饋神經(jīng)網(wǎng)絡(luò)單元進(jìn)行完全替代,改進(jìn)后的Transformer結(jié)構(gòu)解決了中文命名實(shí)體識(shí)別中模型特征提取能不足和中文潛在特征表示不充分的問(wèn)題。傅里葉子層和卷積神經(jīng)網(wǎng)絡(luò)單元的參數(shù)規(guī)模和并行性能使得該架構(gòu)在小規(guī)模語(yǔ)料、較小字符嵌入和快速訓(xùn)練場(chǎng)景中更具實(shí)用性。模型在CLUENER2020[3]中文細(xì)粒度命名實(shí)體識(shí)別數(shù)據(jù)集上取得了較好的實(shí)驗(yàn)性能。
1? 相關(guān)工作
近年來(lái),基于深度學(xué)習(xí)的實(shí)體識(shí)別方法開(kāi)始成為主流研究方向。Collobert[4]等提出使用卷積神經(jīng)網(wǎng)絡(luò)完成命名實(shí)體識(shí)別任務(wù)。RNN模型因?yàn)槟軌蚪鉀Q可變長(zhǎng)度輸入和長(zhǎng)期依賴關(guān)系等問(wèn)題被引入NER領(lǐng)域,BiLSTM-CRF模型使用雙向長(zhǎng)短期記憶網(wǎng)絡(luò)和其他語(yǔ)言學(xué)特征提升模型識(shí)別效果。
傅立葉變換作為神經(jīng)網(wǎng)絡(luò)理論研究的重要方向。Chitsaz等在卷積神經(jīng)網(wǎng)絡(luò)中部署了FFT以加快計(jì)算速度,Choromanski等利用隨機(jī)傅立葉特征將Transformer自注意力機(jī)制的復(fù)雜性線性化,而James等[5]提出的FNet網(wǎng)絡(luò)更是在訓(xùn)練速度和模型精度上取得了成功。
本文提出了一種基于新型Transformer編碼結(jié)構(gòu)的命名實(shí)體識(shí)別方法,通過(guò)引入無(wú)參數(shù)化的快速傅立葉變換彌補(bǔ)Transformer結(jié)構(gòu)的自注意力機(jī)制在中文命名實(shí)體識(shí)別任務(wù)中方向性和相對(duì)位置上的不足,并采用更適合上下文信息交互的卷積神經(jīng)網(wǎng)絡(luò)替換Transformer結(jié)構(gòu)中密集的全連接層。新型Transformer編碼結(jié)構(gòu)結(jié)合BiLSTM-CRF模型,在不引入先驗(yàn)知識(shí)和預(yù)訓(xùn)練信息的基礎(chǔ)上,采用更少的詞嵌入長(zhǎng)度、參數(shù)量和標(biāo)注數(shù)據(jù)語(yǔ)料即可充分捕獲文本序列的潛在特征,構(gòu)建一種遷移能力更強(qiáng)、完全端到端的命名實(shí)體識(shí)別模型。
2? FTCN模型
FTCN模型共包含三個(gè)部分:FTCN編碼模塊,BiLSTM模塊和CRF模塊。FTCN編碼模塊支持隨機(jī)初始化并自主訓(xùn)練詞向量和預(yù)訓(xùn)練詞向量微調(diào)兩種詞嵌入方式。BiLSTM模塊通過(guò)引入門控機(jī)制充分提取文本的雙向語(yǔ)義特征。最后,CRF模塊采用動(dòng)態(tài)規(guī)劃算法將BiLSTM輸出的特征向量解碼為一個(gè)最優(yōu)的標(biāo)記序列。
2.1? FTCN解碼模塊
FTCN-Encoder是一種無(wú)須注意力機(jī)制的Transformer架構(gòu),其中每一層由一個(gè)傅里葉子層和一個(gè)卷積神經(jīng)網(wǎng)絡(luò)子層組成,模塊結(jié)構(gòu)如圖1所示。本質(zhì)上,本文是將每個(gè)Transformer架構(gòu)的自注意力子層替換成一個(gè)傅里葉子層,該子層將輸入序列沿著序列長(zhǎng)度和詞向量維數(shù)兩個(gè)維度進(jìn)行離散傅立葉變換。同時(shí),本文使用卷積神經(jīng)網(wǎng)絡(luò)取代每個(gè)Transformer架構(gòu)的前饋神經(jīng)網(wǎng)絡(luò),卷積神經(jīng)網(wǎng)絡(luò)可以模擬實(shí)現(xiàn)類似n-gram模型的效果,充分挖掘上下文字符之間的語(yǔ)義特征,相較于前饋神經(jīng)網(wǎng)絡(luò)參數(shù)量更少且更適合命名實(shí)體識(shí)別任務(wù)。
其中,傅立葉變換將函數(shù)轉(zhuǎn)換成一系列周期函數(shù),給定一個(gè)序列,離散傅立葉變換的公式為:
其中,k∈[0,N-1],對(duì)于每個(gè)k,離散傅立葉變換將原始輸入表示為之和。傅里葉子層將輸入沿著序列長(zhǎng)度和詞向量維數(shù)兩個(gè)維度進(jìn)行離散傅立葉變換。對(duì)于結(jié)果我們僅保留實(shí)數(shù)部分。
同時(shí),如果保留Transformer中的前饋神經(jīng)網(wǎng)絡(luò),則FTCN-encoder模塊將退化成無(wú)卷積神經(jīng)網(wǎng)絡(luò)參與的FTNN-encoder模塊。FTCN-encoder模塊的特征提取能力更強(qiáng),且可以通過(guò)設(shè)置各子層的連接方式,選擇ResNet連接或Concat連接。而FTNN-encoder模塊的連接方式則更適合ResNet連接,模型參數(shù)量過(guò)大且難以收斂。
2.2? BiLSTM模塊
長(zhǎng)短期記憶網(wǎng)絡(luò)是一種特殊的RNN網(wǎng)絡(luò),在動(dòng)態(tài)捕獲序列特征和保存記憶信息的基礎(chǔ)上引入門控機(jī)制和記憶單元。用于緩解長(zhǎng)序列遺忘問(wèn)題的三個(gè)門控機(jī)制分別為遺忘門、輸入門和輸出門,這種門控機(jī)制通過(guò)對(duì)記憶單元的信息進(jìn)行有效遺忘和記憶,能夠?qū)W習(xí)到長(zhǎng)期依賴并解決了不同長(zhǎng)度輸入和RNN容易產(chǎn)生梯度消失和爆炸的問(wèn)題。BiLSTM是對(duì)長(zhǎng)短期記憶網(wǎng)絡(luò)的一種優(yōu)化改進(jìn),使用正向和反向長(zhǎng)短期記憶網(wǎng)絡(luò)來(lái)提取隱藏的前向語(yǔ)義信息和后向語(yǔ)義信息,實(shí)現(xiàn)對(duì)上下文數(shù)據(jù)的充分利用。
2.3? CRF模塊
通常,基于概率統(tǒng)計(jì)的機(jī)器學(xué)習(xí)和深度學(xué)習(xí)都是將命名實(shí)體識(shí)別任務(wù)視作序列標(biāo)注問(wèn)題,所以多采用Softmax等分類器完成多分類任務(wù)。但Softmax分類器忽略了預(yù)測(cè)標(biāo)簽之間的依存關(guān)系,而依存關(guān)系是命名實(shí)體識(shí)別中重要的機(jī)制。條件隨機(jī)場(chǎng)模型可以考慮標(biāo)簽序列的全局關(guān)系,得到全局最優(yōu)的標(biāo)注序列。
3? 實(shí)驗(yàn)與分析
本文采用控制變量的方法進(jìn)行實(shí)驗(yàn)設(shè)計(jì),為了驗(yàn)證傅立葉卷積網(wǎng)絡(luò)FTCN的性能和各個(gè)結(jié)構(gòu)對(duì)性能提升的占比,將采用統(tǒng)一的數(shù)據(jù)處理方法、相同的運(yùn)行環(huán)境和訓(xùn)練參數(shù)設(shè)置。模型的差異度僅存在于不同的結(jié)構(gòu)構(gòu)成,共同部分確保一致。在每輪實(shí)驗(yàn)中都讓模型得到充分訓(xùn)練,并采用多輪測(cè)試取平均的方式作為最終的性能指標(biāo),排除隨機(jī)性和其他實(shí)驗(yàn)干擾。
3.1? 實(shí)驗(yàn)數(shù)據(jù)及評(píng)價(jià)指標(biāo)
本文使用中文細(xì)粒度命名實(shí)體識(shí)別數(shù)據(jù)集CLUENER 2020,本數(shù)據(jù)是在清華大學(xué)開(kāi)源的文本分類數(shù)據(jù)集THUCTC基礎(chǔ)上,選出部分?jǐn)?shù)據(jù)進(jìn)行細(xì)粒度命名實(shí)體標(biāo)注。CLUENER2020采用四元標(biāo)記集{B,I,O,S},標(biāo)注了包括組織、姓名、地址、公司、政府、書名、游戲、電影、組織機(jī)構(gòu)和景點(diǎn)共計(jì)10個(gè)標(biāo)簽類型。其中B表示命名實(shí)體的第一個(gè)詞,I表示命名實(shí)體的其余詞,O表示非命名實(shí)體詞,S則表示命名實(shí)體為單個(gè)字符。與其他可用的中文數(shù)據(jù)集相比,CLUENER2020被標(biāo)注了更多的類別和細(xì)節(jié),具有更高的挑戰(zhàn)性和難度。CLUENER2020數(shù)據(jù)集的信息統(tǒng)計(jì)如表1所列。
為了衡量模型的性能,實(shí)驗(yàn)采用綜合所有標(biāo)簽的準(zhǔn)確率(Precision,P)、召回率(Recall,R)和F值(F1-score)作為評(píng)價(jià)指標(biāo)。具體計(jì)算公式如下:
其中,ρ=1,表示準(zhǔn)確率和召回率權(quán)重相同,此處F值即為F1值。
3.2? 模型搭建和參數(shù)設(shè)置
實(shí)驗(yàn)使用PyTorch搭建模型,并保證模型的數(shù)據(jù)處理和訓(xùn)練、測(cè)試部分代碼的一致性。PyTorch是一個(gè)基于Torch的Python開(kāi)源機(jī)器學(xué)習(xí)庫(kù),用于自然語(yǔ)言處理等應(yīng)用程序。實(shí)驗(yàn)所涉及模型的參數(shù)設(shè)置如下:輸入維度為128,訓(xùn)練集和測(cè)試集的batch_size為32,訓(xùn)練學(xué)習(xí)率為0.01,dropout參數(shù)均為0.5,F(xiàn)TCN中卷積核kernel_size設(shè)置為3和5并保證輸出維數(shù)與輸入維數(shù)一致。
3.3? 實(shí)驗(yàn)結(jié)果
在CLUENER2020數(shù)據(jù)集上,為了有效驗(yàn)證FTCN模型的性能,本文采用以下四種方法進(jìn)行實(shí)驗(yàn)設(shè)置:CLUENER2020數(shù)據(jù)集中的基線模型BiLSTM-CRF、采用FTCN解碼模塊的FTCN(encoder)-CRF、將FTCN解碼模塊中卷積神經(jīng)網(wǎng)絡(luò)替換為transformer中前饋神經(jīng)網(wǎng)絡(luò)的FTNN(encoder)-BiLSTM-CRF和本文提出的FTCN模型。實(shí)驗(yàn)結(jié)果如表2所示。
從表2中可以看出,BiLSTM-CRF的F1值為69.90%相較于CLUENER2020數(shù)據(jù)集中提出的基線模型取得了相近的結(jié)果;FTCN(encoder)-CRF模型由于缺少BiLSTM模塊所以取得較差的成績(jī);FTNN(encoder)-BiLSTM-CRF由于FNN導(dǎo)致編碼模塊的特征提取能力不足;本文提出的FTCN模型在準(zhǔn)確率、召回率和F1值三項(xiàng)評(píng)價(jià)指標(biāo)上均取得了最優(yōu),對(duì)比CLUENER2020提出的baseline即BiLSTM-CRF模型將F1值從70%提升至72.48%,提升幅度約為3.54%,并且模型訓(xùn)練速度顯著提升,收斂更為迅速。
4? 結(jié)? 論
本文提出了一種全新的端到端神經(jīng)網(wǎng)絡(luò)FTCN,并將其應(yīng)用于中文命名實(shí)體識(shí)別任務(wù)中且在CLUENER2020中文細(xì)粒度命名識(shí)別數(shù)據(jù)集上驗(yàn)證了模型的性能。該模型的編碼模塊使用類似Transformer編碼的架構(gòu),使用傅立葉變換子層取代了Transformer中的自注意力子層,并選擇更適合自然語(yǔ)言處理任務(wù)的卷積神經(jīng)網(wǎng)絡(luò)代替前饋神經(jīng)網(wǎng)絡(luò)。在降低模型參數(shù)量的基礎(chǔ)上,提升了模型的并行程度,充分挖掘上下文字符間的語(yǔ)義信息,提升了命名實(shí)體識(shí)別的性能。
參考文獻(xiàn):
[1] HUANG Z,XU W,YU K. Bidirectional LSTM-CRF models for sequence tagging [J/OL].arXiv:1508.01991 [cs.CL].[2021-11-02].https://arxiv.org/abs/1508.01991.
[2] VASWANI A,SHAZEER N,PARMAR N,et al. Attention is all you need [J/OL] arXiv:1706.03762 [cs.CL].[2021-11-02].https://doi.org/10.48550/arXiv.1706.03762.
[3] XU L,DONG Q,LIAO Y,et al. CLUENER2020:fine-grained named entity recognition dataset and benchmark for Chinese [J/OL].arXiv:2001.04351 [cs.CL].[2021-11-05].https://doi.org/10.48550/arXiv.2001.04351.
[4] PINHEIRO P O,COLLOBERT R. Weakly Supervised Semantic Segmentation with Convolutional Networks [J].arXiv:1411.6228 [cs.CV].[2021-11-03].https://arxiv.org/abs/1411.6228.
[5] LEE-THORP J,AINSLIE J,ECKSTEIN I,et al. FNet:Mixing Tokens with Fourier Transforms [J].arXiv:2105.03824 [cs.CL].https://doi.org/10.48550/arXiv.2105.03824.
作者簡(jiǎn)介:李彪(1996—),男,漢族,安徽蚌埠人,碩士研究生在讀,研究方向:人工智能、自然語(yǔ)言處理、數(shù)據(jù)挖掘。