楊 璐 張 恬 鄭麗敏,2 田立軍
(1.中國農業大學信息與電氣工程學院, 北京 100083; 2.食品質量與安全北京實驗室, 北京 100083)
獸藥殘留會對人體健康造成巨大危害[1]。文獻[2]提出了一種根據獸藥通過環境間接接觸人類的可能性及其毒性概況來對獸藥進行排序的方法,但是由于許多數據缺失,所以準確性不高。如何快速準確地從獸藥致病文本中獲得相關信息,是構建獸藥致病知識圖譜中的關鍵環節。獸藥致病命名實體識別是獸藥致病信息抽取的重要任務之一,目的是從獸藥致病非結構化文本數據中獲得獸藥名稱、實驗動物、不良反應等信息。
命名實體識別的方法包含基于規則、機器學習和深度學習三大類?;谝巹t的命名實體識別的方法耗時耗力且可移植性差[3]。基于機器學習的方法將命名實體識別問題轉化為序列標注問題,如文獻[4]采用條件隨機場(Conditional random field,CRF)進行命名實體識別,文獻[5]采用CRF對農業病蟲害實體進行識別。但是傳統的機器學習方法仍然需要人工選取特征[6]。
基于深度學習的命名實體識別方法廣泛應用于漁業[7]、農業病蟲害[8]、電子病歷[9]、醫學文獻[10]和新聞社論[11]等領域。文獻[12]采用LSTM和CRF對文獻中藥物名稱進行命名實體識別,在DDI2011語料庫上精度達到93.26%。文獻[13]首次聯合采用BiLSTM和CRF進行命名實體識別,獲得了F1值為90.10%?;贐iLSTM方法學習文本的長距離依賴,相較于LSTM方法,可以充分結合上下文信息,同時CRF可以獲得相鄰標簽之間的依賴關系。雙向編碼表征模型(Bidirectional encoder representations from transformers,BERT)[14]的出現提升了命名實體識別的效率,文獻[15]采用雙向編碼表征-雙向門限循環-條件隨機場模型(Bidirectional encoder representations from transformers-Bidirectional gated recurrent unit-Conditional random field,BERT-BiGRU-CRF)進行命名實體識別,解決了傳統的詞向量表示方法只是將字映射為單一向量,無法表征字的多義性的問題,在MSRA語料上的F1值達到95.43%。文獻[16]采用BERT-BiLSTM-CRF模型對人民日報語料庫進行命名實體識別, F1值為95.67%。基于深度學習的方法命名實體識別任務轉化為字級別的序列標注任務,減少了特征工程的工作量,同時結合了上下文信息,提高了模型的性能,但是需要大量的標注語料。
基于注意力機制的神經網絡是深度學習研究的一個熱點。受人類觀察圖像時會對特定部分集中注意力的啟發,注意力機制首先應用在圖像處理領域。文獻[17]將模型最后層的輸出和中間層的輸出結合起來,在圖像分類領域和圖像分割領域[18]取得了較好的結果。注意力機制[19]在自然語言處理領域也得到廣泛應用。文獻[20]提出使用注意力機制將字級別和詞級別的嵌入結合起來,可以獲得更好的結果。文獻[21]分析使用不同的注意力計算函數對于命名實體識別模型的影響。
發布于有害物質數據庫的獸藥致病文本表達不規范,沒有特定的規則,且部分實體詞長度較長、使用縮寫簡稱等情況,導致實體識別難度較大。獸藥致病實體詞匯較長是多個一般詞匯組合導致的,同一實體的縮寫簡稱也表現為多種形式。這就需要結合上下文,充分利用詞匯的句法和語法信息,而不能僅僅依靠基于統計的方法來設計規則。針對這一問題,本文采用預訓練語言模型的方法,學習包含獸藥致病領域上下文語義信息的詞向量,提出基于注意力機制的端到端的Att-Aux-BERT-BiLSTM-CRF神經網絡模型。首先將獸藥致病領域命名實體識別任務轉換為字級別的序列標注任務,然后基于BERT進行字向量的提取,使用BERT中文預訓練獸藥致病領域詞向量作為BiLSTM網絡的輸入,將模型的BERT層輸出用作輔助分類層,BiLSTM層輸出作為主分類層,引入皮爾遜相關系數作為注意力值計算函數,計算2個層的相似度。最后輸入條件隨機場,通過相鄰標簽的依賴關系確定輸出序列。
本文通過爬蟲獲得獸藥致病數據集。研究獸藥殘留致病信息的數據主要來自于兩個網站。有害物質數據庫(HSDB)(https:∥www.nlm.nih.gov/toxnet/index.html)是一個毒理學數據庫,著眼于分析存在潛在危險的化學物質。它提供了獸藥對于人體健康的影響和非人類毒性摘要等信息。糧農組織/世衛組織食品添加劑聯合專家委員會(JECFA)網站(https:∥apps.who.int/food-additives-contaminants-jecfa-database/search.aspx)可搜索的數據包含JECFA對風味、食品添加劑、污染物、有毒物質和獸藥進行的所有評估的摘要。每個摘要均包含基本化學信息、最新報告、專著的鏈接、規格數據庫以及JECFA評估的歷史記錄。可通過部分名稱或編號來搜索數據。
《食品安全國家標準 食品中獸藥最大限量》中規定的獸藥共包含3類:可以使用但是有殘留限制的獸藥、不需要設定殘留限制的獸藥、不得檢出的獸藥。從獸藥殘留致病的角度考慮,選擇第1類和第3類獸藥共計113種。利用爬蟲在這兩個網站中以獸藥名稱為關鍵詞進行檢索,獲得相關的獸藥致病數據,共計10 643個句子,485 711個字符。
語料庫共包含實體14 189個,具體分布如表1所示。使用BIO標注方法進行標注,B表示實體的開始,I表示實體的內部,O表示非實體。

