論文題目:HMEAE: Hierarchical Modular Event Argument Extraction
論文來源:EMNLP 2019 清華、微信AI
論文鏈接:https://www.aclweb.org/anthology/D19-1584/
代碼鏈接:https://github.com/thunlp/HMEAE
關鍵詞:事件元素抽取(EAE),概念層次,attention,BERT,CNN
文章目錄
1 摘要
本文解決的是事件元素抽取(EAE)任務。
現有的方法獨立地對每個argument進行分類,忽視了不同argument roles間的概念相關性。本文提出了HMEAE(Hierarchical Modular Event Argument Extraction)模型處理EAE任務。
作者爲概念層次(concept hierarchy)的每個基本單元設計了一個神經網絡模塊,然後使用邏輯操作,將相關的單元模塊分層地組成一個面向角色的模塊網絡(modular network),對特定的argument role進行分類。
由於許多的argument roles共享相同的高層次(high-level)的單元模塊,argument roles間的關聯就得到了利用,有助於更好地抽取出特定的事件arguments。
實驗證明了HMEAE可以有效地利用概念層次的知識,效果優於state-of-the-art baselines。
2 引言
(1)任務介紹
事件抽取(EE)通常看成由兩個子任務構成:事件檢測(ED)、事件元素抽取(EAE)。近些年來,EAE成了EE的瓶頸。
EAE的目的是識別出是事件arguments的實體並對該實體在事件中扮演的角色進行分類。
例如,在句子“Steve Jobs sold Pixar to Disney”中,“sold"觸發了Transfer-Ownership事件。EAE的目的是識別出"Steve Jobs"是一個事件元素(event argument),並且該元素的角色爲"Seller”。
(2)現有方法的不足
現有的方法都是將元素角色看成是彼此之間相互獨立的,忽視了一些元素角色和其他元素的概念相似性。
以圖1爲例,相比於"Time-within",“Seller"在概念上和"Buyer"更接近,因爲它們共享了相同的上級概念"Person"和"Org”。概念層次可以提供額外的有關元素角色間關聯的信息,有助於元素角色的分類。
(3)作者提出
作者受先前的層次分類網絡[1~3]和神經模塊網絡(NMNs)[4]的啓發,提出了HMEAE模型,利用了概念層次的信息。
HMEAE模型採用了NMNs,模仿概念層次的結構,實現了一種靈活的網絡結構,爲更好的分類性能提供了有效的歸納偏差(inductive bias)。
如圖1所示,作者將概念分爲兩類:表示抽象概念的上級概念;細粒度的元素角色(argument roles)。一個元素角色可以從屬於多個上級概念。
如圖2所示,爲每個概念設置了一個NMN,並將其組成了一個面向角色的模塊網絡,以預測每個實體的元素角色:
1)首先,對於每個上級概念,有一個上級概念模塊(SCM)來突出和概念有關的上下文信息;
2)然後,對於每個元素角色,使用針對特定角色的邏輯模塊整合和其相對應的SCMs,以得到統一的高層次的模塊;
3)最終,使用元素角色分類器,預測實體是否扮演了給定的元素角色。
本文的模型將概念層次納入考慮有以下好處:1)高層次的模塊可以有效增強分類器性能;2)不同元素角色共享上級概念模塊。
3 模型
HMEAE模型結構如圖2所示,由3部分組成:
1)實例編碼器(instance encoder):將句子編碼成隱層嵌入,並使用特徵聚合器將句子信息聚合成統一的實例嵌入;
2)分層模塊的注意力(hierarchical modular attention component):生成面向角色的嵌入,以突出參數角色上級概念的信息;
3)元素角色分類器(argument role classifier):使用實例嵌入和面向角色的嵌入,針對該實例估計出特定元素角色的概率。
3.1 Instance Encoder
將一個實例表示爲個單詞的序列:,分別表示觸發詞和候選元素。觸發詞是用已有的ED模型選擇出來的,與本文無關。句子中的每個命名實體都是一個候選元素。
(1)句子編碼器
將單詞序列編碼成隱層嵌入:
其中是一個神經網絡,本文使用CNN和BERT作爲編碼器。
(2)特徵聚合器
將隱層嵌入聚合成一個實例嵌入。本文使用dynamic multi-pooling作爲特徵聚合器:
其中,表示向量的第個值;分別是觸發詞和候選元素的位置。將3個piecewise max-pooling結果拼接起來作爲實例的嵌入。
3.2 Hierarchical Modular Attention
如圖2所示,給定隱層嵌入,上級概念模塊(SCM)爲每個隱層嵌入給出了一個注意力得分,以建模其與特定上級概念的相關性。
由於一個元素角色可以從屬於多個上級概念,所以使用一個邏輯模塊(logic union module)以結合源於不同上級模塊的注意力分值。
對於每個元素角色,將其上層概念模塊組合成完整的hierarchical modular attention模塊,構建面向角色的嵌入。
(1)上級概念模塊(SCM)
對於特定的上級概念,使用可訓練的向量表示其語義特徵。作者採用了多層感知機(MLP)來計算注意力分值。
首先計算隱層狀態:
然後,進行softmax操作,爲每個隱層嵌入得到對應的注意力分值:
其中,是可訓練的矩陣,並且在不同的SCM間共享。
(2)Logic Union Module
給定一個元素角色,定義它的個上級概念爲,針對的相應的注意力分值爲。
對這些注意力分值求均值,得到面向角色(role-oriented)的注意力分值:
然後使用上面計算出的面向角色的注意力分值作爲權重,對所有的隱層嵌入進行加權求和,得到面向角色的嵌入:
3.3 Argument Role Classifier
將實例嵌入和實例的面向角色的嵌入作爲分類器的輸入,估計給定實例的條件下,角色的概率。其中,是元素角色的嵌入。
目標函數定義如下:
4 實驗
(1)數據集
ACE 2005, TAC KBP 2016
(2)概念層次的設計
使用8個不同的上級概念,人工設計了概念層次。
(3)對比方法
1)基於特徵的方法
- Li’s joint
- RBPB
2)神經網絡方法
- DMCNN, DMBERT:和文本模型大致一樣,但是缺少hierarchical modular attention模塊。
- JRNN
- dbRNN:使用了句法信息
- HMEAE(CNN)
- HMEAE(BERT)
(4)實驗結果
在兩個數據集上進行實驗,不同方法的結果如下:
從ACE 2005數據集中隨機採樣了一個句子,該句在HMEAE (BERT)模型中的注意力分值可視化如圖3所示。可以看出單詞隱層嵌入的注意力分值,在與其相關的上級概念上得分較高。這表明,由於上級概念模塊(SCM)是共享的,所以無需經過專門數據的訓練,SCM就可以很好地捕獲概念特徵。
5 總結
本文提出了HMEAE模型,用於處理EAE(事件元素抽取)問題(面向的是argument roles的分類問題)。
採用靈活的模塊網絡(modular networks),利用了和元素角色(argument roles)相關的層次概念,作爲有效的歸納偏置(inductive bias)。
實驗證明了HMEAE的有效性,並在某些度量上超越了state-of-the-art。
未來工作:在使用本文模型的基礎上,根據人的經驗,利用更多樣的inductive bias,來提升一些擴展任務。
這篇文章的亮點在於使用到了概念層次的信息,有助於EAE中的argument roles分類問題。
模型在建模的過程中以一個實例作爲對象,也就是一個句子。先使用CNN或BERT將句子建模成隱層嵌入序列;然後根據觸發詞和候選元素(句中實體)的位置,使用dynamic multi-pooling進行了特徵的聚合,得到了實例的嵌入。
接着,在上級概念模塊(SCM)中使用注意力機制,給每個隱層嵌入分配一個注意力分值,表示該隱層嵌入和該上級概念的關聯性程度。然後,給定角色,對隱層在不同上級概念中的注意力分值求平均,得到每個token 針對該角色的注意力分值。再使用這個注意力分值作爲權重,對所有的隱層嵌入進行加權求和,得到輸入實例(句子)的面向角色的嵌入。
最後,將實例的嵌入和實例的面向角色的嵌入拼接起來作爲分類器的輸入,和元素角色的嵌入相乘,再經過一層softmax,爲輸入的實例預測角色。
本人沒有看過代碼,光看論文個人感覺有一些不足之處。模型是對一個句子進行argument role的預測的,而一個句子中可能有多個argument。如果句子中有多個argument,分類器給句子分配了概率最大的role,那這個role對應哪個argument呢?如果是根據句子中的候選argument數選擇前個概率最大的role,那這些role該怎麼分配給對應的argument呢?我覺得作者忽視了這個問題,只考慮句子中有一個觸發詞、一個參數的情況。因爲3.1節中定義輸入序列時,是寫了一個(觸發詞)和一個(argument),沒有提到有多個或多個的情況。
參考文獻
[1] Xipeng Qiu, Xuanjing Huang, Zhao Liu, and Jinlong Zhou. 2011. Hierarchical text classification with latent concepts. In Proceedings of ACL-HLT, pages 598–602.
[2] Kazuya Shimura, Jiyi Li, and Fumiyo Fukumoto. 2018. HFT-CNN: Learning hierarchical category structure for multi-label short text categorization. In Proceedings of EMNLP, pages 811–816.
[3] Xu Han, Pengfei Yu, Zhiyuan Liu, Maosong Sun, and Peng Li. 2018. Hierarchical relation extraction with coarse-to-fine grained attention. In Proceedings of EMNLP, pages 2236–2245.
[4] Jacob Andreas, Marcus Rohrbach, Trevor Darrell, and Dan Klein. 2016. Neural module networks. In Proceedings of CVPR, pages 39–48.