实体关系抽取是指从非结构化文本中抽取形式如头实体, 关系和尾实体的三元组的信息. 它是知识图谱及一些下游工作的基础. 目前该任务主要存在着3种类型的实体重叠问题, 分别是: 单个实体重叠(single entiy overlap, SEO)、实体对重叠(entity pair overlap, EPO)以及无实体重叠(normal). 单个实体重叠是指一个实体与其他多个实体存在关系; 实体对重叠是指一个实体对存在多种关系; 无实体重叠是指一个实体与另一个实体之间有且仅有一个关系, 并且另一个实体也是唯一的. 目前来说, 三元组抽取方法大体分为管道(pipeline)和联合(joint)两种方式. 管道方法主要采用先抽取实体, 再抽取关系的方式来进行实体关系抽取. 早期, 该类方法主要采用卷积神经网络(convolutional neural network, CNN)[1]进行实体关系抽取, 其将无监督的词向量以及位置向量作为输入特征来进行实体关系抽取并取得了一定效果, 但存在卷积核大小固定, 抽取到的特征单一的缺点. Shen等人[2]将注意力机制方法引入到CNN模型中进行关系抽取, 充分利用了位置等信息从而提升了模型效果. 在这之后, 基于循环神经网络的方法也逐渐被应用到这个任务上, 并能够很好地解决文本长依赖问题. Qin等人[3]使用了引入注意力机制的双向循环门控单元, 能够捕获更有价值的字符级信息. Xu等人[4]提出了基于最短依存路径的长短时记忆网络对文本进行关系分类, 能够收集该最短路径上的异构信息. 采用管道方式纵然能够取得一定的实体关系抽取效果, 但结构上不可避免地存在误差累积的问题. 采用联合抽取的方式将实体识别与关系抽取任务进行联合建模, 同时完成实体和关系的抽取, 可以在一定程度上避免这种误差累积问题. 在早期尝试中, Miwa等人[5]提出了一种树形结构来提取实体及实体关系. 其主要利用了词序信息以及依存树结构信息, 将长短时记忆模型转换为树形结构来进行建模. 但该方式并不是完全同步, 实体与关系的抽取还是存在先后性. 而Zheng等人[6]将该问题转换为一个序列标注问题, 利用长短时记忆网络就可以建模, 大大简化了问题的复杂性. 但是该模型缺点也十分明显, 以该方式进行实体关系抽取难以解决实体重叠问题. Bekoulis 等人[7]在此基础上引入了多头注意力机制对该问题进行建模, 从而部分解决实体关系重叠问题. Wei等人[8]提出了CasRel方法, 该方法通过共享参数将三元组抽取任务视为一个多任务学习. 其将该任务建模成3个级别问题, 从而更有效的解决实体重叠问题, 但存在曝光偏差问题, 即训练阶段同时训练, 而在预测时则按照一定的顺序进行依次抽取. TPLinker[9]则是基于握手标注策略的端到端序列标注模型, 巧妙地将联合抽取转化为token pair的链接问题, 避免了曝光偏差问题.
上述所采取的模型方法中, 主要存在着模型结构复杂、需特殊的标注方法、需精心设计抽取次序等抽取设计问题, 以及实体重叠和误差累积问题. 在本文中, 我们对这些问题进行实验探究, 提出以关系为导向的一种无复杂设计结构、无特殊标注方法且简单有效的实体关系联合抽取方法, 该方法针对上述问题主要贡献如下.
(1) 所提出的方法在解决实体对重叠问题上效果较好, 能够在关系数较多样本量较少的情况下, 保持较好的表现.
(2) 本文提出在没有获得实体前, 通过采用自注意力机制关注字符(词)信息生成模拟实体信息, 进而抽取实体关系的方法, 该模型有效的提升三元组抽取效果.
(3) 在保证三元组抽取效果的前提下, 本文极大地简化了抽取模型, 无复杂设计部分与较为特殊的训练方式, 易于理解.
1 相关工作对于两种抽取方法(管道式与联合)又可以分别细分为以关系为导向(先关系后实体)和以实体信息为导向(先实体后关系). 这里主要介绍采用以关系为导向的处理流程来进行实体关系联合抽取. 例如: CopyRE[10]与HRL[11]均是在预测阶段先抽取关系再抽取实体方法. 不同的是, CopyRE是以一种复制机制来抽取三元组信息方法, 但其只能复制实体的最后一个单词. 而HRL则应用了一种分层强化学习的方式来抽取三元组的信息. RSAN[12]则提出了一种基于关系注意力机制的方法来进行实体关系三元组的抽取. 该方法利用注意力机制为每个关系构建特定的句子表征, 并据此抽取特定关系下的实体信息. 然而, 上述以关系为导向的实体关系联合抽取法所采取的方式都较为复杂, 忽略了一些简单却有效的方法和理论研究. 例如, Yu等人[13]使用双仿射注意力机制能够让实体首尾边界进行交互, 从而达到提升实体抽取效果; Wu等人[14]通过提取实体的字符向量与句子语义信息从而获得较为全面的信息来提升关系抽取效果; Peng等人[15]对实体信息与上下文信息对关系抽取影响进行了深入研究, 发现实体信息对于关系抽取的效果有重要的影响.
本文对上述方法进行简化和改进, 将有效的方法与研究保留(如: RSAN模型中利用平均池化方法提取整个句子信息, 引入实体信息思想等), 构建了有效且简单的实体关系三元组的联合抽取模型, 该模型不仅保留了上述方法的优点, 还有效地提取存在实体重叠问题的文本中的三元组.
2 模型概述依据所划分的两个任务, 本文所提出的方法分为两个模块: 关系抽取模块与实体抽取模块, 如图1所示.
从模型整体上来说, 如图1所示, 对于一个给定的句子, 首先将该句子输入进编码器获取到由每个词所对应的词向量, 这里使用BERT预训练模型作为共享编码器得到编码输出
关系抽取模块主要是完成句子中关系的识别, 一个句子中会存在多个关系, 因此该模块主要完成多分类任务, 又由存在一个关系必定存在一对实体对的思想, 所以在预测阶段, 关系抽取模块对于后面的实体抽取模块起到了奠定基础的作用. 而以关系为导向的实体关系抽取模型, 少有在关系抽取上引用实体信息, 这是由于关系抽取阶段实体信息未知. 在本文中我们提出模拟实体的思想来进行引入实体信息, 也即是每个词都可能蕴含实体信息, 将每个词约视作实体, 由此如果需要知道在某个关系下的实体信息, 就是要知道词与词之间的重要性, 因为一个关系存在则必定能对应一组实体对, 那么在该关系下这组实体对之间关联程度, 应当大于与其他实体的关联程度, 简化思想即是求词与词之间的关联程度. 如果两个字符的关联度大则说明这两个字符对关系具有一定的重要性, 可以根据输入的编码单词向量计算出的模拟实体信息预估. 由此, 在获得单词向量的表示之后, 可以使用自注意力机制关注字符与字符之间的重要程度从而模拟所需要的实体信息, 并对已经获取到这种重要性的词向量矩阵进行平均池化来表示整个句子的实体信息. 具体公式如下:
$ Entity\_v = Avgpool\left({\textit{Softmax}} \left(\frac{{Q{K^{\rm{T}}}}}{{\sqrt {dk} }}\right)V\right) \in {R^{d \times 1}} $ | (1) |
$ Q = {W_{{\rm{query}}}}{Y_{{\rm{enc}}}}(s) $ | (2) |
$ V = {W_{{\rm{value}}}}{Y_{{\rm{enc}}}}(s) $ | (3) |
$ K = {W_{{\rm{key}}}}{Y_{{\rm{enc}}}}(s) $ | (4) |
$ \left\{ {\begin{split} & {h^{{\rm{avg}}}} = Avgpool({Y_{{\rm{enc}}}}(s)) \in {R^{d \times 1}} \\ & {p_{{\rm{rel}}}} = {\textit{Sigmoid}}({W_r}[{h^{{\rm{avg}}}};Entity\_v]) \in {R^{{n_r} \times 1}} \end{split} } \right.$ | (5) |
其中,
从关系抽取模块中获取到句子关系向量后, 将其与句子中的每个单词向量进行拼接, 继而使用条件随机场识别出实体. 实体的标注采用普通常用的标注方法即BIO标注法. 计算标签
$\left\{ { \begin{split} & {V_{{\rm{mix}}}} = Concat({Y_{{\rm{enc}}}}(s), {u_j}) \in {R^{2d \times {{n}}}} \\ & O = {W_o}{V_{{\rm{mix}}}} + {b_o} \\ & P(y|s) = \frac{{\exp \left(\displaystyle\sum\nolimits _i({O_{i, {y_i}}} + {T_{{y_{i - 1}}, {y_i}}})\right) }}{{\displaystyle\sum\nolimits_{y' \in {Y_s}} {\exp \left(\displaystyle\sum\nolimits_i ({O_{i, y_i{'}}} + {T_{y_{i - 1}{'}, y_i{'}}})\right) } }} \end{split} } \right.$ | (6) |
其中,
在训练阶段, 利用数据集的已知信息对模型进行训练, 两个子任务不相互依赖, 即在训练阶段, 实体抽取模块不需要使用由关系模块中所获得的关系来进行训练, 而是直接使用数据中真实的关系, 由此, 训练阶段避免了由关系不正确而导致的误差累积问题; 在预测阶段, 则是需要先通过关系抽取模块获得关系, 再利用获得的关系进行实体的抽取, 最后将获得实体与关系进行组合, 将所抽取的头实体、尾实体与关系组合起来获得(头实体, 关系, 尾实体)这样的三元组. 各部分以及总的损失函数如式(7)–式(9)所示:
$ {L_{{\rm{rel}}}} = - \frac{1}{{{n_r}}}\sum\limits_{i = 1}^{nr} {(x_i{'}\log {P_{{\rm{rel}}}} + (1 - x_{{i}}{'})\log (1 - {P_{{\rm{rel}}}}} )) $ | (7) |
$ {L_{{\text{ent}}}} = - \log \left(\frac{{\exp \left(\displaystyle\sum\nolimits _i({O_{i, {y_i}}} + {T_{{y_{i - 1}}, {y_i}}})\right) }}{{\displaystyle\sum\nolimits_{y' \in {Y_s}} {\exp \left(\displaystyle\sum\nolimits_i ({O_{i, y_i{'}}} + {T_{y_{i - 1}{'}, y_i{'}}})\right) } }}\right) $ | (8) |
$ L = \alpha {L_{{\rm{rel}}}} + \beta {L_{{\rm{ent}}}} $ | (9) |
我们尝试最小化L的损失函数, 其中
数据集采用NYT[16]和WebNLG[17]数据集. NYT数据集与WebNLG数据集分别可分为两种类型: 一类为实体边界标注完全的类型, 另一类型为仅标注实体最后一个单词. 本文使用的类型为实体边界标注完全类型, 即在NYT数据集上与WebNLG数据集上的实体边界均标注完全. NYT数据集来源于纽约时报New York Times (NYT)所标注的语料, 有24个有效关系. WebNLG为自然语言生成任务而构建的数据集, 拥有239个有效关系. 具体信息如表1所示. 对于不同的数据集, 实验设定参数并不相同, 主要的实验参数设定与实验环境配值分别如表2、表3所示.
我们采用标准查准率, 召回率以及F1值作为我们的评判方法. 评判标准为所抽取的三元组中实体对与关系如果能够相互匹配, 则视为正确.
3.2 实验效果及分析本文主要选取CopyRE等以关系为导向的模型与TPLinker等目前在WebNLG数据集与NYT数据集效果较好的模型作为比较参照对象, 具体结果如表4所示.
通过对比效果可以发现, 在上述模型中, 本模型效果在以关系为导向的模型(CopyRE、HRL、RSAN与CasDE)中表现效果与CasDE表现效果相近. 具体来说, 本模型在NYT数据集上, F1值相较于CasDE效果低了0.3%, 但在WebNLG数据集上F1值则比CasDE高出0.4%. 究其具体原因, CasDE模型与本模型结构虽然相似, 但却有着根本不同, CasDE模型主要采取一种级联的方式, 即是在抽取完关系的基础上, 再结合关系去抽取头实体, 最后结合抽取到的头实体与关系再去抽取尾实体. 这样做的好处在于增加了实体抽取部分特征的多样性, 但坏处也同样明显, 如若中间头实体抽取错误很有可能导致尾实体抽取错误. 而本文模型在实体抽取模块并不采用这种级联结构, 是将实体成对抽取, 这样有效地避免了这种错误. 但是这样做在关系数较少的情况下, 容易过拟合, 因而本模型在NYT数据集下效果略低于CasDE. 对比其他并不以关系为导向的模型(ETL-span、TPLinker、PMEI), 本文模型效果在WebNLG数据集上表现较好而在NYT数据集上表现欠佳. 具体对比TPLinker模型, 本文模型在NYT数据上F1值低了1.7%, 而在WebNLG数据集F1值上高了2.1%. 主要原因可能是由于TPLinker是采用了基于握手标注策略的端到端序列标注模型. 具体来说, 该模型将实体头部与实体尾部链接, 头实体头部与尾实体头部链接, 头实体尾部与尾实体尾部链接, 链接所采用的方式为构建一个矩阵, 在矩阵中进行标记. 接下来只需要训练模型来预测每个关系下的矩阵, 这样就可以实体关系同时训练, 同时预测, 不存在训练与预测顺序不一致问题(即曝光偏差问题), 从而使其在某些数据集上有更好的表现. 而对于本文所提出的模型, 仍然存在一定的曝光偏差问题, 因此在NYT数据集上效果差于TPLinker. 但在WebNLG数据集上, 本文提出的方法在召回率上高于TPLinker, 这说明虽然本模型存在一定曝光偏差问题, 但总体模型结构仍有可取之处. 总之, TPLinker精心设计了一组特殊的标注方式, 将该任务转化为序列标注任务从而到达实体关系可以同时抽取的目的, 而对于本文所提出方法没有采用特殊标注方式, 而是按照传统的标注方式对实体进行标注, 训练阶段, 实体抽取模块不需要使用由关系模块中所获得的关系来进行训练, 而是直接使用数据中真实的关系, 由此, 训练阶段避免了由关系不正确而导致的误差累积问题, 预测阶段再共同互相协助预测方式进行预测. 最后, 综合对比NYT和WebNLG的识别结果, 可以看出在关系数较多的情况下本文模型效果较好. 这是由于关系数较多不容易导致过拟合的问题, 因此该方法对于解决关系数较多的文本中的问题效果较好.
我们更进一步研究了其解决SEO、EPO以及normal问题的能力, 以及存在一个或多个关系时模型抽取实体关系三元组的能力. 具体结果如表5所示.
由表5可知, 本文所提出的模型在解决SEO、EPO问题上均好于处理normal问题. 在NYT和Web-NLG数据集上的F1值均在90%左右, 说明该模型能够有效地解决实体重叠问题. 并且当句子中存在2到4个关系时, F1值也能保持在90%左右, 这说明当句子中存在2到4个关系时, 该方法效果较好, 能够有效地抽取出实体关系. 为进一步地研究本文方法解决实体重叠的能力, 我们主要在关系数较多的WebNLG数据集上与以关系为导向的方法(CasDE、RSAN模型)进行比较, 结果如图2所示.
如图2所示, 在解决实体重叠问题, 该方式相比于RSAN模型与CasDE模型都有提升, 特别是在解决EPO问题效果最为显著, 说明该方法在解决实体对重叠问题上效果较好, 这是因为模型是以关系为导向, 在给定关系的情况下, 模型会尽可能地去识别实体对, 并不会出现由于级联的方式带来的误差, 从而在解决实体对重叠问题上效果较好. 综合来看, 本文所提出的方法相对于一些以关系为导向的实体抽取方法, 在处理各个实体重叠问题上并没有落后于大部分方法.
3.3 消融实验为探究模型的各部分是否都起到了应有的作用, 我们在WebNLG数据集上进行消融实验探究, 其结果如表6所示.
由上述消融实验可以看出, 各部分均起到了效果, 其中条件随机场对于约束实体边界起到了较为重要的效果, 自注意力机制的运用也对模型起到了积极提高的作用, 这说明各部分均无冗余, 均对模型的最终效果有着贡献.
4 结束语本文主要借由实体信息对于关系抽取的效果有重要的影响的思想, 采用以关系为导向的策略, 来指导模型的构建, 使得该方法更加有效的解决实体重叠问题. 且从训练方式来看, 两个模块在训练阶段中独立训练, 缓解误差累积问题. 提出引入模拟实体信息思想, 模型采用自注意力机制关注字符信息以此来模拟实体信息, 更加有效的提升整体效果, 并且采用较为常用的方法来进行三元组抽取, 无复杂设计部分与较为特殊的训练方式, 也易于理解与使用. 且由消融实验可以看出自注意力机制对于模拟实体信息是有效的.
[1] |
Zeng DJ, Liu K, Lai SW, et al. Relation classification via convolutional deep neural network. Proceedings of COLING 2014, the 25th International Conference on Computational Linguistics. Dublin: ACL, 2014. 2335–2344.
|
[2] |
Shen YT, Huang XJ. Attention-based convolutional neural network for semantic relation extraction. Proceedings of the 26th International Conference on Computational Linguistics. Osaka: The COLING 2016 Organizing Committee, 2016. 2526–2536.
|
[3] |
Qin PD, Xu WR, Guo J. Designing an adaptive attention mechanism for relation classification. Proceedings of 2017 International Joint Conference on Neural Networks (IJCNN). Anchorage: IEEE, 2017. 4356–4362.
|
[4] |
Xu Y, Mon LL, Li G, et al. Classifying relations via long short term memory networks along shortest dependency paths. Proceedings of the 2015 Conference on Empirical Methods in Natural Language Processing. Lisbon: ACL, 2015. 1785–1794.
|
[5] |
Miwa M, Bansal M. End-to-end relation extraction using LSTMs on sequences and tree structures. Proceedings of the 54th Annual Meeting of the Association for Computational Linguistics. Berlin: ACL, 2016. 1105–1116.
|
[6] |
Zheng SC, Wang F, Bao HY, et al. Joint extraction of entities and relations based on a novel tagging scheme. Proceedings of the 55th Annual Meeting of the Association for Computational Linguistics. Vancouver: ACL, 2017. 1227–1236.
|
[7] |
Bekoulis G, Deleu J, Demeester T, et al. Joint entity recognition and relation extraction as a multi-head selection problem. Expert Systems with Applications, 2018, 114: 34-45. DOI:10.1016/j.eswa.2018.07.032 |
[8] |
Wei ZP, Su JL, Wang Y, et al. A novel cascade binary tagging framework for relational triple extraction. arXiv:1909.03227, 2019.
|
[9] |
Wang YC, Yu BW, Zhang YY, et al. TPLinker: Single-stage joint extraction of entities and relations through token pair linking. Proceedings of the 28th International Conference on Computational Linguistics. Barcelona: International Committee on Computational Linguistics, 2020. 1572–1582.
|
[10] |
Zeng XR, Zeng DJ, He SZ, et al. Extracting relational facts by an end-to-end neural model with copy mechanism. Proceedings of the 56th Annual Meeting of the Association for Computational Linguistics. Melbourne: ACL, 2018. 506–514.
|
[11] |
Takanobu R, Zhang TY, Liu JX, et al. A hierarchical framework for relation extraction with reinforcement learning. Proceedings of the 33rd AAAI Conference on Artificial Intelligence and 31st Innovative Applications of Artificial Intelligence Conference and 9th AAAI Symposium on Educational Advances in Artificial Intelligence. Honolulu: AAAI Press, 2019. 868.
|
[12] |
Yuan Y, Zhou XF, Pan SR, et al. A relation-specific attention network for joint entity and relation extraction. Proceedings of the 29th International Joint Conference on Artificial Intelligence. Yokohama: IJCAI.org, 2021. 561.
|
[13] |
Yu JT, Bohnet B, Poesio M. Named entity recognition as dependency parsing. arXiv:2005.07150, 2020.
|
[14] |
Wu SC, He YF. Enriching pre-trained language model with entity information for relation classification. Proceedings of the 28th ACM International Conference on Information and Knowledge Management. Beijing: ACM, 2019. 2361–2364.
|
[15] |
Peng H, Gao TY, Han X, et al. Learning from context or names? An empirical study on neural relation extraction. arXiv:2010.01923, 2020.
|
[16] |
Riedel S, Yao LM, McCallum A. Modeling relations and their mentions without labeled text. Proceedings of the Joint European Conference on Machine Learning and Knowledge Discovery in Databases. Barcelona: Springer, 2010. 148–163.
|
[17] |
Gardent C, Shimorina A, Narayan S, et al. Creating training corpora for NLG micro-planning. Proceedings of the 55th annual meeting of the Association for Computational Linguistics. Vancouver: ACL, 2017. 179–188.
|
[18] |
Yu BW, Zhang ZY, Shu XB, et al. Joint extraction of entities and relations based on a novel decomposition strategy. Proceedings of the 24th European Conference on Artificial Intelligence. Santiago de Compostela: IOS Press, 2020. 2282–2289.
|
[19] |
Ma LB, Ren HM, Zhang XL. Effective cascade dual-decoder model for joint entity and relation extraction. arXiv:2106.14163, 2021.
|
[20] |
Sun K, Zhang RC, Mensah S, et al. Progressive multi-task learning with controlled information flow for joint entity and relation extraction. Proceedings of the 35th AAAI Conference on Artificial Intelligence. Palo Alto: AAAI Press, 2021. 13851–13859.
|