楊 鶴,于 紅,孫哲濤,劉巨升,楊惠寧,張思佳,孫 華,姜 鑫,于英囡
(1.大連海洋大學信息工程學院,大連 116023;2.設施漁業教育部重點實驗室,大連 116023;3.遼寧省海洋信息技術重點實驗室,大連 116023)
數字漁業是中國鄉村振興戰略的重要組成部分,也是數字中國的重要內容。漁業現代化和漁業標準化是數字漁業發展的重要方向[1],漁業現代化需要智能養殖技術服務[2]做支撐,漁業標準化需要以精準的標準服務為依托。知識圖譜對解決領域問題有重要作用[3],張善文等[4]提出一種基于知識圖譜和 BiLSTM模型結合的小麥銹病預測方法,提高了病害預測的精度,為小麥條銹病的預報預警和綜合防治提供科學依據。奧德瑪等[5]利用自然語言處理和文本挖掘技術,構建了中文醫學知識圖譜CMeKG,為智慧醫療提供專業知識基礎。漁業標準知識圖譜是表示漁業標準文本中實體之間關系的語義網絡系統,是精準描述養殖技術和標準信息的重要載體,可以為漁業生產技術人員提供高質量知識,是實現智能養殖技術服務和標準精準服務的基礎。關系抽取是構建知識圖譜的關鍵技術,有效的關系抽取技術可以提升構建知識圖譜的質量和效率,進而推動漁業現代化的進程,助力鄉村振興。
漁業標準命名實體識別和漁業標準實體關系抽取是構建漁業標準知識圖譜的基礎工作。程名等[6]提出了融合注意力機制和BiLSTM+CRF的漁業標準命名實體識別,取得較好的結果,但沒有解決部分實體樣本分布稀疏,導致識別效果不好的問題。楊鶴等[7]針對該問題,提出了多元組合數據增廣方法,有效擴充了數據集,提升了命名實體識別的整體效果。上述研究可知,針對漁業標準文本命名實體識別的研究已經取得了較好效果,但還沒有針對漁業標準文本關系抽取任務的研究工作。
早期關系抽取任務主要是基于規則[8-10]和機器學習[11-12]的方法,基于規則的方法嚴重依賴于規則制定,難以解決海量信息和復雜的信息抽取任務,基于機器學習的方法可以解決這一不足,并且能夠明顯提升召回率,應用領域也更廣泛,但其需要手動提取文本特征,模型泛化能力較差。
基于深度學習的實體關系抽取方法不需要人工提取特征且具有較高精確度,近年來逐漸成為研究熱點[13-16]。丁澤源等[17]基于深度學習方法提出了中文生物醫學實體關系抽取系統,對于識別的準確率有較大提升,使更多關系得到正確識別;鄭麗敏等[18]針對實體關系抽取受中文復雜語法特性限制的問題,提出一種基于深度學習的新聞文本的實體關系抽取方法,取得較好效果。與通用領域相比,漁業標準文本領域的語料包含漁業標準號以及大量專有名詞,其信息抽取任務難點在于指標名特殊性和實體間存在較多的重疊關系,為了解決該問題,本文提出了一種基于雙重注意力機制的漁業標準實體關系抽取方法并改進了 Zheng等[19]的標注方法,提出了句式分類的標注策略。主要研究如下:針對漁業標準文本中存在大量重疊關系而傳統標注方法對重疊關系沒有明確定義這一問題,提出句式分類標注策略,添加重疊標簽,以解決漁業標準文本重疊關系無法抽取問題;為了識別結構化信息和位置信息并利用字級別注意力機制和句子級別注意力機制,更好的分配權重、排除噪音、提高準確性,提出基于雙重注意力機制與 BERT-BiLSTM-CRF的漁業標準關系抽取模型,以期為其他領域的信息抽取任務提供參考。
試驗數據來自漁業生產技術人員日常養殖參照的漁業標準文本,該類標準文本大部分以書籍、PDF文件、圖片等形式存在且缺少公開的數據集,通過爬蟲技術、圖文轉換等方法收集數據并進行人工校對,構建DLOU-FSI語料庫,共計343篇,36萬字符。
針對DLOU-FSI語料庫中7種關系類型進行抽取工作,分別為引用、規定、發布、提出、起草、歸口和比較。關系類別及實例如表1所示,在標注過程中取所有關系類別的字符拼音首位字母作為對應標簽,例如,引用關系對應“YY”標簽。

