代建華,彭若瑤,許路,蔣超,曾道建,李揚(yáng)定
湖南師范大學(xué) 語言與文化研究院/智能計算與語言信息處理湖南省重點實驗室, 長沙 410081
信息抽取旨在從非結(jié)構(gòu)化文本中抽取出結(jié)構(gòu)化的信息, 例如從病人的醫(yī)療記錄中抽取出癥狀、 檢驗結(jié)果等一系列信息, 主要包括實體抽取、 實體關(guān)系抽取、 事件抽取和事件關(guān)系抽取等任務(wù)[1]. 實體抽取也稱為命名實體識別(Named Entity Recognition, NER), 是指從文本中抽取出具有特定意義的實體, 如人名、 地名、 機(jī)構(gòu)名、 專有名詞等, 命名實體識別在各種自然語言處理應(yīng)用中發(fā)揮著重要作用. 實體關(guān)系抽取則是判斷2個實體之間的語義關(guān)系. 事件抽取任務(wù)旨在識別特定類型的事件, 并把事件中擔(dān)任既定角色的要素以結(jié)構(gòu)化的形式呈現(xiàn)出來, 該任務(wù)可進(jìn)一步分解為4個子任務(wù): 觸發(fā)詞識別、 事件類型分類、 事件論元識別和角色分類任務(wù). 其中, 觸發(fā)詞識別即識別出句子中促使事件發(fā)生的核心詞, 通常是名詞或者動詞. 例如, “2008年北京舉辦了奧運(yùn)會”中的“奧運(yùn)會”就是名詞性觸發(fā)詞. 對于事件類型分類旨在判斷句子中觸發(fā)詞所對應(yīng)的事件類型, 包括出生、 結(jié)婚、 死亡等. 事件論元識別即識別出事件中的論元, 也就是事件的參與者, 主要由實體、 值、 時間組成. 角色分類則是判斷句子中觸發(fā)詞和實體之間的角色關(guān)系, 如攻擊者、 受害者等. 事件抽取屬于信息抽取領(lǐng)域中的深層次研究內(nèi)容, 它需要前述的幾項研究作為基礎(chǔ), 涉及自然語言處理、 機(jī)器學(xué)習(xí)、 模式匹配等多個學(xué)科的方法與技術(shù), 在信息抽取、 情報學(xué)等領(lǐng)域都有很好的應(yīng)用前景. 事件關(guān)系反映了事件之間的一種語義關(guān)系, 可以為文本的深層理解提供關(guān)鍵線索, 事件關(guān)系抽取的目的則是提取一段文本內(nèi)容中2個事件可能存在的關(guān)系, 例如“昨天突然降溫導(dǎo)致小王感冒了, 所以昨晚去了醫(yī)院”, 其中事件對(降溫, 感冒)、 (感冒, 去醫(yī)院)存在因果關(guān)系. 事件之間存在多少種關(guān)系類型仍然是一個有爭議的問題, 目前事件關(guān)系抽取主要研究共指關(guān)系、 因果關(guān)系和時序關(guān)系, 此外關(guān)系文本的多樣性和隱含性使得從文本中識別不同類型的事件關(guān)系面臨巨大挑戰(zhàn).
自20世紀(jì)80年代信息理解會議(Message Understanding Conference, MUC)提出信息抽取任務(wù)以來, 信息抽取一直是自然語言處理的研究熱點. 早期主要采用基于規(guī)則的方法, 該類方法依靠人工制定規(guī)則, 其優(yōu)點是可解釋性強(qiáng)而且不需要太多已標(biāo)注的語料庫, 但是總結(jié)規(guī)則模板耗時長且模板可移植性差, 此外規(guī)則和詞典的維護(hù)任務(wù)也很繁重. 由于該類方法的諸多限制, 研究人員開始使用統(tǒng)計模型輔助機(jī)器學(xué)習(xí)算法來進(jìn)行信息抽取, 主要通過一些統(tǒng)計學(xué)的手段對文本的一些特征信息進(jìn)行統(tǒng)計, 然后利用機(jī)器學(xué)習(xí)擬合從輸入到輸出過程中的模型參數(shù). 隨著深度學(xué)習(xí)時代的來臨, 基于深度學(xué)習(xí)的信息抽取模型受到廣泛關(guān)注, 研究者主要聚焦于如何使用深度學(xué)習(xí)方法自動提取句子中的有效特征, 不僅可以彌補(bǔ)傳統(tǒng)工程的缺點, 還可以避免使用傳統(tǒng)自然語言處理工具抽取特征時存在的錯誤累積問題[2]. 隨著研究的深入, 特別是大規(guī)模預(yù)訓(xùn)練語言模型(Pre-trained Language Models, PLMs)的引入[3], 基于深度神經(jīng)網(wǎng)絡(luò)的信息抽取模型在公開數(shù)據(jù)集取得了不錯的成績. 信息抽取技術(shù)是中文信息處理和人工智能的核心技術(shù), 具有重要的科學(xué)意義. 通過將文本所表述的信息結(jié)構(gòu)化和語義化, 信息抽取技術(shù)提供了分析非結(jié)構(gòu)化文本的有效手段, 是實現(xiàn)大數(shù)據(jù)資源化、 知識化和普適化的核心技術(shù). 被抽取出來的信息通常具有結(jié)構(gòu)化的形式描述, 計算機(jī)可以直接處理, 從而實現(xiàn)對海量非結(jié)構(gòu)化數(shù)據(jù)的分析、 組織、 管理、 計算、 查詢和推理, 并進(jìn)一步為更高層面的應(yīng)用和任務(wù)(如自然語言理解、 知識庫構(gòu)建、 智能問答系統(tǒng)、 輿情分析系統(tǒng))提供支撐. 本文將對基于深度神經(jīng)網(wǎng)絡(luò)的信息抽取相關(guān)研究工作進(jìn)行綜述.
信息抽取的核心是將非結(jié)構(gòu)化的自然語言映射為結(jié)構(gòu)化表示, 并轉(zhuǎn)換為可供計算機(jī)處理的知識. 然而, 自然語言表達(dá)具有多樣性、 歧義性和結(jié)構(gòu)性的特點, 其中蘊(yùn)含的知識也具有復(fù)雜性、 開放性以及規(guī)模巨大的特點, 進(jìn)而導(dǎo)致信息抽取任務(wù)極具挑戰(zhàn)性.
在早期, 大部分信息抽取系統(tǒng)采用基于規(guī)則的方法, 該類方法依靠人工制定抽取模板, 優(yōu)點是可預(yù)判和解釋, 但這種方法有其自身的局限性, 如移植性差, 很多場景很難甚至無法總結(jié)出有效的規(guī)則. 自90年代以來, 統(tǒng)計模型成為主流方法, 通常將信息抽取任務(wù)形式化為從文本輸入到特定目標(biāo)結(jié)構(gòu)的預(yù)測, 使用統(tǒng)計模型來建模輸入與輸出之間的映射, 并使用機(jī)器學(xué)習(xí)方法來學(xué)習(xí)模型參數(shù). 隨著深度學(xué)習(xí)時代的來臨, 研究者開始探索如何使用深度神經(jīng)網(wǎng)絡(luò)自動學(xué)習(xí)有區(qū)分性的特征, 進(jìn)而避免使用傳統(tǒng)自然語言處理抽取特征時存在的錯誤累積問題[2]. 隨著研究的深入, 大規(guī)模預(yù)訓(xùn)練語言模型[3]加下游任務(wù)微調(diào)的范式成為主流, 基于深度神經(jīng)網(wǎng)絡(luò)的信息抽取模型性能得到很大提升.
實體抽取也稱為命名實體識別, 是自然語言處理領(lǐng)域的基礎(chǔ)且重要任務(wù)之一, 其目標(biāo)是從非結(jié)構(gòu)化的文本中抽取出具有特定意義或者指代性強(qiáng)的實體, 實體抽取任務(wù)是文本理解、 機(jī)器翻譯、 信息檢索、 知識庫建設(shè)等眾多自然語言處理任務(wù)的基礎(chǔ)工具. 最早在第六屆信息理解會議(MUC6)上提出“命名實體”并闡明了人員、 組織和本地化的語義識別以及時間和數(shù)量等數(shù)字表達(dá)式的重要性. 自MUC6以來, 研究人員對實體抽取的研究興趣越來越濃厚. 傳統(tǒng)的實體抽取方法主要分為三大類: 基于規(guī)則的方法、 基于無監(jiān)督學(xué)習(xí)的方法、 基于有監(jiān)督學(xué)習(xí)的方法.
早期的實體抽取系統(tǒng)使用手工構(gòu)造的基于規(guī)則的算法, 這類算法通過選擇標(biāo)點符號、 關(guān)鍵字、 指示詞等特征, 采用專家構(gòu)造的規(guī)則模板, 通過模式和字符串匹配手段來識別實體, 這類算法往往依賴于知識庫或者詞典. 1991年Rau在第7屆IEEE人工智能應(yīng)用會議上首次發(fā)表了抽取和識別公司名稱的研究成果, 該成果主要采用啟發(fā)式算法和手工編寫規(guī)則的方法[4]. 隨后, 多個基于規(guī)則的命名實體識別系統(tǒng)被相繼提出. 基于規(guī)則的方法不僅可解釋性強(qiáng)而且不需要太多已標(biāo)注好的語料庫, 但其局限性在于構(gòu)建成本高, 且規(guī)則針對特定領(lǐng)域, 擴(kuò)展性較差. 無監(jiān)督學(xué)習(xí)的方法主要是基于聚類, 通常根據(jù)上下文相似度, 利用分布統(tǒng)計信息從未標(biāo)記的文本中提取出實體. 隨著大量標(biāo)準(zhǔn)語料的出現(xiàn), 研究者開發(fā)了許多基于監(jiān)督學(xué)習(xí)的實體抽取系統(tǒng), 該方法通常將實體抽取任務(wù)轉(zhuǎn)換為多分類任務(wù)或者序列標(biāo)注任務(wù), 其主要步驟是從訓(xùn)練樣本中學(xué)習(xí)出一個函數(shù), 通過這個函數(shù)預(yù)測出新樣本的結(jié)果. 上述這些方法在很大程度上依賴于特征工程和特定的訓(xùn)練數(shù)據(jù), 當(dāng)設(shè)計的特征不適合任務(wù)時, 可能會導(dǎo)致誤差傳播的問題.
近年來, 深度學(xué)習(xí)成為了主流, 并受到了各大領(lǐng)域的廣泛關(guān)注, 在過去幾年里, 深度神經(jīng)網(wǎng)絡(luò)也被引入到實體抽取任務(wù)中來并取得了顯著的成功, 針對該任務(wù)提出了各種各樣的深度神經(jīng)網(wǎng)絡(luò)模型. 深度神經(jīng)網(wǎng)絡(luò)具有強(qiáng)大的特征提取能力, 能夠自動學(xué)習(xí)任務(wù)所需的有效特征. 循環(huán)神經(jīng)網(wǎng)絡(luò)(Recurrent Neural Network, RNN)、 門控循環(huán)單元(Gated Recurrent Unit, GRU)、 長短期記憶網(wǎng)絡(luò)(Long Short-Term Memory, LSTM)等模型在序列數(shù)據(jù)建模方面取得了顯著成績, 這些神經(jīng)網(wǎng)絡(luò)模型中往往使用的都是詞向量表示, 對于詞表外的詞則無法得到很好的表示, 因此許多研究人員通過添加字符向量來解決該問題. Li等[5]提出了一種基于RNN的方法WCP-RNN來提取中文生物醫(yī)學(xué)命名實體, 不僅考慮了詞向量還加入了字符向量來捕獲正字法和詞匯語義特征, 此外還將POS標(biāo)簽作為先驗詞信息以提高最終性能. Huang等[6]借助了條件隨機(jī)場(Conditional Random Field, CRF), 提出利用BiLSTM-CRF架構(gòu)來解決命名實體識別任務(wù), BiLSTM相較于普通的RNN對長序列具有更好的建模能力, CRF也可以有效利用句子級的標(biāo)注信息, 此外該模型具有較好的魯棒性. 隨后, 一系列基于BiLSTM-CRF的工作被提出[7-8]. Lample等[8]利用BiLSTM來提取單詞的字符級表示, 提出了一種將BiLSTM與CRF結(jié)合用于英文序列標(biāo)簽預(yù)測的任務(wù). RNN對時間序列處理的很好, 但是忽略了空間上下文的問題, 因此許多研究人員將CNN引入實體抽取中獲得了不錯的性能. Ma等[7]提出的BiLSTM-CNN-CRF模型在BiLSTM-CRF中加入了CNN, 能夠提高模型提取詞語上下文特征的能力. 注意力機(jī)制[9]在機(jī)器翻譯、 圖像分類、 語音識別等許多自然語言處理應(yīng)用中發(fā)揮了巨大的優(yōu)勢, 一些研究人員試圖將其應(yīng)用于實體抽取任務(wù)中[10-11], 注意力機(jī)制有助于關(guān)注輸入序列的相關(guān)部分, 并捕捉較長序列的長期依賴, 能夠有效地從高維數(shù)據(jù)中提取特征. Zheng等[11]將卷積神經(jīng)網(wǎng)絡(luò)與局部注意力機(jī)制結(jié)合形成卷積注意力層, 用于捕捉局部上下文信息, 并在雙向門控循環(huán)單元(Bidirectional Gated Recurrent Unit, BiGRU)和CRF層中間應(yīng)用全局注意力機(jī)制優(yōu)化對句子級信息的處理. 通過大量研究結(jié)果表明, 注意力機(jī)制可以提高NER模型的性能.
BERT等大規(guī)模預(yù)訓(xùn)練語言模型在多項自然語言處理任務(wù)中獲得了較高的性能, 此外許多研究引入深度學(xué)習(xí)模型進(jìn)行微調(diào)以更好完成實體抽取任務(wù), 整合或微調(diào)預(yù)訓(xùn)練語言模型的嵌入已成為深度神經(jīng)網(wǎng)絡(luò)的新范式. 一方面這些嵌入表示是隨上下文變化的, 并且可以和傳統(tǒng)的嵌入表示相結(jié)合, 在多種任務(wù)上取得了較好的效果. 另一方面, 通過微調(diào)預(yù)訓(xùn)練語言模型能夠遷移至其他各項任務(wù)中. Li等[12]在未標(biāo)記的中國臨床記錄上預(yù)訓(xùn)練了BERT模型, 同時他們證明相較于只進(jìn)行微調(diào)的BERT模型, 在經(jīng)過微調(diào)的預(yù)訓(xùn)練BERT模型之上添加BiLSTM-CRF層效果更好. 此外, BGRU-CRF層在優(yōu)化后的BERT模型上也取得了良好的效果[13].
實體關(guān)系抽取也稱為關(guān)系事實抽取, 也是自然語言處理領(lǐng)域的基礎(chǔ)任務(wù)之一, 其目標(biāo)是在自然語言文本中識別出成對的命名實體, 并抽取出實體對之間的關(guān)系, 生成關(guān)系三元組. 即將非結(jié)構(gòu)化文本轉(zhuǎn)化為結(jié)構(gòu)性的知識, 在知識圖譜的構(gòu)建、 融合等方面發(fā)揮重要作用[14-15].
早期的實體關(guān)系抽取方法可分為基于規(guī)則的方法和基于統(tǒng)計模型的方法. 基于規(guī)則的方法需要領(lǐng)域?qū)<液驼Z言學(xué)家之間的合作, 依靠人工制定規(guī)則, 構(gòu)建基于單詞、 文本片段或語義的模式知識集. 有了這些語言知識和專業(yè)領(lǐng)域知識, 可以通過將預(yù)處理的文本進(jìn)行模式匹配來實現(xiàn)實體關(guān)系抽?。?其優(yōu)點是可預(yù)判和解釋, 但面臨移植性差的缺點, 依賴于人工窮舉規(guī)則, 然而有的運(yùn)用場景很難總結(jié)出有效的規(guī)則, 更無法做到窮舉. 基于統(tǒng)計模型的方法通常將實體關(guān)系抽取任務(wù)轉(zhuǎn)為從文本輸入到特定目標(biāo)結(jié)構(gòu)的預(yù)測, 使用統(tǒng)計模型來建模輸入與輸出之間的關(guān)聯(lián), 并使用機(jī)器學(xué)習(xí)方法來學(xué)習(xí)模型的參數(shù). 可以細(xì)分為有監(jiān)督方法、 半監(jiān)督方法、 遠(yuǎn)程監(jiān)督方法和無監(jiān)督方法. 這一類方法相對于基于規(guī)則的方法有明顯改進(jìn), 但總體上仍依賴于人工提取的特征, 領(lǐng)域適應(yīng)性差, 在實際的運(yùn)用場景中效果欠佳, 且使用傳統(tǒng)工具抽取特征將不可避免存在誤差傳播的問題.
為了解決這些問題, 研究者開始探索如何使用深度神經(jīng)網(wǎng)絡(luò)自動學(xué)習(xí)到有區(qū)分性的特征, 進(jìn)而避免使用傳統(tǒng)自然語言的特征抽取方法, 最初大多采用流水線方法進(jìn)行關(guān)系抽取, 該方法將關(guān)系抽取任務(wù)拆解為命名實體識別和關(guān)系分類2個任務(wù), 并為2個任務(wù)分別訓(xùn)練模型, 即先對命名實體識別模塊進(jìn)行訓(xùn)練, 再將已訓(xùn)練完成的命名實體識別模塊的輸出作為關(guān)系分類任務(wù)的輸入, 用以實現(xiàn)對關(guān)系分類模塊的訓(xùn)練. 但流水線方式存在命名實體識別模塊的錯誤向后續(xù)模塊傳遞的問題, 并且忽視了2個任務(wù)之間的關(guān)聯(lián)性, 捕獲復(fù)雜語義關(guān)系能力較弱. 此外, 它們假設(shè)句子中只有一個關(guān)系實例, 而忽略了關(guān)系之間潛在的相互依賴關(guān)系. 由于流水線方法的固有缺陷, 研究人員將目光轉(zhuǎn)向了實體關(guān)系聯(lián)合抽?。?Getoor等[16]首先指出NER和關(guān)系分類是密切相關(guān)的, 他們使用單獨的分類器識別句子中可能的實體和關(guān)系, 這些分類器的輸出用于使用線性規(guī)劃計算最佳關(guān)系事實. 聯(lián)合抽取方法主要分為兩類, 一類是表填充方法, 另一類是序列到序列方法. Miwa等[17]首先提出了表填充方法, 設(shè)計了一個實體關(guān)系表, 將關(guān)系抽取任務(wù)轉(zhuǎn)化為表格填充. 對于表填充方法, Gupta等[18]使用神經(jīng)網(wǎng)絡(luò)對實體和關(guān)系進(jìn)行聯(lián)合建模, 并開發(fā)了一種上下文感知的循環(huán)方式來學(xué)習(xí)關(guān)系的相互依賴性. 但表填充方法只能為每個實體對預(yù)測唯一的一個關(guān)系, 若一個實體對存在多種關(guān)系則無法被完整抽取, 即無法解決實際運(yùn)用場景中的三元組重疊問題. Bekoulis等[19]添加了一個額外的CRF層來標(biāo)記實體, 并設(shè)計了一種新的表格方案, 即多頭選擇, 用以解決三元組重疊問題.
序列到序列方法將關(guān)系抽取任務(wù)重新定義為序列生成問題. 這種模型的主干是編碼器-解碼器結(jié)構(gòu). 編碼器以一個句子作為輸入, 解碼器需要自動生成序列結(jié)果, 該結(jié)果可以進(jìn)一步轉(zhuǎn)換為關(guān)系三元組. 序列到序列的方法最早由Zeng等[20]提出, 該方法將關(guān)系抽取視為生成三元組的任務(wù), 其中實體從源句中復(fù)制, 關(guān)系則由預(yù)定義的關(guān)系集預(yù)測. Zeng等[21]進(jìn)一步應(yīng)用強(qiáng)化學(xué)習(xí)來學(xué)習(xí)提取順序. 這2項探索性研究存在一個問題, 即無法處理由多個詞構(gòu)成的實體. 為此, Zeng等[22]在編碼器部分添加了序列標(biāo)注層, 以幫助實體識別. 基于序列到序列的方法已經(jīng)取得了很大的進(jìn)展, 但仍然存在一些缺陷. 首先是前向解碼錯誤, 解碼器基于RNN, 以自回歸方式從左到右生成關(guān)系三元組. 當(dāng)前的三元組預(yù)測依賴于先前的三元組, 一旦在某一步中出現(xiàn)解碼錯誤, 由于噪聲左側(cè)上下文的負(fù)面影響, 后續(xù)預(yù)測將進(jìn)一步積累誤差. 其次是忽略了關(guān)系共現(xiàn)信息, 來自同一句子的三元組之間的關(guān)系有很強(qiáng)的相關(guān)性, 我們將其稱為關(guān)系共現(xiàn)信息, 這些信息可以用來預(yù)測一些僅考慮句子本身時難以預(yù)測的關(guān)系. 隨著深度神經(jīng)網(wǎng)絡(luò)的不斷發(fā)展, 基于序列到序列方法的大規(guī)模預(yù)訓(xùn)練語言模型在關(guān)系抽取任務(wù)中取得了很好的效果. 但是, 這些方法仍然難以滿足實際的應(yīng)用場景. 對于金融、 醫(yī)療等垂直領(lǐng)域, 缺失標(biāo)注數(shù)據(jù)現(xiàn)象更為明顯, 甚至數(shù)據(jù)獲取也很困難, 而神經(jīng)網(wǎng)絡(luò)作為典型的“數(shù)據(jù)饑渴”模型, 在訓(xùn)練樣例過少時性能會受到極大影響. 針對小樣本任務(wù), Han等[23]發(fā)布了小樣本關(guān)系抽取數(shù)據(jù)集FewRel, Gao等[24]在 FewRel 數(shù)據(jù)集的基礎(chǔ)上提出了FewRel 2. 0, 增加了領(lǐng)域遷移和“以上都不是”檢測. 利用海量無監(jiān)督數(shù)據(jù)得到的預(yù)訓(xùn)練模型得到有效的語義特征是少量樣本快速學(xué)習(xí)知識的代表性方法.
真實場景中的關(guān)系還面臨著復(fù)雜的語境, 例如, 大量的實體間關(guān)系是通過多個句子表達(dá)的, 同一個文檔中的多個關(guān)系相互關(guān)聯(lián). 文檔級的關(guān)系抽取最近也受到廣泛的關(guān)注, 代表性的方法是使用GNN融合分布在文檔中不同位置的實體信息, 并利用圖算法進(jìn)行信息的傳遞. Christopoulou 等[25]構(gòu)建以實體、 實體提及和句子為節(jié)點的文檔圖, 并通過圖上的迭代算法得到邊的表示進(jìn)行關(guān)系分類, 之后有大量的研究者采用類似的方法對文檔建模. 除使用圖網(wǎng)絡(luò)外, 研究者也開始嘗試直接使用大規(guī)模預(yù)訓(xùn)練語言模型建模文檔[26-27]. Zhou等[27]提出自適應(yīng)閾值代替用于多標(biāo)簽分類的全局閾值, 并直接利用預(yù)訓(xùn)練模型的自注意力得分找到有助于確定關(guān)系的相關(guān)上下文特征.
事件是指在特定時間和特定地點發(fā)生的某件事, 涉及一個或多個參與者, 通??梢悦枋鰹闋顟B(tài)的變化. 事件抽取任務(wù)旨在識別特定類型的事件, 并以結(jié)構(gòu)化的形式把事件中擔(dān)任既定角色的要素呈現(xiàn)出來, 該任務(wù)可進(jìn)一步分解為4個不同難度的子任務(wù): 觸發(fā)詞識別、 事件類型分類、 論元識別和角色分類任務(wù). 事件抽取屬于信息抽取領(lǐng)域中的深層次研究內(nèi)容, 它需要前述的幾項研究作為基礎(chǔ). 在實際應(yīng)用中, 事件抽取在信息檢索、 問答、 知識圖譜構(gòu)建等領(lǐng)域中得到了廣泛的應(yīng)用, 具有重要的研究意義和實用價值.
最早的事件抽取方法主要是基于規(guī)則的方法, 后來逐漸發(fā)展為模式匹配的方法, 它首先構(gòu)造一些特定的事件模板, 然后通過各種模式匹配算法從文本中提取出符合模式約束條件的事件. 第一個基于模式的事件抽取系統(tǒng)來自1993年Riloff等人開發(fā)的用以提取恐怖事件的autolog系統(tǒng)[28], autolog利用了一組語言模板和一個手工標(biāo)注的語料庫來獲取事件模式. 隨后, 也有研究者提出使用弱監(jiān)督方法或自擴(kuò)展技術(shù), 通過使用少量的預(yù)分類訓(xùn)練語料庫或種子模式來自動獲取更多的模板. 基于模式的事件抽取技術(shù)在許多工業(yè)領(lǐng)域中得到了廣泛的使用, 但由于其成本過高, 因此各種基于機(jī)器學(xué)習(xí)的事件抽取技術(shù)得到了快速發(fā)展. 基于機(jī)器學(xué)習(xí)的方法提取事件本質(zhì)上是將事件抽取作為一個分類問題, 其核心在于分類器的構(gòu)建和特征的選擇. 其主要過程是從訓(xùn)練樣本中學(xué)習(xí)分類器, 然后應(yīng)用分類器從文本中提取事件. 基于機(jī)器學(xué)習(xí)的方法能夠有效地捕捉觸發(fā)詞、 論元以及觸發(fā)詞之間關(guān)系的語義信息, 具有較高的可移植性和靈活性.
特征工程是基于機(jī)器學(xué)習(xí)的事件抽取任務(wù)的主要難點, 與經(jīng)典的機(jī)器學(xué)習(xí)技術(shù)相比, 近年來發(fā)展迅速的深度學(xué)習(xí)方法可以自動提取句子中的顯著特征, 不僅可以使特征較好地適應(yīng)其他特定的領(lǐng)域, 而且可以通過學(xué)習(xí)不斷地自動更新特征表示. 研究人員將許多深度神經(jīng)網(wǎng)絡(luò)模型引入到事件抽取任務(wù)中, 通常將單詞表示作為輸入, 分類這些詞是否為事件觸發(fā)詞. Nguyen等[29]將事件抽取問題形式化為一個多分類問題, 利用卷積神經(jīng)網(wǎng)絡(luò)自動從預(yù)訓(xùn)練的詞嵌入、 位置嵌入和實體類型嵌入中學(xué)習(xí)特征表示, 克服了復(fù)雜的特征工程和誤差傳播, 但它依賴于其他監(jiān)督模塊來獲取特征. Chen等[30]提出了一種動態(tài)多池化卷積神經(jīng)網(wǎng)絡(luò)DMCNN, 根據(jù)事件觸發(fā)詞和論元使用一個動態(tài)多池層來保留更多關(guān)鍵信息, 他們引入了一個單詞表示模型來捕獲詞級別的語義信息, 并采用基于CNN的框架來捕捉句子級別的特征. 基于CNN的事件抽取模型的缺點是不能很好地捕獲遠(yuǎn)距離的詞之間的語義依賴, 而RNN結(jié)構(gòu)理論上可以對任意距離的2個詞進(jìn)行建模表示. 因此, 許多研究者嘗試將循環(huán)神經(jīng)網(wǎng)絡(luò)應(yīng)用于事件抽取中. 如Sha等[31]提出的dbRNN模型將2個RNN神經(jīng)元的句法依賴連接添加到雙向RNN中. 上述結(jié)構(gòu)均難以處理圖形數(shù)據(jù)結(jié)構(gòu), 并且它們不能完全模擬詞間的依賴關(guān)系. 研究者開始將GNN引入到事件抽取[32]中, 其核心問題是為文本中的單詞構(gòu)建一個圖. 隨著Transformer[9]的提出, 自注意力機(jī)制發(fā)揮了巨大的作用, 研究者們提出了許多基于自注意力機(jī)制來學(xué)習(xí)句子中每個單詞的重要程度. Ahmad等[33]提出的GATE框架引入了一種自注意力機(jī)制來學(xué)習(xí)不同句法距離單詞之間的依賴關(guān)系, 一方面GATE具有捕捉長距離依賴關(guān)系的能力, 另一方面, GATE使用句法距離來建模單詞之間的成對關(guān)系從而使其適合在不同類型的語言之間轉(zhuǎn)換.
隨著BERT的成功, 預(yù)訓(xùn)練語言模型也被用于事件抽取[34]中. 由于預(yù)訓(xùn)練語言模型使用了大量的未標(biāo)記數(shù)據(jù)進(jìn)行學(xué)習(xí), 相較于傳統(tǒng)的神經(jīng)網(wǎng)絡(luò), 使用預(yù)訓(xùn)練語言模型進(jìn)行特征學(xué)習(xí)有很大的改進(jìn). 而Wadden等[34]發(fā)現(xiàn)基于預(yù)訓(xùn)練語言模型的工作通常只專注于更好地微調(diào), 因此轉(zhuǎn)而研究如何在大規(guī)模無監(jiān)督數(shù)據(jù)中更好地利用豐富的事件知識來提高性能. 隨著預(yù)訓(xùn)練語言模型體量的不斷增大, 對其進(jìn)行微調(diào)的硬件要求、 數(shù)據(jù)需求和實際代價也在不斷上漲. 基于預(yù)訓(xùn)練提示(Prompt)學(xué)習(xí)范式[35]的方法允許語言模型在大量原始文本上進(jìn)行預(yù)訓(xùn)練, 通過定義一個新的提示模板, 能夠應(yīng)用在少樣本甚至零樣本學(xué)習(xí)中. Si等[36]第一次將基于Prompt的學(xué)習(xí)策略引入事件抽取領(lǐng)域中, 自動利用輸入和輸出端的標(biāo)簽語義. 此外, 現(xiàn)有事件抽取方法的研究大多集中在句子層面, 即假設(shè)一個事件往往在一個句子中得以表示, 通常使用句子級別的上下文中的局部信息, 然而很多情況下事件信息分散在整個文檔中, 這種情況需要有更多的全局信息, 因此如何提取文檔級別的事件成為了重點研究對象, 催生出文檔級事件抽取的任務(wù), 文檔級的事件抽取任務(wù)更具挑戰(zhàn)性, 需要考慮多事件表達(dá)等問題. 早期研究者用基于模式和基于分類器的方法來解決這個問題, 直到最近幾年, 研究人員開始引入深度神經(jīng)網(wǎng)絡(luò). 例如, Zhang等[37]提出一種兩步方法, 通過檢測句子中的隱含論證來連接論證; Li等[38]擴(kuò)展了該任務(wù), 提出一種基于條件文本生成的端到端神經(jīng)事件參數(shù)提取模型.
事件關(guān)系反映了事件之間的一種語義關(guān)系, 為文本的深層理解提供了關(guān)鍵線索. 事件關(guān)系抽取的目的主要是提取一段文本內(nèi)容中2個事件可能存在的關(guān)系, 它在文本理解、 邏輯推理和知識圖譜構(gòu)建等眾多應(yīng)用中都發(fā)揮出了重要作用. 現(xiàn)有事件關(guān)系抽取研究主要包括共指關(guān)系抽取、 因果關(guān)系抽取以及時序關(guān)系抽取.
1.4.1 事件共指關(guān)系抽取
共指關(guān)系抽取旨在確定文檔中已識別的多個事件實例是否指向同一個事件. 共指關(guān)系可以當(dāng)作一個分類任務(wù)處理, 即看2個事件是否指向同一事件類型. 經(jīng)典的機(jī)器學(xué)習(xí)模型如決策樹算法、 最大熵算法、 支持向量機(jī)等被應(yīng)用于共指關(guān)系抽取中. 基于機(jī)器學(xué)習(xí)的方法首先統(tǒng)計每個事件的上下文文本特征, 比如詞頻特征、 位置特征、 句法特征、 事件主題信息、 語言特征等, 然后利用機(jī)器學(xué)習(xí)方法進(jìn)行二分類.
基于深度學(xué)習(xí)的共指關(guān)系抽取通常使用CNN或者RNN對事件的上下文信息進(jìn)行特征提取, 然后對所提取的信息進(jìn)行動態(tài)池化整合, 最后進(jìn)行分類. Lee等[39]提出端到端的模型, 在不需要輸入額外的特征的情況下, 利用BiLSTM提取特征取得了好的效果. 使用CNN來提取出單詞的上下文特征信息, 只考慮了句子中單詞與單詞間的局部信息, 并未注意到上下文對共指判斷的影響, 因此, 注意力機(jī)制也被應(yīng)用到事件關(guān)系抽取中. Bugert等[40]提出一種多注意力機(jī)制的卷積神經(jīng)網(wǎng)絡(luò)模型, 主要解決了事件特征難以獲取的問題. 通過使用深層的CNN建立語言模型, 自動地獲取事件特征, 并使用注意力機(jī)制進(jìn)行加權(quán), 篩選重要的特征, 融合2個事件的特征, 判斷2個事件是否同指. 此外, 論元兼容性經(jīng)常被納入事件共指關(guān)系抽取中作為判斷依據(jù), 即若2個事件在任何一個論元角色中有不相容的論證, 它們就不能是共指的. Huang等[41]提出了一個遷移學(xué)習(xí)框架, 利用大量的未標(biāo)記數(shù)據(jù)來學(xué)習(xí)2個事件提及之間的兼容性.
1.4.2 事件因果關(guān)系抽取
事件因果關(guān)系抽取旨在識別文本中事件之間的因果關(guān)系, 為邏輯推理、 問題回答等NLP任務(wù)提供了關(guān)鍵線索. 現(xiàn)有的方法通常將事件因果關(guān)系抽取作為一項分類任務(wù), 通過判斷2個句子的事件觸發(fā)詞來確定它們之間是否存在因果關(guān)系, 或者進(jìn)一步預(yù)測相應(yīng)的因果關(guān)系類型. 早期的事件關(guān)系抽取方法主要使用特征工程的方法, 為了提取表明事件因果關(guān)系的有效線索, 研究人員探索了各種文本特征, 例如, 詞匯和句法特征、 時間模式等.
隨著深度學(xué)習(xí)的發(fā)展, 基于深度神經(jīng)網(wǎng)絡(luò)的方法被用于事件因果關(guān)系抽取任務(wù)中, Dasgupta等[42]通過基于LSTM的模型從語言的角度確定了文本中因果關(guān)系的語言表達(dá). 上述方法針對句子或者跨度不大的段落, 而現(xiàn)實過程中往往需要對文檔級別的文本內(nèi)容進(jìn)行因果抽取, 此時就需要進(jìn)一步考慮句子和句子之間、 句子和段落之間以及段落和段落之間的關(guān)系. 近年來, 研究者嘗試?yán)脠D神經(jīng)網(wǎng)絡(luò)表示文檔建模中各種不同粒度的信息, 通過圖卷積、 隨機(jī)游走等算法融合不同級別的節(jié)點信息, 從而將局部信息和整體信息整合到一起, 取得了較好的效果. 針對文檔級別的事件因果關(guān)系抽取, Phu等[43]提出了一個基于圖卷積神經(jīng)網(wǎng)絡(luò)的模型, 通過構(gòu)建交互圖來捕獲輸入文檔中針對事件的重要對象之間的相關(guān)鏈接. 此外, 為了增強(qiáng)對因果關(guān)系的表征, 特別是當(dāng)文本過短或者文本包含信息量過少時, 可能沒有充足的依據(jù)來判斷, 引入外部特征或者常識經(jīng)驗對事件因果關(guān)系的抽取發(fā)揮了促進(jìn)作用, Liu等[44]嘗試將外部知識融入事件因果關(guān)系抽取任務(wù)中增強(qiáng)推理能力, 還提出了一種模型泛化機(jī)制來學(xué)習(xí)事件無關(guān)的、 上下文特定的模式, 提高了模型的泛化能力. Cao等[45]同時利用描述性知識和關(guān)系知識解決文本中缺乏明確因果線索的問題.
1.4.3 事件時序關(guān)系抽取
事件時序關(guān)系抽取任務(wù)旨在抽取事件之間的時間先后順序關(guān)系. 近年來, 時序關(guān)系抽取的主流研究主要基于TimeML格式[46], 它是標(biāo)識事件、 時間及其相互關(guān)系中使用最廣泛的標(biāo)注體系. 除了時間規(guī)則外, 還使用一些通過統(tǒng)計上下文特征來構(gòu)建基于機(jī)器學(xué)習(xí)的模型, 這種方法通常根據(jù)事件的屬性、 語法等信息給出事件對的特征空間, 利用機(jī)器學(xué)習(xí)算法給出關(guān)系抽取模型, 并通過該模型預(yù)測事件對所屬的時序關(guān)系類別. 最近, 許多神經(jīng)網(wǎng)絡(luò)模型被用來捕捉時序, 例如RNN方法[47], 以及利用神經(jīng)網(wǎng)絡(luò)和預(yù)訓(xùn)練語言模型構(gòu)建的端到端系統(tǒng)[48].
信息抽取技術(shù)研究蓬勃發(fā)展, 已經(jīng)成為了自然語言處理和人工智能領(lǐng)域的重要分支. 這一方面得益于一系列國際權(quán)威評測和會議的推動, 如消息理解系列會議, 自動內(nèi)容抽取評測(Automatic Content Extraction, ACE)和文本分析會議系列評測(Text Analysis Conference, TAC). 另一方面也是因為信息抽取技術(shù)的重要性和實用性, 使其同時得到了研究界和工業(yè)界的廣泛關(guān)注. 縱觀信息抽取研究發(fā)展的態(tài)勢和技術(shù)現(xiàn)狀, 本文認(rèn)為信息抽取的發(fā)展方向包括:
1)高效的小樣本學(xué)習(xí)能力
目前的小樣本學(xué)習(xí)設(shè)定需要用一個巨大的訓(xùn)練集來訓(xùn)練, 測試時只給出N個類別, 每類K個樣本, 在這N*K個樣本上學(xué)習(xí)并預(yù)測. 真實場景下的小樣本學(xué)習(xí)不存在巨大的訓(xùn)練集, 從GPT3 開始, Prompt學(xué)習(xí)范式受到研究者的關(guān)注, 該范式將下游任務(wù)也建模成語言模型任務(wù), 給出幾條或幾十條樣本作為訓(xùn)練集, 借助大規(guī)模預(yù)訓(xùn)練語言模型中蘊(yùn)含的大量知識, 取得了不錯的小樣本學(xué)習(xí)效果. 此外, 相對于傳統(tǒng)的Pretrain+Finetune范式, Prompt可以擺脫指數(shù)級的預(yù)訓(xùn)練參數(shù)量對巨大計算資源的需求, 能高效地利用預(yù)訓(xùn)練模型. 基于上述分析, 本文認(rèn)為信息抽取的發(fā)展方向之一就是利用預(yù)訓(xùn)練提示學(xué)習(xí)范式進(jìn)行高效的小樣本學(xué)習(xí). 具體包括: ①提示學(xué)習(xí)中信息抽取任務(wù)模板的設(shè)計; ②模板的自動學(xué)習(xí)與挖掘; ③預(yù)訓(xùn)練提示學(xué)習(xí)范式進(jìn)行信息抽取的理論分析.
2)多模態(tài)信息融合
目前信息抽取主要針對的是純文本數(shù)據(jù), 而常見的文檔具有多樣的布局且包含豐富的信息, 文檔以富文本的形式呈現(xiàn), 其中包含大量的多模態(tài)信息. 從認(rèn)知科學(xué)的角度來說, 人腦的感知和認(rèn)知過程是跨越多種感官信息的融合處理, 如人可以同時利用視覺和聽覺信息理解說話人的情感, 可以通過視覺信息補(bǔ)全文本中的缺失信息等, 信息抽取技術(shù)的進(jìn)一步發(fā)展也應(yīng)該是針對多模態(tài)的富文檔. 多模態(tài)信息的融合也是信息抽取的重要發(fā)展方向, 具體包括: ①多模態(tài)預(yù)訓(xùn)練模型的設(shè)計; ②多模態(tài)信息抽取框架中跨模態(tài)對齊任務(wù)設(shè)計; ③多模態(tài)信息的提取和表示.
3)數(shù)據(jù)驅(qū)動和知識驅(qū)動融合
現(xiàn)有神經(jīng)網(wǎng)絡(luò)信息抽取方法依靠深度學(xué)習(xí)以數(shù)據(jù)驅(qū)動的方式得到各種語義關(guān)系的統(tǒng)計模式, 其優(yōu)勢在于能從大量的原始數(shù)據(jù)中學(xué)習(xí)相關(guān)特征, 比較容易利用證據(jù)和事實, 但是忽略了專家知識. 單純依靠神經(jīng)網(wǎng)絡(luò)進(jìn)行信息抽取, 達(dá)到一定準(zhǔn)確率之后, 就很難再改進(jìn). 從人類知識獲取方式來看, 很多決策判斷的同時要使用先驗知識以及現(xiàn)有數(shù)據(jù). 數(shù)據(jù)驅(qū)動和知識驅(qū)動結(jié)合是模擬人腦進(jìn)行信息抽取的關(guān)鍵所在. 基于上述分析, 本文認(rèn)為構(gòu)建數(shù)據(jù)驅(qū)動和知識驅(qū)動融合的抽取技術(shù)是信息抽取的發(fā)展方向, 具體包括: ①基于神經(jīng)符號學(xué)習(xí)的信息抽取框架設(shè)計; ②學(xué)習(xí)神經(jīng)網(wǎng)絡(luò)到邏輯符號的對應(yīng)關(guān)系; ③神經(jīng)網(wǎng)絡(luò)對于符號計算過程進(jìn)行模擬.
信息抽取技術(shù)是自然語言處理的核心技術(shù), 它將文本所表述的信息結(jié)構(gòu)化和語義化, 并將其作為計算機(jī)的輸入, 供機(jī)器識別并進(jìn)行處理, 實現(xiàn)了對海量非結(jié)構(gòu)化數(shù)據(jù)的分析、 組織、 管理、 計算、 查詢和推理, 并進(jìn)一步為更高層面的應(yīng)用和任務(wù)提供支撐. 本文介紹了信息抽取任務(wù)的研究概況, 總結(jié)了近些年來信息抽取以及關(guān)鍵技術(shù)的研究進(jìn)展, 主要分析了3種信息抽取的方法, 即基于規(guī)則和模板的抽取方法、 基于傳統(tǒng)機(jī)器學(xué)習(xí)的抽取方法以及基于深度神經(jīng)網(wǎng)絡(luò)的抽取方法, 其中重點介紹了基于深度神經(jīng)網(wǎng)絡(luò)的方法. 最后, 總結(jié)了信息抽取領(lǐng)域的未來的發(fā)展方向, 包括高效的小樣本學(xué)習(xí)能力、 多模態(tài)信息融合以及數(shù)據(jù)驅(qū)動和知識驅(qū)動融合等.