原創 2017-08-18 PaperWeekly PaperWeekly
說起關係抽取,就不得不提遠端監督(distant supervision),將已有的知識庫(比如 freebase)對應到豐富的非結構化資料中(比如新聞文字),從而生成大量的訓練資料,從而訓練出一個效果不錯的關係抽取器。提到遠端監督,下面的這篇工作就不得不提:
[1] Distant supervision for relation extraction without labeled data
本文並非第一篇提出遠端監督概念的 paper,但是第一個將遠端監督概念應用到關係抽取任務中,並且提出了一個著名的假設。
If two entities have a relationship in a known knowledge base, then all sentences that mention these two entities will express that relationship in some way.
這個假設非常的大,其實很多的共現 entities 都沒有什麼關係,僅僅是出現在同一個句子中;而有的 entities 之間的關係其實並不僅僅只有一種,可能有多種,比如奧巴馬和美國的關係,可能是 born in,也可能是 is the president of 的關係。
基於這個假設條件下的關係抽取工作通常都存在兩個明顯的弱點:
1. 基於文獻 [1] 給出的假設,訓練集會產生大量的 wrong labels,比如兩個實體有多種關係或者根本在這句話中沒有任何關係,這樣的訓練資料會對關係抽取器產生影響。
2. NLP 工具帶來的誤差,比如 NER,比如 Parsing 等,越多的 feature engineering 就會帶來越多的誤差,在整個任務的 pipeline 上會產生誤差的傳播和積累,從而影響後續關係抽取的精度。
關於問題(1)中 wrong labels 的問題,有的工作將關係抽取定義為一個 Multi-instance Multi-label 學習問題,比如工作 Multi-instance Multi-label Learning for Relation Extraction ,訓練集中的每個 instance 都可能是一種 label。
而有的工作則是將問題定義為 Multi-instance Single-label 問題,假設共現的 entity 對之間只存在一種關係或者沒有關係,一組包括同一對 entities 的 instances 定義為一個 Bag,每一個 Bag 具有一個 label,最終訓練的目標是最佳化 Bag Label 的準確率。第一種假設更加接近於實際情況,研究難度也相對更大一些。
關於問題(2)中的 pipeline 問題,用深度學習的思路來替代特徵工程是一個非常自然的想法,用 word embedding 來表示句子中的 entity 和 word,用 RNN 或者 CNN 以及各種 RNN 和 CNN 的變種模型來對句子進行建模,將訓練句子表示成一個 sentence vector,然後進行關係分類,近幾年有幾個工作都是類似的思路,比如:
[3] Relation Classification via Convolutional Deep Neural Network
[4] Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks
[5] Neural Relation Extraction with Selective Attention over Instances
[6] Distant Supervision for Relation Extraction with Sentence-Level Attention and Entity Descriptions
其中 [3] 是用 CNN 對句子進行建模然後進行分類學習,在表示中針對 entity 的位置定義了一種 position embedding,如圖 1:
▲ 圖1:用 CNN 來建模句子
[4] 是 [3] 的改進工作,對 CNN 的 pooling 進行了專門的改進,如圖 2:
▲ 圖2:PCNN 是文獻 [3] 中 CNN 的改進版
[5] 的工作是在 [4] 的基礎上採用了 attention 模型,對每個 Bag 中的 instance 進行了權重的學習,label 正確的 instance 貢獻更多的力量,label 不正確的 instance 貢獻就低,從而提高了分類的準確率,如圖 3:
▲ 圖3:基於 attention 的關係分類模型
[6] 是在 [4] [5] 的基礎上新增了 entity 的描述資訊來輔助學習 entity 的表示,從而提高了準確率,如圖 4:
▲ 圖 4:利用了 entity 的輔助資訊來提升效果
用深度學習來進行解決特徵表示的問題效果非常明顯,但解決 pipeline 誤差傳播和積累的問題,其實有一個天然的思路就是 joint learning,將多個 step 的學習整合為同一個 task,從而降低中間過程的誤差。近幾年有以下幾個工作可以關注一下:
[7] Modeling Joint Entity and Relation Extraction with Table Representation
[8] CoType: Joint Extraction of Typed Entities and Relations with Knowledge Bases
[9] Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme
[7] 的工作和 [9] 的工作有一些類似的地方,都是將整個任務轉化為一種序列標註任務,用自定義的標籤重新定義了句子的實體和關係。[9] 的工作是 ACL 2017 的 outstanding paper,用了近幾年流行的 seq2seq 來生成和推理標籤,效果會比傳統的 crf 等演算法更好。
▲ 圖5:文獻 [7] 的標註方法
▲ 圖 6:文獻 [9] 的標註方法
[8] 的工作是將 entity 和 relation 分別對映在兩個向量空間中,然後聯合起來對 entity 和 relaiton 進行推理。如圖 7:
▲ 圖7:CoType 模型圖
關係抽取是一類經典的 NLP 任務,也是構建高質量知識圖譜的基礎,針對關係抽取的研究工作非常多,遠端監督是研究中的熱點方法,本文收集了一些代表性的工作,即將上線的 PaperWeekly 社群將會推出一個【論文集】的功能,社群使用者可以根據自己感興趣的 topic,收集相關的 paper,我們也會不定期地放出更多精彩的 topic related 的 paper,每篇 paper 都會有使用者的筆記、討論、論文相關的資料集和開原始碼, 敬請期待!
參考文獻:
[1] Distant supervision for relation extraction without labeled data
[2] Multi-instance Multi-label Learning for Relation Extraction
[3] Relation Classification via Convolutional Deep Neural Network
[4] Distant Supervision for Relation Extraction via Piecewise Convolutional Neural Networks
[5] Neural Relation Extraction with Selective Attention over Instances
[6] Distant Supervision for Relation Extraction with Sentence-Level Attention and Entity Descriptions
[7] Modeling Joint Entity and Relation Extraction with Table Representation
[8] CoType: Joint Extraction of Typed Entities and Relations with Knowledge Bases
[9] Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme