笔记:Enriching Pre-trained Language Model with Entity Information for Relation Classification
Enriching Pre-trained Language Model with Entity Information for Relation Classification
作者:Shanchan Wu、Yifan He
目录:
- Introduction
- Method
- Experiments
- Conclusion
1 Introduction
自从Bert问世以来,再多个NLP任务中都有不错的表现,大多为分类和序列标注任务。那么本文尝试使用Bert做关系抽取--主要是关系分类。
2 Method
R-BERT的整体结构如图Figure 1所示。
首先,与其他关系分类一致,输入为标识了两个实体的一条语句。同时由于关系分类任务与其他多分类任务以及序列标注任务不同,我们不仅需要考虑输入语句的语义信息,同时还要考虑语句中两个实体的信息。因此,作者为了让BERT能够识别两个标识的实体,分别再两个实体前后加入了一个特殊符号,使得BERT能够提取两个实体的局部信息。同时类似BERTpaper中的输入也加入了[CLS]符号再句首,标识句子的开始以及若是输入为两个语句加了个[SEP]分隔符,用于分隔两个句子。如实体为“kitchen”、“house”的一条语句:“[CLS] The $ kitchen $ is the last renovated
part of the # house # . ”。
其次,输入给BERT后得到对应的输出,假设BERT最后一层的hidden state 输出为H,那么如图其中\(H_i\)到\(H_j\)代表第一个实体最后一层的hidden state输出,同理\(H_k\)到\(H_m\)代表第二个实体最后一层的hidden state输出,对于这两个实体的hidden state,我们采用average的方法分别将每个实体的hidden state都转换为对应的一个hidden state 的vector,之后经过tanh非线性变换以及dense层线性变换,得到最终的两个实体各自的表示,\(H'_1\)和\(H'_2\),如下公式Eq (1)。
对于特殊符号[CLS],同样做线性非线性变换得到\(H'_0\),如下公式Eq (2),其中\(W_0、W_1、W_2\)为同一个权重矩阵,大小为\(d\times d\), 其中\(d\)为从BERT得到的hidden state的维度。每个\(H_j\)都是维度为\(d\)的vector,\(b\)为偏置项。
最后,我们将这三个H拼接为一个vector即一维张量,喂给softmax全连接层做分类,如下公式Eq (3)所示,其中\(W_3\)为\(L\times{3d}\)的权重矩阵,L为关系类别数,p为最终关系预测的概率。
3 Experiments
作者与其他多个关系分类方法做了对比,详见原文。
同时还做了定量分析,分析除了BERT以外到底那部分组件对整个模型的性能贡献叫较大,文中主要做了三组对比,BERT-NO-SEP-NO-ENT、BERTNO-SEP和BERT-NO-ENT。分别去掉实体前后的特殊符号以及实体的hidden state。结果表明特殊分隔符和实体的hidden state都很重要,究其原因,作者认为这个特殊标识符能够使得BERT确认两个实体的位置,这样就会将关系抽取中比较重要的两个实体及其局部的信息迁移到BERT模型中,使得BERT输出中包含两个实体的位置信息。同时,作者还认为将三个H拼接结合的操作会更进一步的丰富信息使得模型会做出更加准确的预测。
4 Conclusion
未来可以考虑把这个模型进行扩展,将其用在distant supervision上。
因为本文的训练集中的数据是不含噪声的也就是说数据不是通过DS方法得到的,同时本文也只是针对一个句子而非mutil-instances。
参考
[1] Shanchan Wu and Yifan He. 2019. Enriching pre-trained language model with entity information for relation classification. arXiv preprint arXiv:1905.08284.