表1 標注數據數量Tab.1 Label data quantity
本文提出的Att-Aux-BERT-BiLSTM-CRF模型由BERT模塊、BiLSTM模塊、基于注意力機制的輔助分類器和CRF模塊共4個模塊組成,模型結構如圖1所示。首先通過BERT預訓練模型獲取字向量,提取文本中的重要特征;然后使用BERT中文預訓練獸藥致病領域詞向量作為BiLSTM網絡的輸入,通過BiLSTM層學習上下文特征;將模型的BERT層輸出用作輔助分類層,BiLSTM層輸出作為主分類層,接著將這兩部分的結果通過注意力機制加權融合在一起,作為新的特征,輸入到CRF層中,得到最后的輸出序列。

圖1 Att-Aux-BERT-BiLSTM-CRF模型結構Fig.1 Att-Aux-BERT-BiLSTM-CRF model structure
在自然語言預處理領域存在Word2Vec[22]、ELMo[23]、GPT[24]等多種預訓練模型。BERT融合了這些模型的優點并克服了他們的缺點。BERT使用遮蔽語言模型(Masked language model,MLM)和下一句預測來進行預訓練。這樣得到的向量不僅包含隱含的上下文信息,還包含句子級別的特征。圖2是BERT結構示意圖。圖中EN、TN、Trm分別代表輸入的嵌入層、輸出的BIO標志、Transformers編碼器。

圖2 BERT結構示意圖Fig.2 BERT structure diagram
BERT模型中Transformer采用自注意力機制和全連接層處理輸入的文本。Transformer采用的多頭注意力機制,可以獲得多個維度的信息。本文模型將BERT的輸出結果輸入到BiLSTM層中。

Ft=σ(Wf[Ht-1,Xt+bf])
(1)
It=σ(Wi[Ht-1,Xt+bi])
(2)
(3)
(4)
Ot=σ(W0[Ht-1,Xt+bo])
(5)
Ht=Ottanh(Ct)
(6)
式中σ——sigmoid激活函數
tanh——雙曲正切激活函數
Ft、It、Ct、Ot——在t時刻遺忘門、輸入門、記憶細胞和輸出門
Wf、Wi、Wc、W0——不同門對應的權重矩陣
bf、bi、bc、bo——偏置向量

