?

融合SikuBERT模型與MHA的古漢語命名實體識別

2023-12-21 03:36陳雪松詹子依王浩暢
吉林大學學報(信息科學版) 2023年5期
關鍵詞:古漢語命名語料

陳雪松,詹子依,王浩暢

(東北石油大學 a.電氣信息工程學院; b.計算機與信息技術學院,黑龍江 大慶 163318)

0 引 言

漢語歷經滄桑,傳承中華文明。我國是世界上唯一一個文化傳承沒有中斷的國家,想要學習和發揚中國優秀的傳統文化,就需要從古漢語入手。如何實現使計算機對古文文本進行自動化的知識點標注,輔助學習和理解古漢語知識是當今的研究熱點。

命名實體(NE:Named Entity)一詞是在第6屆信息理解會議(MUC-6:Message Understanding Conferences)[1]上提出的,通常是指文本中具有特殊意義或根據任務需求預先定義好的實體。常見的命名實體有人名、地名、機構名等。命名實體識別(NER:Named Entity Recognition)任務主要是從自然語言文本中識別出命名實體,是自然語言處理(NLP:Natural Language Processing)的一項基礎性任務。對古文文本進行命名實體識別是對古文進行自動化知識點標注的基礎,但傳統的命名實體識別方法無法充分學習古漢語復雜的句子結構信息,并且在長序列特征提取過程中容易帶來信息損失問題。因此需要在分析古漢語語料特點的基礎上,研究命名實體識別方法,以提升古漢語命名實體識別的效果。

針對上述需要,筆者在分析古漢語句法的基礎上,結合人名、地名、組織名、職位名和書名相關重要實體的命名形式,結構特征以及分布特點,研究命名實體識別方法,提出了以BiLSTM-CRF(Bidirectional Long Short-Term Memory-Conditional Random Field)模型為基礎融合SikuBERT(Siku Bidirectional Encoder Representation from Transformers)模型和多頭注意力機制的古漢語命名實體識別方法,并進行實驗驗證,以實現對古漢語實體識別效果的提升。

1 相關工作

1.1 古漢語命名實體及語料

表1是在分析古漢語句法的基礎上,對人名、地名、組織名、職位名、書名相關重要實體的命名形式、結構特征以及分布特點的簡要分析。

表1 古漢語實體特點

從表1可看出,掌握古漢語句子結構的規律以及學習古漢語的字詞語義就能較準確理解句子,因此古漢語結構位置、語義信息對識別古漢語命名實體尤為重要。另外,古漢語的一些相關字符序列過長,模型識別實體時需要學習長距離的序列信息,可能帶來信息損失問題。

1.2 命名實體識別方法

早期使用的NER方法是基于規則匹配的方法,該方法需要專家構建規則,再從文本中查找與該規則匹配的字符串。但規則過度依賴于領域知識,可移植性極差。此時,機器學習的興起,給人們帶來了新的思路。

為了改進NER方法,人們將目光投向了隱馬爾可夫模型(HMM:Hidden Markov Model)[2]、最大熵模型(MEM:Maximum Entropy Model)[3]、支持向量機(SVM:Support Vector Machine)[4]、條件隨機場(CRF:Conditional Random Field)[5]等經典機器學習模型上。其中效果較好的是CRF模型,不僅能容納上下文信息,還能進行全局歸一化獲得最優解,在農業[6]、醫療[7]等領域都取得了較好的效果。在古漢語領域,石民等[8]提出了基于CRF的分詞標注一體化方法,有效降低了人工標注的工作量。但復雜的特征提取工作依然離不開人工的參與。此時,深度學習的出現解決了這個問題。

深度學習[9]允許由多個處理層組成的計算模型學習具有多個抽象層次的數據表示,避免了繁瑣的人工特征提取工作。經典的深度學習模型有卷積神經網絡(CNN:Convolutional Neural Network)[10]、循環神經網絡(RNN:Recurrent Neural Network)[11]等。其中,RNN因為具有較強的序列特征提取能力,在NER領域應用廣泛。Lample等[12]提出的雙向長短期記憶網絡(BiLSTM:Bidirectional Long Short-Term Memory)是在RNN的基礎上改進的,不僅在一定程度上解決了RNN存在的梯度爆炸或消失等問題,還具有獲取上下文特征的能力; 他們還將BiLSTM與CRF模型結合,在英語、德語等語料上驗證了識別的有效性。BiLSTM-CRF模型也被人們應用于NER的司法[13]、中醫[14]等多個領域,是目前較為主流的模型。同時,人們還熱衷于將BiLSTM-CRF模型作為基線模型,并根據具體的NER任務對其進行改進。例如,李麗雙等[15]構建了CNN-BiLSTM-CRF神經網絡模型,利用CNN網絡卷積獲得表示單詞形態特征的字符向量,用以補充詞向量的不足。王昊等[16]建立以字向量作為輸入的BiLSTM-CRF歷史事件元素命名實體識別模型,避免了分詞可能帶來的錯誤。

