日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【文本信息抽取与结构化】深入了解关系抽取你需要知道的东西

發布時間:2025/3/20 编程问答 37 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【文本信息抽取与结构化】深入了解关系抽取你需要知道的东西 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

常常在想,自然語言處理到底在做的是一件什么樣的事情?到目前為止,我所接觸到的NLP其實都是在做一件事情,即將自然語言轉化為一種計算機能夠理解的形式。這一點在知識圖譜、信息抽取、文本摘要這些任務中格外明顯。不同的任務的差異在于目標的轉化形式不一樣,因而不同的任務難度、處理方式存在差異。

這個系列文章【文本信息抽取與結構化】,在自然語言處理中是非常有用和有難度的技術,是文本處理與知識提取不可或缺的技術。

本篇介紹如何從文本中抽取出兩個或者多個實體之間的關系,即關系抽取。

作者&編輯 | 小Dream哥

關系抽取概述

在前面的文章中,我們介紹了將文本結構化的大致過程以及信息抽取的、涉及到的技術,卻沒有介紹具體的技術細節。接下來我們來全面而細致的介紹相應的技術,今天我們關注關系抽取。

所謂關系抽取,就是抽取文本中兩個或者多個實體之間的關系。例如:

中國的首都是北京

關系抽取即是從上述文本中,抽取出如下的實體關系的任務:

<中國,首都,北京>

關系抽取的方法大概有以下幾類:

1.基于模板的方法

???????基于規則

????? ?基于依存句法

2.監督學習

????????機器學習

????????深度學習(pipline vs joint model)

3.半監督/無監督學習

????????Bootstrapping

????????Distant supervision

????????Unsupervised learning from web

下面我們一一來介紹這些方法。

基于模板的方法

1)基于自定義規則

通常來說,在語義上,表達兩種實體的關系都有一些特定的說法,例如剛才的例子,描述國家和首都通常都會有這樣的模式:

<國家>的首都/首付是<首都>

因此,基于自定義規則的方法,可以總結某類關系常用的說法,然后基于這些說法提煉出規則/正則表達式來進行關系抽取。

2)基于NER標簽

很多時候,特定的關系是在某些特定的實體之間,例如:

1.首都(國家,城市)

2.創作(歌手,歌曲)

3.寫作(作家,小說)

結合NER標簽與具體的規則,常常能夠取得不錯的關系抽取效果。

此外,基于句法關系等模板的方法,這里不再詳述。基于規則的方法有如下的優缺點:

優點:

????????1.準確率高

????? ? 2.可以為特定領域定制

????????3.啟動快,可以在小規模數據集上實現

缺點:

????????1.召回率低

????????2.特定領域的規則通常需要專家構建

????????3.難以維護

????????4.可移植性差

2? 監督學習方法

1)傳統機器學習

傳統機器學習進行關系提取通常基于一些分類模型,包括樸素貝葉斯,SVM等。為了提高效率,通常會訓練兩個分類器,第一個分類器是1/0分類,判斷命名實體間是否有關系;第二個分類器是多分類器,第一個分類器判斷有關系再輸入到這個分類器,預測關系的類別。這樣做能夠先排除大多數的實體對,進而加快分類器的訓練過程。

基于傳統機器學習方法的標準流程是:

1.預先定義好想提取的關系集合

2.定義或選擇相關的命名實體集合

3.尋找并標注數據

4.選擇有代表性的語料庫

5.命名實體標記

6.實體間的關系標注

7.分詞訓練、測試、驗證集

8.涉及特征

9.選擇并訓練分類器

10.評估結果

目前,用于關系抽取最多也是最有效的監督學習是深度學習的方法,所以這里就不多介紹機器學習相關的算法,我們來著重介紹深度學習的算法。

2)深度學習的方法

基于深度學習的關系抽取目前主要有兩種方法:Pipline Method和Joint Method。