Xt——t時刻的輸入向量
Ht——t時刻的輸出向量
在計算機視覺領域,已知將模型的中間層輸出結果和最后輸出結果相結合可以改善圖像分割的性能。這是因為模型的中間層輸出結果和最后輸出結果對于圖像分割都有作用,所以將中間層的輸出結合起來進行圖像分割。本文將BERT層輸出結果作為輔助分類器,BiLSTM層輸出結果作為主分類器。BERT可以獲得豐富的語義信息,BiLSTM可以獲得長距離的上下文信息。將兩者結合起來,從而更好的進行序列標注。
注意力機制起源于對人類注意力的模仿,其本質是通過注意力分配參數篩選出特定的信息,Attention層的主要作用是衡量特征權重。在之前的Aux-BERT-BiLSTM-CRF模型中,BERT層輸出結果(輔助分類器)和BiLSTM層輸出結果(主分類器)具有相同的權重,這樣會產生兩個弊端:BERT層輸出的內容會被稀釋掉;語義向量無法表示整個序列的所有信息。使用Attention機制可以計算兩者的相關性,動態分配權重,讓更重要的特征占據更大的權重,從而獲得對于序列標注更為重要的信息。本文將BERT層輸出結果(輔助分類器)和BiLSTM輸出結果(主分類器)通過Attention機制結合起來。
在注意力層中,引入注意力機制來計算輔助分類器和主分類器的相似性得分。注意力值計算函數(Score函數)是衡量BERT層輸出向量和BiLSTM輸出向量之間相關性的得分函數。文獻[22]設計了余弦距離、歐氏距離和感知機3種方案作為得分函數。皮爾遜相關系數、馬氏距離分別是余弦距離和歐氏距離的改進,本文設計了皮爾遜相關系數、馬氏距離、感知機3種方案,其Score函數計算公式為

(7)
式中ht——BERT層輸出的結果,即輔助分類器
hs——BiLSTM層輸出的結果,即主分類器
W——權重矩陣

S——協方差矩陣
皮爾遜相關系數是數據中心化后的兩個多維向量的夾角余弦。兩個向量越相似,皮爾遜相關系數和感知機的計算結果得分越大。馬氏距離是度量學習中常用的距離指標,用于評定數據之間的相似度。使用Score函數得到兩個層的特征權重。然后通過這兩個粒度的向量特征相乘得到新的特征輸入到CRF層中。
在命名實體識別任務中,BiLSTM可以處理長距離的文本信息,但是無法處理相鄰標簽之間的依賴關系。條件隨機場(Conditional random field,CRF)可以通過臨近標簽獲得一個最優的預測序列。
對于輸入序列X=(X1,X2,…,Xn),提取特征得到輸出矩陣P=[P1P2…Pn]。對于預測序列Y=(y1,y2,…,yn),其分數函數公式為
(8)
式中Ayi,yi+1——標簽yi轉移到標簽yi+1的分數
Pi,yi——字符被預測為第yi個標簽的分數
最后使用softmax層計算出所有可能標簽的概率,輸出一個得分最高的標記序列。
實驗采用Pytorch 1.7.1框架,運行環境為RTX 2080Ti GPU,內存為11 GB。
參數配置如表2所示,為解決過擬合問題,引入dropout[26]機制,dropout值為0.5。優化算法為Adam[27]。

表2 參數配置Tab.2 Parameter configuration
采用準確率、召回率、F1值作為評估指標[28]。
在標注數據集上驗證模型的性能。語料庫中的訓練集、測試集按照8∶2進行分配,數據集之間無重疊,因此實驗結果可以作為實體識別效果的評價指標。訓練集和測試集實體數量見表3。

