1. 程式人生 > 實用技巧 >多例項+選擇注意力機制進行遠端關係抽取

多例項+選擇注意力機制進行遠端關係抽取

論文:ACL2016-Neural relation extraction with selective attention over instances

梗概:

遠端監督關係的抽取:被廣泛用於從文字中找到新的關係,但這卻總會伴著錯誤的標籤,基於這個問題,後面提出了將多例項與神將網路相結合的方法,但會丟失大量有用的資訊,訓練效果並不好。

因此,本文提出一種基於句子級注意力的CNN用於遠端監督關係抽取

具體實現:

輸入一個句子以及兩個實體,我們的model對每個關係r的可能性進行計算

兩個模組:

Sentence Encoder:輸入句子x和兩個entity,經過cnn後生成對應的句子表示X

Selective Attention over Instance:基於例項的選擇性注意

如圖所示,具體流程為:

1、輸入含m個word的序列x={w1,w2,….wm}生成word embedding 表示每個單詞為da維

2、資訊提取中,接近entity的word是最能提供資訊以決定是否有關係,因此我們應用位置嵌入,他可以跟蹤與頭實體或尾實體的接近程度,最終生成的每個單詞的嵌入矩陣為

3、主要的問題是句子長度是可變的,資訊可能存在於任何區域,我們通過卷積層合併所有特徵。

我們通過一個長度為l的滑動視窗從句子上提取區域性特徵,這裡的卷積被定義為卷積矩陣和序列詞向量的成績,我們定義

第i層卷積計算為:

這裡我理解W為一個dc層的卷積矩陣,生成dcm維向量,然後拼接在一起,生成一個Rdc*m)的矩陣)

最後經過池化層,池化層可以直接取最大值,或者採取分段最大池化,然後拼接的方法。

4、Selective Attention over Instance:

我們定義S={x1,x2,…..xn},表示句子的集合

集合向量為

我們用兩種方法定義a 平均x或選擇性注意,

選擇性注意:

而這個e用來定義xi和關係r的相似程度,這個地方被稱為bilinear form 也就是雙線性模型。而這個地方的r是我們要注意的一個關鍵點。

我們首先意識到,這裡是一個注意力機制,而注意力機制最關鍵的地方便是找到context vector,普通的選擇性注意力機制,需要extra information來計算相似度,而這個地方,便是關係r,我們通過不斷的學習,生成變數r,最奇特的是r是我們學習得來的,也就是說這個r可以是關係r,甚至可以說成是什麼context vector,這都是我們解釋得來的,後面我會好好解釋一下這個地方。

最後經過一個輸出層,然後softmax操作生成一個概率向量,在已知對應關係r的條件下,最大化對應的概率,如下面的公式: