【論文筆記】Relation Classification via Multi-Level Attention CNNs

一、概要
  該paper發於ACL2016上,主要提出了一個基於多Attention機制CNN網絡的實體關係抽取方法,其中Attention機制主要是:Input Attention Mechanism和Convolutional Max-pooling Attention Mechanism。在不依賴於外部先驗知識和特徵的情況下,就已經能夠得到高於當前最好方法的結果。
二、模型方法
2.1 模型結構

這裏寫圖片描述

2.2 Input Representation
  對於一個句子S=(w1,w2,…,wn),以及其中的兩個實體e1(wp)和e2(wt),1<=p,t<=n,均將其轉爲詞向量;並且根據每個詞與實體的相對位置,也轉爲word position embeddings ,很明顯,每個詞與兩個實體有兩個相對位置,所以每個詞有兩個word position embeddings,所以,每個詞的Input Representation由三部分組成,如句子中第i個詞的Embedding可以表示爲WiM=[(Wdi)T,(Wpi,1)T,(Wpi,2)T] ,其中右邊第一項爲word embedding,第二和第三個分別爲該詞語實體e1和e2相對位置的word position embeddings。
  同時爲了充分得到上下文的信息,對於上面得到的使用滑窗的方法座位最終的Input Representation,即:zi=[(WMi(k1)/2)T,...,(WMi+(k1)/2)T] ,其中k爲滑窗大小。
2.3 Input Attention Composition
  根據2.2得到的word和entity Embedding,可以通過計算每個word與entity的內積以衡量它們的相近程度,即:Aji,i=f(ej,wI) ,其中f()爲內積函數,最終由softmax函數:

aji=Aji,ini=1jexp(Aji,i)

  到這裏已經獲得詞與兩個實體的相關程度的量了,那麼這兩個量就可以作爲Input Attention了,具體怎麼使用呢?可以通過平均的方法,即:ri=zia1i+a2i2 ,其中z爲上文得到的Input Representation,也可以通過串聯的方法,即ri=[(zia1i),(zia2i)] ,另外也可通過求差值的方法,所以最終的Input是R=[r1,r2,...,rn]
2.4 Convolutional Max-Pooling with Attention
  這時CNN就上場了,設卷積核Wf 的大小爲dck(dw+2dp) ,其中dc 爲卷積操作的大小,k(dw+2dp) 爲之前word和word position embedding串聯和k個滑窗的大小。可以得到:
R=tanh(WfR+Bf)

  這時使用到Attention-Based Pooling了,通過:
G=RUWL

  其中U是一個在網絡中學習的權值矩陣,WL 是關於labels一個矩陣,根據實體類別種類class_num和卷積核個數filter_num在網絡中學習而得,後面的代價函數還會用到。最終得到的attention pooling matrixAp 定義爲:
Api,j=exp(Gi,j)niexp(Gi,j)

  那麼最終輸出爲:
WOi=maxj(RAP)i,j

2.5 代價函數
  該論文提出使用δθ(S,y) 衡量句子S的輸出與上文提到的W^{L}中正確label對應向量的相關程度方法,具體爲:
δθ(S)=WOWOWLy

  在相減前均使用L2正則化,該作者還出輸出與錯誤標籤對應的Wy 的相關程度,並找到一個最小值,然後最大化它,很符合我們的直覺,那麼最終的代價函數爲:
L=[δθ(S,y)+(1δθ(S,y)]+βθ

  其中β 爲正則化係數。至此,模型結構就是這樣。
三、實驗和結果
  實驗數據取自SemEval-2010 Task 8 dataset 。在Wikipedia上使用 word2vec skip-gram model訓練詞向量。作者在雙attention model Att-Pooling- CNN模型上取得F1值爲88%。

這裏寫圖片描述

  作者還分析了一些錯誤分類的實體關係,以及訓練時Att-Input-CNN and Att-Pooling-CNN的特性,如下圖:

這裏寫圖片描述

這裏寫圖片描述

四、結論與思考
  作者認爲其提出的全新模型性能優於目前他人提出的模型或者利用先驗知識得到的結果,並且認爲此類模型在特定任務的的實體關係分類也能取到很好地效果。
五、個人思考:
  ①Input Representation部分k個相鄰的詞組成一個輸入,設計的Input Attention知識針對一個word,而不是相鄰的k個word;
  ②該模型在Max-Pooling with Attention的設計上沒有體現出其合理之處,文中缺少其解釋或者intuition,可能還有更好的設計方法;
參考文獻:
①Linlin Wang, Zhu Cao.Relation Classification via Multi-Level Attention CNNs.http://iiis.tsinghua.edu.cn/~weblt/papers/relation-classification.pdf
②代碼鏈接:https://github.com/FrankWork/acnn

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章