近年來,因為注意力機制(Attention)具有擴展神經網絡的能力,所以融合注意力的模型在深度學習的各個領域均得到廣泛的應用[17]。例如,在識別化學藥物命名實體時,楊培等[18]將Attention機制引入了BiLSTM-CRF模型中,提高了全文的一致性和縮寫識別的準確率。羅熹等[19]在BiLSTM-CRF模型的基礎上,結合相當于多個Attention機制拼接而成的多頭注意力(MHA:Multi-Head Attention) 機制捕獲字符間潛在的語境和語義關聯等多方面的特征,有效地提升了中文臨床命名實體的識別能力。2017年,Vaswani等[20]提出了完全依賴于Attention機制的Transformer模型,因為其具有高效并行計算能力,從而在NLP領域的應用頗為成功?;诖?Devlin等[21]提出了采用雙向Transformer編碼器結構的BERT(Bidirectional Encoder Representations from Transformers) 預訓練語言模型,能根據下游不同的NLP任務對神經網絡輸出層進行微調,提升模型的應用效果。目前常用的中文BERT是由Google官方提供的基于中文維基百科訓練的包含簡體和繁體中文的預訓練模型。與中文BERT不同,王東波等[22]提供的SikuBERT是基于《四庫全書》繁體語料在BERT上進行繼續訓練的預訓練模型,其設計面向《左傳》語料的命名實體識別等驗證任務,驗證了SikuBERT等預訓練模型具有較強的古文詞法、句法、語境學習能力和泛化能力。

因此,考慮到BERT模型[21]具有學習上下文結構位置和語義信息的能力、MHA機制[19]具有從多個角度捕獲字符間的關聯權重和降低序列信息損失的優勢,并且由于本文針對的古漢語領域的命名實體識別任務的原始語料與《四庫全書》語料更為相近,SikuBERT比中文BERT更適合于增強文本的語義表示。因此筆者在BiLSTM-CRF模型的基礎上融合SikuBERT模型與多頭注意力機制,設計一種古漢語命名實體識別方法SikuBERT-BiLSTM-MHA-CRF,以實現古漢語命名實體識別效果的提升。

2 融合SikuBERT模型與MHA的古漢語命名實體識別模型

2.1 模型整體架構設計

圖1是模型的整體架構圖,主要包括SikuBERT層、BiLSTM層、MHA層和CRF層。為充分利用古漢語實體之間的結構位置信息以及字詞的語義信息,將具有預測結構位置、語義信息能力的SikuBERT模型放到第1層對古漢語語料進行預訓練。再將SikuBERT模型輸出的信息向量輸入到第2層具有獲取上下文特征能力的BiLSTM模型中進行特征提取,使輸出字符序列,如l=[l1,l2,…,ln],具有更多的上下文信息。但BiLSTM模型不能很好地處理過長的序列,會帶來信息損失的問題,因此需要第3層MHA機制提升關鍵字符在句子中的權重,減少信息的損失。最后通過第4層具有學習標簽之間約束能力的CRF模型對MHA輸出的特征信息進行解碼,得到字符標簽序列,獲得最終的預測結果。

圖1 模型的整體架構

2.2 SikuBERT模型

BERT[21]模型是通過訓練大規模無標注語料獲得包含文本豐富信息向量的預訓練語言模型。BERT模型將字向量、文本向量、位置向量作為模型的輸入。字向量用于表示文本中字的信息,文本向量用于表示文本全局的語義信息,并將文本向量和字向量融合,由于文本不同位置的字所攜帶的語義信息不同,因此給文本中每個字附加一個位置向量用以區分。并且BERT模型的網絡結構由多層雙向Transformer編碼器結構疊加而成,使模型在學習和預測每個字時,可以參考前后雙向的文本語義信息,獲取文本的結構特點。因此BERT模型輸出的序列向量具有強大的語言表征能力。

SikuBERT與BERT的區別是預訓練時使用的語料不同,SikuBERT[22]是基于《四庫全書》繁體語料在BERT上進行繼續訓練的預訓練模型。筆者針對的古漢語領域的命名實體識別的原始語料與《四庫全書》語料更為相近,因此SikuBERT比中文BERT更加適合本文的任務,以增強文本的語義表示。

2.3 BiLSTM模型

如圖1所示,BiLSTM模型由雙向的LSTM(Long Short-Term Memory) 模型[23]組合而成,可以學習文本雙向的上下文特征。LSTM模型在RNN的基礎上,采用遺忘門f決定上一個細胞中需要拋棄的信息,輸入門i控制本細胞需要加入的信息,輸出門ο決定當前階段的輸出信息。

3個門具體的計算公式為

ft=σ(Wf[ht-1,xt]+bf),

(1)

it=σ(Wi[ht-1,xt]+bi),

(2)

ot=σ(Wo[ht-1,xt]+bo),

(3)

ct=ft·ct-1+it·tanh(Wc[ht-1,xt]+bc),

(4)

ht=ot·tanh(ct),

(5)

其中ft、it、οt分別為遺忘門、輸入門、輸出門在t時刻的結果;σ為sigmoid激活函數;W、b分別為3個門的權重矩陣和偏置矩陣;xt為t時刻的輸入內容;ht-1、ht分別為t-1、t時刻的輸出內容;ct為LSTM在t時刻的細胞狀態;·為點積運算。

LSTM通過引入“門控”的選擇機制,有選擇地保留或刪除信息,解決了RNN在處理長序列數據時容易出現的梯度爆炸或消失問題。但單向的LSTM無法保留后文的信息,因為其輸入來自前文。而雙向LSTM網絡拼接成的BiLSTM網絡可以捕捉前后文信息,獲取全局的前后文特征[12]。

2.4 多頭注意力機制

雖然BiLSTM能提取全局的前后文特征,但在處理過長的序列時會出現信息損失問題,不能充分表達文本中關鍵字的重要性。因此,在此基礎上,筆者引入多頭注意力機制給BiLSTM層的輸出向量分配不同的權重。通過分配權重,獲取詞與詞之間的相關度,使模型關注重點詞,抑制無用詞,能有效解決BiLSTM模型帶來的信息損失問題,提高模型的識別效果。

多頭注意力機制相當于多個單頭注意力機制的拼接,單頭注意力機制的計算過程為

(6)

其中A為單頭注意力機制的計算結果,S為Softmax函數,Q、K、V分別為query、key和value的簡寫,K和V是一一對應的,Q∈Rn×dk,K∈Rm×dk,V∈Rm×dk,dk為神經網絡的隱藏層單元數。首先將上層模型(如BiLSTM模型)的輸出向量通過3次不同的映射轉換成3個維度均為dk的輸入矩陣Q、K、V,再根據Q與K的相似性計算權重,并利用softmax函數對權重進行歸一化處理,最后通過與V相乘獲得權重求和結果。

與單一注意力機制相比,多頭注意力機制分別對Q、K、V的各個維度進行多次線性映射,使模型的效果更佳:

M(Q,K,V)=C(h1,…,hn)WO,

(7)

2.5 CRF推理層

條件隨機場CRF模型是指在輸入一組序列x=[x1,x2,…,xn]的情況下,輸出另一組序列y=[y1,y2,…,yn]的條件概率分布模型。CRF通過學習上層模型輸出的狀態特征關注當前位置的字符可以被轉換成哪些實體標簽,通過學習轉移特征關注當前位置和其相鄰位置的字符可以有哪些實體標簽的組合,能解決無約束標注可能帶來的錯誤標簽。預測序列y=[y1,y2,…,yn]的得分為

(8)

其中A為轉移分數矩陣;Ayi,yi+1為yi標簽轉移為標簽yi+1的概率;P為狀態分數矩陣;Pi,yi為第i個字被標記為yi的概率;n為序列長度。顯然S(x,y)越高,預測越準確。所有可能的序列路徑歸一化后得到關于預測序列y的概率為

(9)

(10)

3 實驗與分析

3.1 實驗數據的獲取與整理

該實驗主要使用的C-CLUE(Classical-Chinese Language Understanding Evaluation Benchmark) 數據集[25]是天津大學數據庫課題組基于眾包標注系統構建的文言文數據集。該系統引入“二十四史”的全部文本內容,允許用戶標注實體,并通過在線測試判斷用戶的專業度確保標注結果的準確性。該數據集被劃分為訓練集、驗證集和測試集,實體主要包括人名、地名、組織名、職位名和書名,標注采用BIO(Begin Inside Outside)標注體系。表2是本文對實際獲取的C-CLUE原始數據集的統計情況,實體主要包括人名、地名、組織名、職位名和書名,共22 502個實體。

