最近幾年深度學習引發的人工智能浪潮席卷全球,在互聯網普及帶來的海量數據資源和摩爾定律支配下飛速提升的算力資源雙重加持下,深度學習深入影響了自然語言處理的各個方向,極大推動了自然語言處理的發展。來到 2019 年的今天,深度學習的諸多局限性也慢慢得到廣泛認知。對于自然語言處理而言,要做到精細深度的語義理解,單純依靠數據標注與算力投入無法解決本質問題。如果沒有先驗知識的支持,「中國的乒乓球誰都打不過」與「中國的足球誰都打不過」,在計算機看來語義上并沒有巨大差異,而實際上兩句中的「打不過」意思正好相反。因此,融入知識來進行知識指導的自然語言處理,是通向精細而深度的語言理解的必由之路。然而,這些知識又從哪里來呢?這就涉及到人工智能的一個關鍵研究問題——知識獲取。
一、知識圖譜
現有大型知識圖譜,諸如Wikidata、Yago、DBpedia,富含海量世界知識,并以結構化形式存儲。如下圖所示,每個節點代表現實世界中的某個實體,它們的連邊上標記實體間的關系。這樣,美國作家馬克·吐溫的相關知識就以結構化的形式記錄下來。
目前,這些結構化的知識已被廣泛應用于搜索引擎、問答系統等自然語言處理應用中。但與現實世界快速增長的知識量相比,知識圖譜覆蓋度仍力有未逮。由于知識規模巨大而人工標注昂貴,這些新知識單靠人力標注添加幾無可能完成。為了盡可能及時準確地為知識圖譜增添更加豐富的世界知識,研究者們努力探索高效自動獲取世界知識的辦法,即實體關系抽取技術。
具體來說,給定一個句子和其中出現的實體,實體關系抽取模型需要根據句子語義信息推測實體間的關系。例如,給定句子:「清華大學坐落于北京近鄰」以及實體「清華大學」與「北京」,模型可以通過語義得到「位于」的關系,并最終抽取出(清華大學,位于,北京)的知識三元組。
實體關系抽取是一個經典任務,在過去的 20 多年里都有持續研究開展,特征工程、核方法、圖模型曾被廣泛應用其中,取得了一些階段性的成果。隨著深度學習時代來臨,神經網絡模型則為實體關系抽取帶來了新的突破。
數據規模問題:人工精準地標注句子級別的數據代價十分高昂,需要耗費大量的時間和人力。在實際場景中,面向數以千計的關系、數以千萬計的實體對、以及數以億計的句子,依靠人工標注訓練數據幾乎是不可能完成的任務。
學習能力問題:在實際情況下,實體間關系和實體對的出現頻率往往服從長尾分布,存在大量的樣例較少的關系或實體對。神經網絡模型的效果需要依賴大規模標注數據來保證,存在「舉十反一」的問題。如何提高深度模型的學習能力,實現「舉一反三」,是關系抽取需要解決的問題。
復雜語境問題:現有模型主要從單個句子中抽取實體間關系,要求句子必須同時包含兩個實體。實際上,大量的實體間關系往往表現在一篇文檔的多個句子中,甚至在多個文檔中。如何在更復雜的語境下進行關系抽取,也是關系抽取面臨的問題。
開放關系問題:現有任務設定一般假設有預先定義好的封閉關系集合,將任務轉換為關系分類問題。這樣的話,文本中蘊含的實體間的新型關系無法被有效獲取。如何利用深度學習模型自動發現實體間的新型關系,實現開放關系抽取,仍然是一個「開放」問題。
我們認為,這四個方面構成了實體關系抽取需要進一步探索的主要方向。接下來,我們分別介紹這四個方面的發展現狀和挑戰,以及我們的一些思考和努力。
二、更大規模的訓練數據
神經網絡關系抽取需要大量的訓練數據,但是人工標注這些訓練數據非常費時昂貴。為了自動獲取更多的訓練數據訓練模型,工作 [16] 提出了遠程監督(Distant Supervision)的思想,將純文本與現有知識圖譜進行對齊,能夠自動標注大規模訓練數據。
遠程監督的思想并不復雜,具體來說:如果兩個實體在知識圖譜中被標記為某個關系,那么我們就認為同時包含這兩個實體的所有句子也在表達這種關系。再以(清華大學,位于,北京)為例,我們會把同時包含「清華大學」和「北京」兩個實體的所有句子,都視為「位于」這個關系的訓練樣例。
遠程監督的這種啟發式標注規則是把雙刃劍,它是自動標注訓練數據的有效策略,但其過強的設定不可避免地產生錯誤標注。例如對于知識圖譜中(清華大學,校長,邱勇)這個三元組事實,句子「邱勇擔任清華大學校長」可以反映「清華大學」與「邱勇」之間「校長」的關系;但是句子「邱勇考入清華大學化學與化學工程系」以及「邱勇擔任清華大學黨委常委」并不表達「校長」關系,但卻會被遠程監督的啟發式規則錯誤地標注為「校長」關系的訓練實例。
雖然遠程監督思想非常簡單也存在很多問題,不過它為更多收集訓練數據開啟了新的紀元。受到這個思路的啟發,很多學者積極考慮如何盡可能排除遠程監督數據中的噪音標注的干擾。從 2015 年開始,基于遠程監督與降噪機制的神經關系抽取模型得到了長足的發展,工作[17] 引入了多實例學習方法,利用包含同一實體對的所有實例來共同預測實體間關系。我們課題組林衍凱等人工作[19] 提出句子級別注意力機制,對不同的實例賦予不同的權重,用以降低噪音實例造成的影響。工作 [20] 引入對抗訓練來提升模型對噪音數據的抵抗能力。工作 [21] 則構建了一套強化學習機制來篩除噪音數據,并利用剩余的數據來訓練模型。
總結來說,已有對遠程監督的降噪方法可以兼顧了關系抽取的魯棒性與有效性,也具有較強的可操作性和實用性。不過,使用已有知識圖譜對齊文本來獲取數據訓練關系抽取模型,再利用該模型來抽取知識加入知識圖譜,本身就有一種雞生蛋與蛋生雞的味道。不完善的知識圖譜對齊所得到的文本訓練數據也將是不完善的,對那些長尾知識而言,仍難以通過這種遠程監督機制來得到訓練實例。如何提出更有效的機制來高效獲取高質量、高覆蓋、高平衡的訓練數據,仍然是一個值得深入思考的問題。
三、更高效的學習能力
即使通過遠程監督等辦法能夠自動獲取高質量的訓練數據,由于真實場景中關系和實體對的長尾分布特點,絕大部分的關系和實體對的可用樣例仍然較少。而且,對于醫療、金融等專業領域的專門關系,受限于數據規模的問題可用樣例也很有限。而神經網絡模型作為典型的 data-hungry 技術,在訓練樣例過少時性能會受到極大影響。因此,研究者們希望探索有效提升模型學習能力的方法,以更好地利用有限訓練樣例取得滿意的抽取性能。
實際上,人類可以通過少量樣本快速學習知識,具有「舉一反三」的能力。為了探索深度學習和機器學習「舉一反三」的能力,提出了少次學習(Few-shot learning)任務。通過設計少次學習機制,模型能夠利用從過往數據中學到的泛化知識,結合新類型數據的少量訓練樣本,實現快速遷移學習,具有一定的舉一反三能力。
總結來說,探索少次學習關系抽取,讓關系抽取模型具備更強大高效的學習能力,還是一個非常新興的研究方向,特別是面向關系抽取的少次學習問題,與其他領域的少次學習問題相比,具有自身獨有的特點與挑戰。不論是基于已有少次學習技術作出適于 NLP 和關系抽取的改進,還是提出全新的適用于關系抽取的少次學習模型,都將最大化地利用少量標注數據,推動關系抽取技術的落地實用。
四、更復雜的文本語境
現有關系抽取工作主要聚焦于句子級關系抽取,即根據句內信息進行關系抽取,各類神經網絡模型也擅長編碼句子級語義信息,在很多公開評測數據能夠取得最佳效果。而在實際場景中,大量的實體間關系是通過多個句子表達的。如下圖所示,文本中提到多個實體,并表現出復雜的相互關聯。根據從維基百科采樣的人工標注數據的統計表明,至少 40%的實體關系事實只能從多個句子中聯合獲取。為了實現多個實體間的跨句關系抽取,需要對文檔中的多個句子進行閱讀推理,這顯然超出了句子級關系抽取方法的能力范圍。因此,進行文檔級關系抽取勢在必行。
文檔級關系抽取研究需要大規模人工標注數據集來進行訓練和評測。目前文檔級關系抽取數據集還很少。工作 [26,27] 構建了兩個遠程監督的數據集,由于沒有進行人工標注因此評測結果不太可靠。BC5CDR [28] 是人工標注的文檔級關系抽取數據集,由 1,500 篇 PubMed 文檔構成是生物醫學特定領域,且僅考慮「化學誘導的疾病」關系,不一定適合用來探索文檔級關系抽取的通用方法。工作 [29] 提出使用閱讀理解技術回答問題的方式從文檔中提取實體關系事實,這些問題從」實體-關系「對轉換而來。由于該工作數據集是針對這種方法量身定制的,也不那么適用于探索文檔級關系抽取的通用方法。這些數據集或者僅具有少量人工標注的關系和實體,或者存在來自遠程監督的噪音標注,或者服務于特定領域或方法,有這樣或那樣的限制。
五、更開放的關系類型
現有關系抽取工作一般假設有預先定義好的封閉關系集合,將任務轉換為關系分類問題。然而在開放域的真實關系抽取場景中,文本中包含大量開放的實體關系,關系種類繁多,而且關系數量也會不斷增長,遠超過人為定義的關系種類數量。在這種情況下,傳統關系分類模型無法有效獲取文本中蘊含的實體間的新型關系。如何利用深度學習模型自動發現實體間的新型關系,實現開放關系抽取,仍然是一個開放問題。
為了實現面向開放領域的開放關系抽取,研究提出開放關系抽?。∣penRelation Extraction,OpenRE)任務,致力于從開放文本抽取實體間的任意關系事實。開放關系抽取涉及三方面的「開放」:首先是抽取關系種類的開放,與傳統關系抽取不同,它希望抽取所有已知和未知的關系;其次是測試語料的開放,例如新聞、醫療等不同領域,其文本各有不同特點,需要探索跨域魯棒的算法;第三是訓練語料的開放,為了獲得盡可能好的開放關系抽取模型,有必要充分利用現有各類標注數據,包括精標注、遠程監督標注數據等,而且不同訓練數據集的關系定義和分布也有所不同,需要同時利用好多源數據。
在前深度學習時代,研究者也有探索開放信息抽?。∣pen InformationExtraction,OpenIE)任務。開放關系抽取可以看做OpenIE 的特例。當時 OpenIE 主要通過無監督的統計學習方法實現,如 Snowball 算法等。雖然這些算法對于不同數據有較好的魯棒性,但精度往往較低,距離實用落地仍然相距甚遠。