表1 漁業標準文本中的關系類型實例Table 1 Examples of relation types in fishery standard texts
通過對漁業標準文本特性分析,發現漁業標準文本中存在大量重疊關系,因此,改進了Zheng等[19]的標注方法,針對其方法無法解決重疊關系抽取問題,提出了句式分類標注策略,實體關系抽取標簽由4部分組成分別為:實體邊界[20]、關系類別、重疊句式標簽、位置標簽[21]。
Zheng等[19]的標注策略使用最近距離匹配原則抽取句子中的關系三元組,且遵循每個實體只能參與 1個關系的抽取規則,因此,其無法解決漁業標準文本中重疊關系的抽取問題。針對漁業標準文本存在的重疊關系問題,對含有重疊關系句子進行分類,主要分為3種類型,如表2所示。3種重疊關系句式分別由標簽7、8、9來定義,其中7表示普通關系類型即單個實體1對應單個實體2,生成一個三元組。8表示一對多重疊關系即單個實體1對應多個實體2,生成多個三元組。9表示多對一重疊關系即為多個實體1對應單個實體2,生成多個三元組。通過不同的標簽來決定三元組的組成方式。漁業標準文本中的三種重疊關系句式類型如表2所示。

表2 漁業標準文本中的關系句式類型實例Table 2 Examples of relation sentence types in fishery standard texts
實體位置標簽是由1和2來定義的,1表示該實體是三元組中的頭實體,2表示該實體是三元組中的尾實體。當實體位置標簽為1時,向后查找最近的實體2與之匹配,當實體位置標簽為2時,向前查找最近的實體1進行匹配。普通關系類型最后抽取結果為:{實體 1,關系類型,實體 2}。在一對多重疊關系類中抽取結果為:多組{實體1,關系類型,實體2(1、2、3....n)}。在多對一重疊關系類中抽取結果為:多組{實體1(1、2、3....n),關系類型,實體2}。句式標注實例如圖1所示。
針對漁業標準文本實體關系抽取任務中長序列前段語義稀釋和向量權重分配不合理的問題,提出了基于雙重注意力機制與 BERT-BiLSTM-CRF( Bidirectional Encoder Representations from Transformers-Bi-directional Long Short-Term Memory-Conditional Random Field)漁業標準實體關系抽取模型。自下而上分別為:BERT層、BiLSTM層、字注意力機制、句子注意力機制和 CRF輸出層五部分。BERT模型是預訓練模型,利用其雙層雙向轉換解碼的特性,自動學習句子特征信息,獲取句子的向量表示;BiLSTM模型從BERT輸出中學習到目標實體的上下文特征信息;字級別和句子級別注意力機制層用來提高目標詞語和句子在段落中的權重;CRF解碼器把注意力機制層的輸出以序列標簽形式輸出?;陔p重注意力機制與BERT-BiLSTM-CRF模型框架如圖2所示。
BERT預訓練模型網絡架構使用了多層 Transformer編碼器[22]進行編碼,隨后采用自注意力機制將句子中的每一個詞建立了線性相關,得到更為全面的詞向量、段向量和位置向量,有效解決了自然語言處理任務中長期依賴問題。
在漁業標準文本實體關系抽取任務中,漁業標準號結構較為復雜均是由多個字母、數字組合而成,所以詞向量、段向量和位置向量在漁業標準文本任務中具有重要作用,同時 BERT模型可以獲取更多特征信息和上下文信息,提升實體關系識別效果。因此將 BERT模型引入漁業標準實體關系抽取模型框架中。BERT模型輸入表示實例如圖3所示。
為了解決RNN在自然語言處理任務中容易出現梯度消失和梯度爆炸問題,研究者們提出了LSTM,LSTM是一種特殊的循環神經網絡模型,可以實現長序列記憶功能。通過對漁業標準文本的分析發現,漁業標準文本中實體長度較長,且與上下文存在著較大依賴關系,雖然LSTM解決了文本任務中長距離依賴問題,但是只能得到目標實體的上文信息,所以引用 BiLSTM[23]模型取代LSTM模型。BiLSTM模型是由正反兩個LSTM模型疊加而成,彌補了目標實體無法接取到下文信息的問題。BiLSTM模型結構如圖4所示。
注意力機制提出后在計算機視覺領域得到了廣泛應用[24-26],后被引入文本領域[27]。本文采用雙重注意力機制,分別為字注意力機制和句子注意力機制。字注意力機制是在一個句子中將更高的權重賦予需要抽取的目標字符,例如:GB/T27520—2011規定了暗紋東方鲀的種質檢測,抽取結果為{GB/T27520—2011,規定,暗紋東方鲀的種質檢測},基于字注意力機制在抽取過程中會賦予“規”“定”及兩個實體更高的權重以得到正確結果。在進行關系抽取任務過程中語料內很多句子不包含關系三元組,不能作為我們目標句子進行關系抽取,例如:暗紋東方鲀為一次產卵型魚類。雖然包含了暗紋東方鲀實體但是不存在關系三元組,對關系抽取任務是無效的,因此使用句子注意力機制對存在關系三元組的目標句子賦予更高的權重,能夠有效地提高關系抽取結果。因此引用了字級別和句子級別雙層注意力機制,相對于單層注意力機制能夠更好地排除噪音干擾,提高準確性。
2.3.1 字級別注意力
基于字級別注意力機制:通過計算每個字符與預測目標實體的匹配程度,構建字級別的權重矩陣,將字向量組合成句子向量,從而得到每一個句子的分布式表達,具體算法[28]流程如下
式中H是上一層BiLSTM的輸出集合;M是全連接的隱藏表示;α是權重矩陣;β是訓練好的參數;βT和T α為β和α的轉置;r′是句子分布式表達式;r為最終分類句子表達式。
2.3.2 句子級別注意力
基于句子級別注意力機制:以字注意力機制層的輸出作為輸入,通過計算每個實體對句子與預測的關系類匹配程度,構建句子級別權重矩陣,最終得到句子的向量表示,具體算法[29]流程如下
式中s是字注意力機制層的輸出向量表示;αi是每個句子向量ri的權重;函數ki表示每個句子ri與輸入句子r預測關系的準確性;N為權重α的對角矩陣;T為所有關系向量組成矩陣;s為實值向量;b是偏置矩陣;O為神經網絡的輸出。
CRF層[30]以BERT層、BiLSTM層和雙重注意力機制層提取的上下文特征向量為輸入,其主要功能是對語句進行序列標注。CRF能充分考慮到標簽與標簽的依賴關系,利用先前學習到的正確標簽信息,來為當前位置進行標簽預測,在輸出標簽時,CRF模型可以為標簽添加約束,避免出現不合法的標簽輸出序列,輸出全局最優解。
在進行關系抽取的標注任務中,對于目標句子X(x1,x2,x3...xi)的識別與標注流程為:首先,通過學習特征向量與標注結果的依賴關系,獲得特征到標簽的預測概率,由此得到每一個字符xi對應的標簽,得到句子X預測的標簽序列y(y1,y2,y3...yi),最后,運用句式分布的標注策略對預測的標簽序列Y進行約束和調整,即可得到目標句子X的最佳標簽序列。CRF層具體算法流程如下
式中A為轉移矩陣,Pi,yi表示句子中第i個字的第y個標簽的概率;輸入序列為X;輸出序列為y。
本文全部試驗都是在Windows 10下進行,所使用顯卡為GeForce RTX 2080Ti,其配置如表3所示。