Pipline Method,流水線方法:輸入一個句子,首先進行命名實體識別,然后對識別出來的實體進行兩兩組合,再進行關系分類。

流水線的方法存在蠻大的缺點,例如:

1.錯誤傳播,實體識別模塊的錯誤會傳播到后面的分類模塊;

2.忽略了兩個子任務之間存在的關系。例如前面“中國的首都是北京”的例子,如果存在“首都”關系,那么前一個實體必然是國家類別,后一個實體比如是城市類別。流水線的方法,忽略了這些信息;

3.產生了沒必要的冗余信息,由于需要對識別出來的實體進行兩兩配對,然后再進行關系分類;那些沒有關系的實體對就會產生多余的信息,提高錯誤率。

Joint Method,即聯合抽取方法,則跟流水線的方法不同,基于流水線方法的諸多缺陷,Joint Method能夠通過一個實體識別和關系分類的聯合模型,直接得到有關系的實體三元組。

Joint Method主要分為兩個流派,基于參數共享(Parameter Sharing)和基于標注策略(Tagging Policy)兩類。

基于基于參數共享(Parameter Sharing)的聯合抽取方法,可參考這一篇論文:

Suncong, Zheng, Yuexing, et al. Joint entity and relation extraction based on a hybrid neural network[J]. Neurocomputing, 2017.

如上圖所示,是這種方法的網絡結構框圖。每個詞都會被映射到一個實體標記(BILOS:Begin Inside Last Outside Single),它包含了改字在實體中的位置信息。NER模塊沒有用CRF,而是額外用了一層LSTM來解碼雙向LSTM編碼出來的Hidden state,并建模它和實體標記之間的關系。該模塊的損失函數如下:

關系分類模塊采用CNN模型,處理BiLSTM的Hidden state并輸出關系類別。該模塊的損失函數如下:

基于標注策略(Tagging Policy)的聯合抽取方法,可參考這一篇論文:

S. Zheng, F. Wang, H. Bao, Y. Hao, P. Zhou, B. Xu,?Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme,?Acl. (2017).

在這篇論文中,將實體識別和關系分類兩個問題,轉化為一個序列標注的問題,然后通過一個端對端的神經網絡模型直接得到關系實體三元組。

他們提出的這種新的標注策略主要由下圖中三部分組成:

1)實體中詞的位置信息{B(實體開始),I(實體內部),E(實體結尾),S(單個實體)};

2)關系類型信息{根據預先定義的關系類型進行編碼};

3)實體角色信息{1(實體1),2(實體2)}。注意,這里只要不是實體關系三元組內的詞全部標簽都為"O"。

如上圖所示,“B-CP-1"表示這個詞是一個實體的begin,同時這個實體屬于關系CP的第一個實體。

與典型的用LSTM進行實體抽取的模型差異在于,這個模型對損失做了一定的修改,如下圖所示:

當標簽為"O"時,就是正常的目標函數,當標簽不是"O"時,即涉及到了關系實體標簽,則通過α來增大標簽的影響。實驗結果表明,這個帶偏置的目標函數能夠更準確的預測實體關系對。

關于關系抽取的基本方法,到這里就介紹的差不多,希望讀者能有所收獲,下篇我們繼續介紹最新的關系抽取模型。

總結

文本信息抽取與結構化是目前NLP中最為實際且效益最大的任務,熟悉這個任務是一個NLP算法工程師必需要做的事情。

讀者們可以留言,或者加入我們的NLP群進行討論。感興趣的同學可以微信搜索jen104,備注"加入有三AI NLP群"

下期預告:最新的關系抽取模型介紹

知識星球推薦

掃描上面的二維碼,就可以加入我們的星球,助你成長為一名合格的自然語言處理算法工程師。

知識星球主要有以下內容:

(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論文推薦】 知識圖譜重要論文介紹

總結

以上是生活随笔為你收集整理的【文本信息抽取与结构化】深入了解关系抽取你需要知道的东西的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。