表2 C-CLUE原始數據集的統計

從表2可看出,原始數據集標注的組織名實體、書名實體過少,甚至驗證集中標注的書名實體為0。經檢查數據集的標注情況,筆者發現數據集中各類實體標注都存在漏標的情況(見圖2),人名實體“袁紹、高幹”、職位名實體“并州牧”、地名實體“壺關口”、組織名實體“御史臺”、書名實體“《典言》”、“《質疑》”都是原始數據集中存在的漏標情況。

圖2 實體標注漏標情況的部分展示

因此筆者基于原始數據集,根據C-CLUE數據集的標注規則對實體進行了補標。表3是對實體進行補標后C-CLUE數據集的統計情況,總共有24 982個實體。

表3 當前C-CLUE數據集的統計

為驗證模型的有效性,筆者構建了自己的數據集----Siku數據集。筆者通過python對典籍《四庫全書》中的《史部》內容進行了批量獲取,并劃分為訓練集、驗證集和測試集,采用BIO標注體系對其中的人名、地名、組織名、職位名和書名實體進行標注。該數據集格式如圖3所示,其中實體類別數量如表4所示,共有25 558個實體。

圖3 Siku數據集部分展示

表4 Siku數據集的統計

3.2 實驗設計

1) 實驗環境與參數設置。實驗模型采用PyTorch深度學習框架進行搭建,主要的實驗環境如表5所示。

表5 實驗環境

經過試驗,主要的參數設置如表6所示。實驗采用Adam優化算法對參數進行優化; 在BiLSTM的輸入輸出中使用Dropout防止過擬合,取值為0.5。

表6 實驗參數設置

2) 實驗結果的評價指標。筆者采用命名實體識別常用的評價方法,用精確率(Precision,P),召回率(Recall,R)和F1值(F1-score,F1) 作為評價指標,如下:

(11)

(12)

(13)

其中TP為模型預測實體標注正確的數量;FP為模型預測實體標注錯誤的數量;FN為模型沒有預測出實體標注的數量。

3) 實驗方案。首先,BiLSTM-CRF模型是命名實體識別領域的基線模型,因此設計了與BiLSTM-CRF模型的比較實驗,并且為對比數據質量對實驗的影響,將BiLSTM-CRF模型分別在實體補標前后的C-CLUE數據集上進行實驗對比。其次,為分析多頭注意力機制以及SikuBERT模型對實體識別的影響,設計了BERT-BiLSTM-CRF、SikuBERT-BiLSTM-CRF、BERT-BiLSTM-MHA-CRF以及SikuBERT-BiLSTM-MHA-CRF模型的比較實驗,并將上述模型分別基于當前C-CLUE、Siku數據集進行實驗對比。最后,為比較當前C-CLUE數據集包含的5類特點不同的實體的識別效果,設計了不同實體的識別效果的對比實驗。

3.3 實驗結果與分析

3.3.1 模型性能綜合對比實驗

在同一實驗環境與條件下,對BiLSTM-CRF、BERT-BiLSTM-CRF、SikuBERT-BiLSTM-CRF、BERT-BiLSTM-MHA-CRF和SikuBERT-BiLSTM-MHA-CRF模型進行實驗。表7是BiLSTM-CRF模型分別在實體補標前后的C-CLUE數據集上的實驗對比結果,表8是以上模型在當前C-CLUE數據集上的實驗對比結果。圖4是以上模型在Siku數據集上的F1值對比情況。

圖4 Siku數據集上不同模型F1值結果對比

表7 BiLSTM-CRF模型在實體補標前后的C-CLUE數據集上的實驗結果對比

表8 當前C-CLUE數據集上不同模型實驗結果對比

從表7可看出,BiLSTM-CRF模型在實體補標后的C-CLUE數據集上的實驗結果好于實體補標前的實驗結果,模型識別的精確率、召回率、F1值均有較大提升。由此推測數據集質量的好壞對實驗結果產生了一定的影響,數據實體數量越多,模型的學習和預測效果越好。