表3 GeForce RTX 2080Ti顯卡配置Table 3 GeForce RTX 2080Ti graphics card configuration
試驗環境為基于Google公司的機器學習框架Keras,Python版本為3.6。整個網絡的權重按照均值為0,標準差為0.1的高斯分布進行初始化??紤]到Adam優化算法[31]具有所占資源少,模型收斂快等優點,因此采用Adam 算法。
本文還對模型的學習率(learning rate)、丟棄率(dropout)、批次處理大小(batch-size)和迭代次數(Epoch)4個模型參數對模型性能影響進行分析,具體如圖5所示。初始學習率的設定會對模型的識別效果產生影響,過大會導致模型不收斂,過小則導致模型收斂特別慢或者無法學習,通過試驗發現,選用初始學習率為0.002時模型的效果較佳。丟棄率可以有效緩解過擬合的發生,在一定程度上達到正則化的效果,結果表明,當丟棄率為0.5時模型擬合程度較好。批量處理大小決定了數量梯度下降的方向,選用批量處理大小為32時效果較佳,過小則更難以收斂,噪聲也相應增加,過大則會使梯度方向基本穩定,容易陷入局部最優解,降低精度。隨著迭代次數增加,模型的準確率也隨之增加,當迭代次數達到150次時模型的F1值達到最高值92.67%,隨后模型的識別精度趨于穩定。
對漁業標準文本實體關系抽取任務結果,使用 3個評價指標[32]分別為準確率(Precision)、召回率(Recall)、F1值(F1-score),F1值是P值和R值的綜合評價指標。
試驗使用DLOU-FSI語料庫(36萬字符),按8∶2的比例隨機分成兩部分,其中28.8萬字符作為訓練集,7.2萬字符作為測試集,消除試驗過程中訓練集和測試集不同帶來的結果誤差。
為了驗證所提出句式分類的標注策略和基于雙重注意力機制與BERT-BiLSTM-CRF模型對漁業標準文本實體關系抽取效果的提升,設計了 3組對比試驗分別為:標記方法間效果對比試驗、添加不同注意力機制性能對比和模型對所有關系類別提升效果對比。
為了驗證提出的句式分類標注策略能有效解決漁業標準文本中的重疊關系,分別使用 Zheng等[19]的標注策略和句式分類標注策略(our method),進行語料標注。試驗采用本文提出的 BERT-BiLSTM-Att(s)-CRF模型和 DLOU-FSI語料庫,對所有關系類型進行抽取任務,試驗結果如表4所示。

