【信息抽取】NLP中关系抽取的概念,发展及其展望
事物、概念之間的關系是人類知識中非常重要的一個部分,但是他們通常隱藏在海量的非結構文本中。為了從文本中抽取這些關系事實,從早期的模式匹配到近年的神經網絡,大量的研究在多年前就已經展開。
然而,隨著互聯網的爆炸發展,人類的知識也隨之飛速的增長,因而對關系抽取(Relation Extraction, RE)提出了更高的要求,需要一個有效的RE系統,能夠利用更多的數據;有效的獲取更多的關系;高效的處理更多復雜的文本;具有較好的擴展性,能夠遷移到更多的領域。
本文首先介紹現存的一些RE的方法和面臨的挑戰,隨后,展示一些有潛力的方向。
作者&編輯 | 小Dream哥
1? 什么是RE
信息抽取(Information Extraction,IE)的工作主要是從非結構化的文本中抽取結構化的信息,是自然語言處理中非常重要的一個子領域。關系抽取(Relation Extraction,RE)是IE中一個重要的任務,他聚焦于抽取實體之間的關系。
一個完整的RE系統包含命名實體識別和關系分類兩個部分。命名實體識別任務從文本中抽取出實體,關系分類任務對實體之間關系進行甄別。
這其中,關系分類任務是相對較復雜一些的任務,因為他需要模型能夠對文本的語義進行理解。
如上圖所示,關系抽取就是從文本中抽取出實體,并甄別他們之間的關系的任務。圖中,先抽取出Tim Cook和Apple,然后根據文本中蘊含的語義信息,認為Tim Cook是Apple公司的CEO。
2 RE的發展過程
RE的發展經歷了從模式識別到統計模型,再到如今的神經網絡模型3個階段,下面做一個簡單的介紹。
1)模式抽取模型(Pattern Extraction Models)
所謂模式抽取模型,就是用一些文本分析工具對語料進行分析,然后自動的構建一些模式規則。利用這些規則,就可以在新的語料中獲得新的關系了。
感興趣的讀者可以參考這些文章進一步了解:
1.Stephen Soderland, David Fisher. 1995. CRYSTAL: Inducing a conceptual dictionary. In procedings of IJCAI, pages 1314-1319
2.Jun-Tae Kim and Dan I.Moldovan. 1995. Acquisition of linguistic patterns for knowledge-based information extraction, TKDE, 7(5):713-724
自動化構建模式的過程難免會出現錯誤,因而需要人類專家的勘誤,這是昂貴的,這是基于模式匹配的方法最主要的局限。
2) 統計關系抽取模型
與基于模式匹配的方法相比,基于統計的方法能夠有較大的覆蓋范圍和較少的人力干預。因而基于統計的關系抽取方法(Statistical Relation Extraction,SRE)一度非常的火熱。
所謂基于統計的方法,就是傳統的一些機器學習算法,比較典型的包括SVM,貝葉斯算法等;此外,也有一些圖方法,通過將實體、文本和關系之間的依賴用圖的形式來表示,進而得到正確的實體間關系。
[1] Mengqiu Wang. 2008. A re-examingnation of dependency path kernels for relation etraction. In proceedings of IJCNLP, PAGES 841-846
[2] Xiaofeng Yu and Wai Lam 2010. Jointly identifying entities and extracting relations in encyclopedia text via a graphical model approach. In proceeding of ACL,pages 1399-1407
3) 神經關系抽取模型
跟基于統計的關系抽取模型相比,基于神經網絡的模型(Neural Relation Extraction Models)能夠更多的獲取文本的語義信息,因而具有更強大的抽取能力。
NRE的不同研究主要集中在設計和使用不同的網絡架構來獲取文本中的語義信息上,例如RNN,CNN,GNNs以及attention-based neural networks等網絡,近年來基于Transformer和預訓練模型的SRE效果更進一步。
上圖展示了不同年份表現最好的RE模型的F1得分,目前在開源的數據集上(SemEval 2010 task8)已經能夠取得較好的成績了。
總的來說,基于NRE的模型取得了較大的進展,是目前RE研究的熱點,后續我們會用更多的文章進一步介紹NRE進展,下面先看看目前NRE的一些研究趨勢。
3 RE的更多方向
盡管上述提到的NRE模型在一些開源數據集上已經取得了一些比較好的結果,但是仍然需要清醒的認識到,這些模型通常離實際應用仍有一定的距離,還有很多問題茲待解決。
目前大部分的模型使用大量的人工標注,并且只能在單句中抽取預定義好的關系類型,因此,這些工作很難在復雜的情況中取得好的效果。實際上,已經有一些工作嘗試解決這些問題,下面對這些問題做一個介紹:
1) Distant Supervised
有監督的的NRE模型需要大規模高質量的數據,這通常是非常昂貴和費時的。為了解決這個問題,Distant Supervied得以應用,他利用知識圖譜和適量標注數據來進行自動化標注。
如上圖所示,展示了DS數據增強的過程,用關系(APP INC, product, iphone)DS系統能夠找到所有包含這兩個實體的句子,并且把他們的關系標注為product。
盡管DS提供了一種還算高效的數據增強的方法,但是DS往往會帶來很多的噪聲數據,如上圖的例子,第3句話,“I look up Apple Inc. on my iPhone.”中Apple Inc.和iPhone的關系就不是product。
因此有很多的研究基于如何改善DS,從而減稍噪聲數據,大致分為這3個方面:
1.選擇信息豐富(informative instances)的句子進行數據增強,包括引入圖模型和attention機制等來決策。
2.引入額外的信息來對DS data進行去噪,包括圖譜數據,語義信息等。
3.采用隨機機制和訓練策略來增強DS模型的性能。
2) Long-tail數據的學習:Few-shot Learning
真實世界存在的關系分布通常是長尾的,只有一些非常常見的關系有足夠的訓練數據,大部分的關系訓練數據都非常有限。
如上圖展示了NYT-10和wiki-distant兩個數據集中關系分布的情況,可以看到,很多的關系樣本數目都少于10個。這就要求模型能夠從少量的樣本中學習到這些關系的特征。而關于從少量樣本中學習特征的任務,Few-shot Learning就非常適合這個需求。
Few-shot Learning是從現存的大規模的訓練數據中訓練學習到樣本中非常好的表征,進而能夠遷移到新的任務取得較好的效果,如上圖所示是一個Few-shot Learning的例子。
Few-shot Learning主要包括兩種:
1.Metric Learning,通過現存數據學習一些語義網絡,對于新的query,通過跟訓練樣本進行比較來分類。
2.Meta-Learning,又被稱為“學習怎么學習”的方法,基本的思想是讓模型先在其它數據比較多的數據集上學到這些有關“該如何學習新的知識”的先驗知識,由此讓模型先學會“如何快速學習一個新的知識”,進而可以在數據較少的數據集上快速的學習。
3) 處理更復雜的文本
現實情況中,兩個實體及關于他們關系的信息可能會貫穿整個文檔(文檔可能很長);也有可能一段文本中,包含非常多的實體以及實體之間的關系,如上圖所示,展示了一段文本中包含復雜關系的例子。
從一段復雜的文本中抽取關系是一個復雜的問題,它需要模型具備在多個句子間進行理解、記憶和推理的能力,目前大部分的RE模型在這方面都還比較弱。
4) 面向開放領域的RE
目前大部分的RE系統都是先預定義好關系集合,RE系統只能從語料中抽取該集合內的關系。現實世界是開放的,并且知識在不斷的增加和變化,因此不可能將所有的關系都預定義好再進行抽取。這就需要一種能夠不依賴于預定于關系集合就能進行關系抽取的RE系統。
這方面目前以及有了一些探索,主要包括OpenIE和Relation discovery。
上圖展示了一種簇基的Relation discovery方法,通過聚類過程進行關系發現和分類。
總結
關系抽取是信息抽取中最重要的部分,是知識圖譜、文本結構化等重要的NLP任務的主要技術,是非常重要的一項NLP技能,后續我們會聚焦NRE,介紹更多的RE模型,請大家持續留意與關注。
下期預告:一種NRE模型介紹
知識星球推薦
掃描上面的二維碼,就可以加入我們的星球,助你成長為一名合格的自然語言處理算法工程師。
知識星球主要有以下內容:
(1) 聊天機器人。
(2) 知識圖譜。
(3) NLP預訓練模型。
轉載文章請后臺聯系
侵權必究
往期精選
【完結】 12篇文章帶你完全進入NLP領域,掌握核心技術
【年終總結】2019年有三AI NLP做了什么,明年要做什么?
【NLP-詞向量】詞向量的由來及本質
【NLP-詞向量】從模型結構到損失函數詳解word2vec
【NLP-NER】什么是命名實體識別?
【NLP-NER】命名實體識別中最常用的兩種深度學習模型
【NLP-NER】如何使用BERT來做命名實體識別
【NLP-ChatBot】我們熟悉的聊天機器人都有哪幾類?
【NLP-ChatBot】搜索引擎的最終形態之問答系統(FAQ)詳述
【NLP-ChatBot】能干活的聊天機器人-對話系統概述
【知識圖譜】人工智能技術最重要基礎設施之一,知識圖譜你該學習的東西
【知識圖譜】知識表示:知識圖譜如何表示結構化的知識?
【知識圖譜】如何構建知識體系:知識圖譜搭建的第一步
【知識圖譜】獲取到知識后,如何進行存儲和便捷的檢索?
【知識圖譜】知識推理,知識圖譜里最“人工智能”的一段
【文本信息抽取與結構化】目前NLP領域最有應用價值的子任務之一
【文本信息抽取與結構化】詳聊文本的結構化【上】
【文本信息抽取與結構化】詳聊文本的結構化【下】
【NLP實戰】tensorflow詞向量訓練實戰
【NLP實戰系列】樸素貝葉斯文本分類實戰
【NLP實戰系列】Tensorflow命名實體識別實戰
【NLP實戰】如何基于Tensorflow搭建一個聊天機器人
【NLP實戰】基于ALBERT的文本相似度計算
【每周NLP論文推薦】從預訓練模型掌握NLP的基本發展脈絡
【每周NLP論文推薦】 NLP中命名實體識別從機器學習到深度學習的代表性研究
【每周NLP論文推薦】 介紹語義匹配中的經典文章
【每周NLP論文推薦】 對話管理中的標志性論文介紹
【每周NLP論文推薦】 開發聊天機器人必讀的重要論文
【每周NLP論文推薦】 掌握實體關系抽取必讀的文章
【每周NLP論文推薦】 生成式聊天機器人論文介紹
【每周NLP論文推薦】 知識圖譜重要論文介紹
【NLP預訓練模型】你finetune BERT的姿勢可能不對哦?
總結
以上是生活随笔為你收集整理的【信息抽取】NLP中关系抽取的概念,发展及其展望的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【通知】深度学习之模型设计书籍勘误汇总!
- 下一篇: 【每周CV论文】初学GAN图像风格化必须