從表8可看出,與BiLSTM-CRF模型相比,加入BERT預訓練模型的BERT-BiLSTM-CRF模型識別的精確率、召回率、F1值分別提升了1.27%、12.88%、7.06%,加入SikuBERT預訓練模型的SikuBERT-BiLSTM-CRF模型識別的精確率、召回率、F1值分別提升了3.74%、11.72%、7.83%,說明加入預訓練語言模型后,增加了表達結構位置、語義的信息,使模型識別效果有較大提升,并且由于SikuBERT模型預訓練時的原始語料《四庫全書》相對于BERT的中文維基百科語料更接近本實驗的古漢語語料,SikuBERT-BiLSTM-CRF模型的識別效果比BERT-BiLSTM-CRF模型也要更好一些。與BERT-BiLSTM-CRF模型相比,加入了多頭注意力機制的BERT-BiLSTM-MHA-CRF模型識別的精確率、召回率、F1值分別提升了2.65%、0.87%、1.84%,與SikuBERT-BiLSTM-CRF模型相比,加入了多頭注意力機制的SikuBERT-BiLSTM-MHA-CRF模型識別的精確率、召回率、F1值分別提升了1.11%、3.78%、2.38%,說明用多頭注意力機制增加了古漢語各類實體的權重,減少了信息損失,可以有效提升模型的識別效果。SikuBERT-BiLSTM-MHA-CRF模型比BiLSTM-CRF模型識別的精確率、召回率、F1值分別提升了3.92%、13.75%、8.9%,說明在BiLSTM-CRF模型的基礎上,融合SikuBERT模型和多頭注意力機制的SikuBERT-BiLSTM-MHA-CRF模型不僅能充分利用實體的結構位置以及語義信息,還能突出實體自身權重以及結構位置信息權重,減少信息損失,使模型實體識別更加有效。

從圖4中Siku數據集上不同模型F1值對比結果可看出,與表7類似,與其他模型相比,筆者提出的方法取得的效果最好,進一步驗證了SikuBERT-BiLSTM-MHA-CRF模型在古漢語領域的有效性、先進性與泛化能力。

3.3.2 不同類別實體識別效果對比實驗

同一環境下,基于當前的C-CLUE數據集,用5組不同模型分別對5類不同實體進行識別,實驗結果如表9所示??梢钥闯?書名實體的識別效果最好,這可能是因為書名實體周圍有較為明顯的特征,如符號“《》”,如“予觀《春秋》《國語》,其發明《五帝德》《帝系姓》章矣”,因此能使模型獲取較為明顯的特征進而有效標注。人名實體因為實體數量較多,模型的識別效果也相對不錯。而組織名實體因周圍無明顯的特征,且與上下文字符過于相似,不能很好地使模型學習到結構信息,從而導致識別效果不好。另外,筆者提出的融合SikuBERT模型和多頭注意力機制的方法在書名、地名實體上未取得最佳的效果,這可能是因為書名、地名實體數量過少,且常以并列形式出現,規律比較簡單,而提出的模型方法復雜度過高,導致過擬合,使模型識別效果下降。

表9 不同模型類別結果對比

4 結 語

筆者對古漢語領域的命名實體識別進行了研究,提出了一種融合SikuBERT模型與多頭注意力機制的古漢語命名實體識別方法。該方法利用SikuBERT模型對古漢語語料進行預訓練,將訓練得到的信息向量輸入到雙向長短期記憶網絡中提取特征,再利用多頭注意力機制給BiLSTM層的輸出向量分配不同的權重減少長序列的信息損失,最后通過條件隨機場解碼得到預測的序列標簽。在C-CLUE和Siku數據集上的實驗表明,該方法的識別效果好于常用的BiLSTM-CRF、BERT-BiLSTM-CRF等方法。

雖然本實驗模型較基線模型識別效果有較大提升,但由于部分類別實體數量過少導致其識別效果依然不夠理想。在未來的研究中,將擴大數據規模,同時針對組織名等類別實體與上下文字符過于相似,不能使模型很好地學習到結構信息等問題展開研究,以達到更好的識別效果。

猜你喜歡
古漢語命名語料
古漢語疑問句末“為”字補證
命名——助力有機化學的學習
上古漢語“施”字音義考
有一種男人以“暖”命名
為一條河命名——在白河源
基于語料調查的“連……都(也)……”出現的語義背景分析
華語電影作為真實語料在翻譯教學中的應用
《苗防備覽》中的湘西語料
談談古漢語的翻譯
國內外語用學實證研究比較:語料類型與收集方法
91香蕉高清国产线观看免费-97夜夜澡人人爽人人喊a-99久久久无码国产精品9-国产亚洲日韩欧美综合