表3 數據集實體信息Tab.3 Dataset entity information
3.3.1不同模型的性能比較
在不同的模型上進行實驗,模型包括BiLSTM-CRF[13]、BERT-BiLSTM-CRF[15]以及本文提出的Aux-BERT-BiLSTM-CRF和Att-Aux-BERT-BiLSTM-CRF。Aux-BERT-BiLSTM-CRF模型將BERT層輸出的結果作為輔助分類器,BiLSTM層輸出的結果作為主分類器,將兩者拼接起來。Att-Aux-BERT-BiLSTM-CRF模型與前者不同之處在于,使用注意力機制,選擇皮爾遜相關系數作為注意力值計算函數公式,將兩者動態結合起來。
通過表4可知,BiLSTM-CRF模型F1值為94.1%。BERT-BiLSTM-CRF模型相較于BiLSTM-CRF模型,由于引入BERT可以獲得豐富的上下文信息,模型F1值提高了1.1個百分點。將BERT輸出的結果和BiLSTM輸出的結果通過注意力機制結合起來,通過學習判斷BERT輸出的表征和BiLSTM捕獲的長距離語義信息的重要性,按照重要程度加權結合得到新的表征,F1值為96.7%。本文提出的Att-Aux-BERT-BiLSTM-CRF模型較BERT-BiLSTM-CRF的F1值提高了1.5個百分點,較BiLSTM-CRF的F1值提高了2.6個百分點。

表4 不同模型的實驗結果對比Tab.4 Comparison of experimental results of different models %
3.3.2不同注意力值計算函數對模型的影響
本文設計了3種不同的注意力值計算函數(皮爾遜相關系數、馬氏距離、感知機)。為了選擇最佳的注意力值計算函數,設計實驗比較了這些函數對于模型性能的影響。在實驗中,BERT層輸出作為輔助分類層、BiLSTM層輸出作為主分類器層,兩者作為注意力值計算函數的輸入。表5給出了Att-Aux-BERT-BiLSTM-CRF模型在獸藥致病語料上使用不同注意力值函數計算的結果。

表5 不同注意力值計算函數的模型性能Tab.5 Influence of different attention calculation functions on model %
實驗表明,感知機效果最差,馬氏距離優于感知機,使用皮爾遜相關系數取得的效果最好,獲得了最高的F1值(96.7%)。原因可能是馬氏距離和皮爾遜相關系數是機器學習中簡單有效的相似性度量方法。兩者都對數據進行了規范化。與他們相比,感知機的結構更為復雜,更容易導致過擬合,優化更為困難。所以最終選擇實驗結果較好的皮爾遜相關系數作為注意力值計算函數。
3.3.3不同實體實驗結果比較
表6列出了Att-Aux-BERT-BiLSTM-CRF對獸藥致病數據集上各類實體的識別結果。由實驗可知,相較于藥物和不良反應,動物和攝入方式的準確率、召回率和F1值都較高。因為動物和攝入方式種類較少且不存在實體嵌套的現象,所以各項指標都較高。獸藥致病4類實體在不同模型上實驗結果對比見圖3。從圖3可以看出,Att-Aux-BERT-BiLSTM-CRF的各項指標都較高。

表6 Att-Aux-BERT-BiLSTM-CRF在各類實體上的識別結果Tab.6 Att-Aux-BERT-BiLSTM-CRF recognition results on various entities %

圖3 獸藥致病實體實驗結果對比Fig.3 Comparison of experimental results of animal drugs
3.3.4案例分析
最后,本文在pubchem數據庫中獲得獸藥致病文獻摘要,使用本文提出的Att-Aux-BERT-BiLSTM-CRF模型識別獸藥致病文獻中的實體,結果如表7所示。

表7 實體識別結果Tab.7 Entity recognition results
針對獸藥致病領域的命名實體識別任務,提出了基于Att-Aux-BERT-BiLSTM-CRF神經網絡模型的方法。通過實驗比較了3種不同注意力值計算函數(皮爾遜相關系數、馬氏距離、感知機)對于模型的影響,最終選擇了實驗結果較好的皮爾遜相關系數作為注意力值計算函數進行計算。該模型將BERT層輸出結果作為輔助分類器,BiLSTM層輸出結果作為主分類器,通過注意力機制將兩者動態加權融合在一起,豐富了語義信息。與其他典型模型相比,獲得了最優的F1值(96.7%),說明了其在獸藥致病命名實體識別方面的優越性。