論文閱讀 - 《Relation Classification via Multi-Level Attention CNNs》

作者:xg123321123

出處:http://blog.csdn.net/xg123321123/article/details/553163257

聲明:版權所有,轉載請聯繫作者並註明出處

1 問題定義

關係提取用於從文本中抽取結構化事實。

2 背景綜述

  • 除了少數無監督方法,大部分方法都是將關係提取轉化爲多分類問題來做;
  • 傳統的基於特徵的方法要麼依賴於手工提取的特徵,要麼依賴於精心設計的kernel,這些方法不僅容易出錯,提取特徵的能力也是有限的,當應用到新的領域時不夠魯棒;
  • 近年來出現的神經網絡模型取得了一定成果,但模型較爲複雜,要麼是需要外部依賴,要麼是需要訓練多個子模型。

3 靈感來源

  • 現實世界中,同一關係可以被表達爲很多種形式,這就要求模型不僅得考慮詞級信息,還得考慮句級和語義級別的信息;
  • 有很多手工設計提取特徵的模型;
  • 也有一些基於神經網絡的模型,但大多需要外部依賴,同時,對於關鍵信息的捕捉還不理想。

4 方法概述

將attention機制加入到神經網絡中,對於反映實體關係更重要的詞語給予更大的權重,輔以改進後的目標函數,從而提高關係提取的效果。
整體結構示意圖如下:

這裏寫圖片描述

  • 將attention機制應用在輸入序列中,用於學習輸入語句中各部分對兩個實體的注意力;
  • 將attention機制應用在池化層上,用於學習目標類別的注意力;
  • 改進了目標函數,使其在關係提取上表現得更好。

輸入表示

對於一個句子S=(w1,w2,...wn) ,有兩個標記的實體e1(wp)e2(wt) ,其中(p,t[1,n],pt)

  • 先將每個單詞轉換爲真值向量,即將wi 表示爲wdiTdw ,其中dw 是向量的維度;
  • 爲了進一步捕獲實體之間關係的信息,引入了WPE(word position embeddings),具體來說,就是將每個單詞相對於兩個實體的距離給保存下來,即將wi 表示爲wMi=[(wdi)T,(wpi,1)T,(wpi,2)T]T ,其中(wpi,1)T,(wpi,2)T 分別是wi 關於實體e1e2 的向量;
  • 最後爲了充分利用上下文信息,用了一個大小爲k的sliding window,每次以第i 個詞爲中心進行“卷積”(進行了padding操作),這樣就將k 個詞語的信息都編碼成了最終的向量形式zi
    zi=[(wMi(k1)/2)T,,(wMi+(k1)/2)T]T

輸入級attention機制

  • 輸入級的attention機制是設計兩個關於實體對上下文相關的對角矩陣,Aj,j=1,2
  • 該矩陣中各元素反映該詞語與給定實體間聯繫的強弱,也就是分配在該詞上對於實體的注意力,比如Aji,i=f(ej,wi) 就是反映的wiej 之間的聯繫強弱程度;
  • 上一點中,函數fwiej 的內積;
  • 網絡訓練的目標之一就是訓練出這兩個矩陣;
  • 爲了衡量第i個詞與第j個實體間的關聯程度,定義以下因子:
    αji=exp(Aji,i)ni=1exp(Aji,i)
  • 用該因子乘以之前構造的輸入向量R=[r1,r2,...,rn] ,其中n 是句子長度,作爲輸入層的最終輸出;
  • 對於α1iα2i 兩個相關因子,有三種處理方式:
    • 直接平均:
      ri=ziα1i+α2i2
    • 串聯:
      ri=[(ziα1i)T,(ziα2i)T]T
    • 距離:
      ri=ziα1iα2i2

池化級attention機制

  • 將前面得到的矩陣R 送入卷積核大小爲dc 的卷積層,卷積操作可形式化表示爲
    R=tanh(WfR+Bf)

    其中Wf 尺寸爲dc×k(dw+2dp) ;
  • 然後構建一個相關性矩陣來捕獲卷積層輸出R 與實體關係WL 之間的聯繫
    G=RTUWL

    其中U 爲要學習的權重矩陣,WL 後面會介紹到;
  • 再用softmax函數來處理相關性矩陣G ,獲得attention pooling矩陣Ap (這真不知道該咋翻譯了)
    Api,j=expGi,jni=1exp(Gi,i)
  • 最後用Ap 與卷積層輸出R 相乘,也就是加入混合中的attention,然後取出每一維度的最大值,得到網絡的輸出
    wOi=maxj(RAp)i.j

目標函數

  • 整個網絡的輸出應該是將編碼後的輸入序列映射在實體關係空間中的向量,同樣地,網絡也會學習出對應每一類實體關係的向量。基於這兩個向量,文章提出了一種距離函數:

    δθ(S,y)=||w⃗ o|w⃗ o|WLy||

    其中,距離爲歐式距離,WLy 爲關係嵌入。
  • 根據目標函數,設計出了損失函數:

    L=[δθ(S,y)+(1δθ(S,y^))]+β||θ||2
    =[1+||w⃗ o|w⃗ o|WLy||||w⃗ o|w⃗ o|WLy^||]+β||θ||2

    其中δθ(S,y) 表示預測的輸出與ground truth之間的距離,δθ(S,y^) 表示預測的輸出與所有錯誤類別中得分最高的那個類別的距離。最後一項爲正則項。

5 模型分析

attention機制

爲了探究attention機制的作用,隨機選取一個句子:

The disgusting scene was retaliation against her brother Philip who rents the [room]e1 inside this apartment [house]e2 on Lombard street.

畫出其經過attention機制後的權重圖,發現“inside”被賦予了最高的權重,“room”和“house”也享有較高的權重,因爲他們跟分類關係有直接關聯,而“this”則獲得最低的權重,大概是因爲其和分類關係的關聯太過微弱。

關係分類有力的特徵

根據三元組對句子關係分類的貢獻度進行排序後發現,排在前面的都是一些典型的“固定搭配”。

錯誤分析

  • 對於在訓練集中未出現的,或者使用比喻性用法時,出錯可能性比較大;
  • 對於一些上下文沒有明顯幫助的隱式關係,也較爲容易出錯,而更加豐富的詞嵌入可能會對這種情況有幫助。

6 未來展望

未來會考慮將這種多層級的attention機制運用在其他方面。

本篇博客主要參考自
《< Relation Classification via Multi-Level Attention CNNs>小結》

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