1引言
傳統意義上講,關係抽取是實體識別基礎上的一個任務,其核心是抽取一個句子中包含實體對之間的關係。第一步就是訓練一個關係抽取器,換句話講就是訓練一個關係分類器。由於模型不可能本身給關係起名字,因此咱們須要人工的標註好語料,基於語料庫咱們一共有多少種關係。當模型訓練好了以後,給它一個包含兩個實體的句子,咱們經過特徵提取生成一個句子向量,經過根據語料數據訓練出的關係抽取器來斷定該句子應當分到哪一類中去,從而完成句子中兩實體的關係分類。node
傳統關係抽取有如下三種方法:數據庫
1. Supervised relation extraction:對句子中的關係進行人工標註,而後抽取詞法、句法、語義特徵,訓練有監督的分類器,對測試集中的實體關係進行預測;express
2. Unsupervised information extraction:從大量文本中,對實體進行標註,經過聚類等方法抽取實體之間的關係字符串。這種方法能夠抽取很是大量的關係對,可是抽取結果很難映射到知識庫中。bootstrap
3. bootstrap learning:利用少許的種子實例或模板,進行bootstrap的學習。將已有的實例應用在大規模語料中,抽取出新的模板;而後用新的模板抽取出更多的實例,如此迭代。但抽取結果準確率較低,還可能發生語義轉移。工具
2 遠程監督
Distant Supervision,是目前關係抽取中比較常見的一類作法。該方法由 M Mintz 大佬於ACL2009上首次提出,它既不是單純的傳統意義上的監督語料,固然也不是無監督。它是一種用KB去對齊樸素文本的標註方法(Distant supervision for relation extraction without labeled data )。學習
KB中已經有關係名和實體對的三元組,只須要把這三元組付給樸素文本中相應的句子就能夠了,那按照什麼原則付?(數據庫監督)M Mintz 提出了一種十分大膽的假設:測試
The intuition of distant supervision is that any sentence that contains a pair of entities that participate in a known Freebase relation is likely to express that relation in some way.ui
即,若是咱們訓練語料中的句子所包含的實體對在數據庫中有關係的體現,那麼咱們認爲語料庫中全部包含相同實體對的句子都表達此關係。那麼,天然而然的咱們提取特徵的時候就會出現不少噪聲。好比兩個實體之間還有別的關係或者是沒有關係,這樣的訓練數據會對咱們的關係抽取器產生影響。orm
2.1 training
1.使用NET(named entity tagger)標註。blog
2.對在freebase中出現的實體對提取特徵(從全部出現該實體對 的句子中),構造訓練數據。
3. Multiclass logistic regression classifie
論文中採用的NET標註工具爲斯坦福的NRT標註器,再生成訓練集的過程當中,咱們首先對大量文本句子進行命名實體標註,若是一個句子中含有兩個實體,且這兩個實體在Freebase( KB)中是一個關係對,那麼從句子中提取特徵,將關係做爲類別,直到該類別中再也不有新的句子加入,咱們從該類別中的全部句子提取特徵向量而且合併成一個更大的特徵向量,從而訓練出Multiclass logistic regression classifie。
2.2 testing
1. 使用NET(named entity tagger)標註。
2. 在句子中出現的每對實體都被考慮作爲一個潛在的關係實例, 做爲測試數據。
3. 使用訓練好的模型對實體對進行分類。
在測試階段,先對句子中的命名實體進行標註,抽取其中的命名實體對和特徵。若是多個句子的命名實體對同樣,則將它們的特徵合併在同一個特徵向量中。而後利用邏輯迴歸分類器,對關係名稱進行識別。這種方法的好處是能夠綜合文本中的多處,對一個實體對進行關係判斷。
例如:<Steven Spielberg, Saving Private Ryan >---film-director
咱們單看如下的第一個句子和第二個句子,都不能判斷出Steven Spielberg和Saving Private Ryan之間存在film-director關係,可是把兩個句子結合起來咱們就能作到了。
[Steven Spielberg]’s film [Saving Private Ryan] is loosely based on the brothers’ story.
Allison co-produced the Academy Awardwinning [Saving Private Ryan], directed by [Steven Spielberg]...
3 特徵提取
Lexical features
1. 實體對之間的詞串;
2. 這些詞的詞性標記;
3. 哪一個實體出如今前;
4. 實體1左邊k個詞和它們的POS標記;
5. 實體2右邊k個詞和它們的POS標記。
Syntactic features
1. 兩實體之間的依存路徑
2. 對每一個實體,增長一個window node作爲特徵。window node是指與其中一個實體鏈接,但並不在依存路徑中的節點。
論文中是結合詞法特徵提取、句法特徵提取和命名實體特徵提取。一般咱們如今使用深度學習的方法來進行特徵提取,所取得的效果也是有目共睹的。例如(Neural Relation Extraction with Selective Attention over Instances ),使用PCNN對句子分段進行特徵提取而後句子建模,將訓練句子表示成一個sentence vector,而後在進行關係分類。
4 結論
Distant Supervision的方法雖然從必定程度上減小了模型對人工標註數據的依賴,但該類方法也存在明顯的缺點:
1. 假設過於確定,不免引入大量的噪聲數據(「Steven Jobs」,「Apple 」)
2. 數據構造過程依賴於 NER 等 NLP 工具,中間過程出錯會形成錯誤傳播問題。
近些年,對於大量噪聲數據的過濾的研究也一直在進行中,例如使用Multi-instance從訓練集中抽取取置信度高的訓練樣例訓練模型,利用Attention模型對數據進行全方位的權重計算,從而獲得全面而不失「選擇」的訓練數據。對於錯誤傳播放大的問題近期更有「joint learning」方法的提出,將命名實體識別和關係抽取兩部併爲一步走。本來流水線(pipeline )式的方法也是人爲的將一個句子的信息抽取分紅兩部走,如今這種更加「原生態」的關係抽取方式說不定可以大放異彩。