表4 不同標注方法對關系抽取結果影響Table 4 The effect of different labeling methods on the results of relation extraction
Zheng的標注方法采用最近距離匹配原則,并遵循每個實體只能參加 1個關系的規則,在漁業標準文本語料庫 DLOU-FSI完成關系抽取任務時會造成關系丟失,重疊關系無法抽取等問題,導致關系抽取任務召回率和F1值較低。使用句式分類的標注策略有效的解決了漁業標準文本中重疊關系無法抽取的問題,準確率、召回率和F1值分別提升了7.93個百分點、29.82個百分點和20.56個百分點,大幅度提升了關系抽取任務的召回率和F1值。說明本文提出的句式分類的標注策略有效提高了漁業標準文本實體關系抽取任務的結果。
為了驗證所提出的雙重注意力機制有助于提升漁業標準文本關系抽取任務的結果,分別在沒有添加注意力機制[33](BERT-BiLSTM-CRF)、單層字注意力機制[34](BERT-BiLSTM-Att-CRF)、雙重注意力機制(BERT-BiLSTM-Att(s)-CRF)3種情況下對所有關系類別進行實體關系抽取任務,試驗結果如表5所示。

表5 不同注意力機制的抽取結果Table 5 The extraction results of different attention
結果表明,在只添加字注意力機制情況下試驗結果有一定的提升,準確率、召回率、F1值分別達到 90.49%、89.82%、90.15%。在使用雙重注意力機制時,關系抽取結果有顯著提升,三項指標分別提升了 2.18個百分點、2.49個百分點和 2.34個百分點,說明了 BERT-BiLSTMAtt(s)-CRF模型有效提升了關系抽取整體效果。
為驗證本文提出的模型是否能夠提高所有關系類型的抽取效果,對 7種實體關系進行對比試驗,試驗結果如表6所示。

表6 漁業標準文本實體關系識別結果Table 6 Recognition result of entity relationship in fishery standard text
由表6試驗結果可知,提出的基于雙重注意力機制的BERT-BiLSTM-CRF在7種關系類別的抽取任務中識別準確率均高于其他模型。其中引用關系、規定、發布、提出、起草和歸口這6種關系類別準確率、召回率和F1值均有較大的提升均達到 90%以上,其原因是,本文提出的模型能夠充分地利用句子結構信息,更好地分配權重,適配于漁業標準文本的關系抽取任務。但在比較關系類別對比試驗中,隨著模型算法的改進,關系抽取結果并沒有得到較大提升,召回率還有些許回落。通過分析發現其原因是,比較關系這一關系類別句子樣本分布稀疏,在 DLOU-FSI語料庫中,每篇漁業標準文本只包含0-3個比較關系三元組,不足所有關系類三元組總數的1%,使模型無法學習到更全面的關系特征,導致實體關系抽取任務識別效果較差。
由上述分析可知,在漁業標準文本關系抽取任務中,除了模型算法的改進,語料庫質量也十分重要,深度學習模型訓練學習數據越多質量越高,模型識別效果也就越準確。在模型算法適配的情況下,試驗結果達到一定數值且無法有較大提升時,需要對數據進行有效擴充,增加樣本數量和多樣性,以提升關系抽取的整體效果。
1)針對漁業標準文本中存在大量重疊關系等問題,提出了一種句式分類的標注方法,通過重疊關系標簽解決了重疊關系無法抽取的問題,為其他領域關系抽取任務提供了新思路。
2)提出基于雙重注意力機制與BERT-BiLSTM-CRF的漁業標準實體關系抽取模型,利用模型框架中的字級別注意力機制和句子級別注意力機制更好的分配權重,排除噪音,提高實體關系抽取的識別精度,準確率、召回率、F1值達到了92.67%、92.31%、92.49%,為構建漁業標準知識圖譜提供參考。
在漁業標準文本中仍存在一些有抽取意義的關系三元組,由于其樣本稀疏且句式多樣導致抽取效果不夠好,例如“比較”關系。因此,下一步工作是如何提高少樣本關系類別的抽取結果,以提升漁業標準文本實體關系抽取的整體結果。