Aspect Term Extraction 論文閱讀(六)
Coupled Multi-layer Attentions for Co-extraction of Aspect and Opinion Terms(AAAI 2017)
本文旨在進行 aspect 和 opinion term 的同步提取。根據現有文獻,作者總結三種 aspect and/or opinion term 的提取方式:
rule-based
該方法基於語法或者依存結構手動設置一些規則,然後將一些種子集合作為輸入,迭代地獲取一些 aspect 和 opinion term。
feature-engineering-based
該方法訓練一個具有大量的,手動定義的基於語言學和句法學的特徵的分類器,這些特徵來源於標記過的語料庫,來在句子中的每一個 token 預測標籤。
deep-learning-based
句法或依存關係分析在一份非規範化或複雜文本上表現的比較差,所以文中採用 attention
架構(Coupled Multi-layer Attention,CMLA)
- 針對每一句話我們構建一個 attention 對,一個用於 aspect 抽取,另一個用於 opinion term 的抽取。每一個 attention 致力於學習出一個 aspect 或者 opinion 的 prototype vector,一個針對於每一個 token 的 high-level feature vector,和一個針對於每一個 token 的 attention score。feature vector 和 attention score 用以測量輸入 token 和 prototype vector 之間的關聯關係。因此,一個帶有高分值的 token 代表著它是一個 aspect 或 opinion term 的可能性更大。
- 為了捕獲 aspect 和 opinion term 之間的直接關係,如圖1 中的 。這樣的 attention 對在學習中是成對存在的,這樣 attention 之間是相互影響的。
- 為了捕獲 aspect 和 opinion term 之間的間接關係, 如圖1 中的 關係。文中引入了多層的 coupled attention。
Attention With Tensor Operator
CMLA 的基礎是一對 attention:aspect attention 和 opinion attention。與之前的方法不同,文中採用 attention 來鑒定一個 token 作為 aspect term 或者 opinion term 的可能性。
在 aspect attention 中,我們首先產生一個aspect 的初始表示 prototype vector ,他可以被看做是句中 aspect term 的一個 general feature representation(通常表示)。給定 和 , 代表一個長度為 的詞序列表示,模型掃描整個輸入序列,並針對第 個 token,計算一個 attention vector 和一個 attention score 。
為了獲得 ,我們首先計算一個 composition vector ,該矩陣代表著 和 prototype vector 的關聯程度,計算方式如下:
其中 , 的計算如圖二所示,可以理解為,對 個 分別針對 進行操作:
文中指出, 代表著 種 的組合形式,也可以說代表 aspect 的 種文本特徵(如語法特徵)。之後,通過 GRU,將 轉化為 ,通過 GRU 使得 具有上下文信息。
attention score 的計算方式如下:
因為 代表著一個關聯關係 vector, 可以視作 的權值向量。此時, 的大小代表著其為 aspect 或者 opinion term 的大小。
在最後一層, 也代表著詞 的最終表示。因此,最終也將 作為計算標籤概率的輸入,計算如下:
其中 , 為標籤的種類,可以理解為針對每個 token 做 分類。
Coupled Attention for Dual Propagation
如圖3所示,實線和虛線分別代表 aspect attention 和 opinion attention。這兩個 attention 針對於相同的 token 共享 相同的特徵向量 。我們在每一次迭代的時候,將兩個 prototype vector 都帶入到兩邊的形成一個 vector 對 ,並將前面的操作進行更改:
, , ,其中 用以幫助判定當前 token 和 之間的關係,從而達到判定 aspect 和 opinion term 之間關聯關係的效果。
上文中提到的 計算如下:
Muti-Layer Coupled Attentions
成對的關係只能捕獲 aspect 和 opinion term 之間的直接關係,捕獲不到間接關係(上文中有提及),所以文中提出了一個 Muti-Layer Coupled Attentions。
如圖4 所示, 層 attention 是從 層 attention 獲得的,公式如下:
, 計算如下:
最後,我們可以接入全連接層輸出最終結果:
可視化結果
推薦閱讀: