共计 6301 个字符,预计需要花费 16 分钟才能阅读完成。
文章起源 | 恒源云社区
原文地址 | UNIRE:一种用于实体关系抽取的对立标签空间
原文作者 | Mathor
参考链接
Abstract
(Zhong and Chen,ACL2020 Two are better than one: Joint entity and relation extraction with table sequence encoders) 应用 pipeline 办法为实体检测和关系分类设置了两个独立的标签空间,并获得了 SOTA。因为 pipeline 办法不能共享实体抽取和关系抽取的信息,因而作者为了促成两个工作的交互提出了一种能够共享标签空间的办法。
作者采纳表填充的办法实现,具体来说:输出一张 \(s\times s \)大小的表,这张表蕴含一个句子中所有的单词对,实体和关系由表格中的正方形和矩形示意(实体:实体外部所有字符都是雷同的实体类型标签例如 PER;关系:有关系的两个实体所有的字符之间都有雷同的关系标签),实体都在对角线,关系在非对角线。作者实现了 SOTA 并且只用了一半的参数,就达到了与最好的提取器相当的准确率,而且速度更快
Figure 1:联结实体关系提取表的示例。每个单元格对应一个单词对。实体是对角线上的正方形,关系是对角线外的矩形。请留神,PER-SOC 是无向 (对称) 关系类型 ,而PHY 和 ORG-AFF 是有向(非对称) 关系类型。
该表精确地示意重叠的关系,例如:PER 实体 \(\mathrm{David Perkins} \)参加两个关系 \(\mathrm{(“David Perkins”,“Wife”,PER-SOC)} \)and\(\mathrm{(“David Perkins”,“California”,PHYS)} \)
对于每个 units,一个雷同的双仿射模型预测其标签。联结解码器被设置为寻找最佳正方形和矩形
1 Introduction
人们认为联结模型可能会更好,因为它们能够加重子模型之间的误差流传,具备更紧凑的参数集,并且对立地编码对于两个工作的先验常识。本文将已有的独自的标签空间转化为对立的标签空间,存在的难点:两个子工作通常被表述不同的学习问题 (例如:作为序列标签的实体检测,作为多类分类的关系分类),并且它们的 标签被搁置在不同的事物上(例如,词与词对)。
先前的一次尝试 (Joint Extraction of Entities and Relations Based on a Novel Tagging Scheme – ACL Anthology) 是用一个 序列标记模型 解决这两个子工作。设计了一个复合标签集来同时对实体和关系进行编码。然而,该模型的表现力被就义了:它既 不能检测重叠关系 ( 即,参加多个关系的实体),也 不能检测孤立的实体(即,没有呈现在任何关系中的实体)。
作者定义一个新的对立标号空间的要害思维:将实体检测看作关系分类的特例。输出空间是一个二维表,每个条目对应于句子中的一个词对 (图 1)。联结模型从对立的标签空间(实体类型集和关系类型集的并集) 为每个单元指定标签。在图形上,实体是对角线上的正方形,关系是对角线外的矩形 。该公式保留了对于现有 entity−ralationentity-ralationentity−ralation 提取场景(例如,重叠关系、有向关系、无向关系) 的残缺模型表达能力。
基于表格模式,联结实体关系提取器执行两个操作:填充和解码 。首先, 填表是预测每个词对的标签 ,相似于依存句法分析中的弧形预测工作。采纳双仿射留神机制(Dozat 和 Manning,2016) 来学习词对之间的互动。本文还对表施加了两个构造束缚。而后,给出带有标签日志的表填充,本文设计了 一种近似联结解码算法来输入最终提取的实体和关系 。基本上,它高效地在表中找到 宰割点来辨认正方形和矩形(这也与现有的表填充模型不同,现有的表填充模型依然利用某些程序解码并递增地填充表)。
在三个基准测试 (ACE04,ACE05,SciERC) 上的试验结果表明,与目前最先进的提取器 (zhong 和 Chen,2020) 相比,该联结办法获得了与之相当的性能:在 ACE04 和 Science ERC 上性能更好,在 ACE05.1 上更具竞争力;同时,咱们的新联结模型在解码速度上更快(比确切的流水线实现快 10 倍,与近似流水线相当,但性能较低)。它还有一个更紧凑的参数集:与独自的编码器相比,共享编码器只应用一半的参数。
2 Approach
2.1 TASK DEFINITION
给定一个句子 \(s=x_1,x_2,…,x_{|s|} \)(\( x_i \)是 word),目标是提取一组实体 \(\varepsilon \)和一组关系 \(\mathcal{R} \)。对于关系三元组 \((e_1,e_2,l) \),其中 \(l \in \mathcal{Y_{r}} \)是预约义的关系类型,\(\mathcal{y_e} \)、\(\mathcal{y_r} \)示意预约义的实体类型和关系类型的汇合。
对于句子 \(s \)保护一个表格 \(T^{|s| \times |s|} \),其中 \(|s| \)示意句子长度。对于表 \(T \)中的每个单元格 \(cell(i,j) \),为其调配一个标签 \(y_{i,j} \in \mathcal{y} \),其中 \(\mathcal{y_e} \cup \mathcal{y_r} \cup {\perp} \),(\( \perp \)示意没有关系)
- 对于每个实体 e:对应的标签 \(y_{i,j}(x_i\in e.span,x_j\in e.span) \)应填写成 \(e.type \)
- 对于每个关系 \(r=(e_1,e_2,l) \):对应的标签 \(y_{i,j}(x_i\in e_1.span,x_j\in e_2.span) \)应填写成 \(l \)
- 对于其余的单元格填写 \(\perp \)
本文将解码实体和关系转化为一个矩形查找问题,查找问题采纳联结译码办法来解决。
2.2 BIAFFINE MODEL
通过 BERT 获取上下文示意 \(h_i \)如下所示:
为了捕捉长范畴依存关系,将句子扩大成固定的窗口大小 \(W \)(本文设为 200),为了更好的编码表 \(T \)中单词的方向信息,本文采纳了深度双仿射注意力机制,其操作如下:
start 和 end 的 span 如下所示:
计算每个词 span 的得分:\(g_{i,j} \in \mathbb{R^{|y|}} \)
其中 \(U_1\in \mathbb{R^{|y|{\times d\times d}}} \),\(U_2\in \mathbb{R^{|y|{\times 2d}}} \),\(b\in \mathbb{R^{|y|}} \)
2.3 TABLE FILLING
将 \(g_{i,j} \)馈送到 Softmax 中预测相应标签,从标签空间 \(y \)上产生概率分布:
试验中发现对 \(g_{i,j} \)利用 dropout 能够进一步提高性能, 作者称为 \(\mathbb{logit\ dropout} \)
应用穿插熵最小化指标函数:
其中 \(y_{i,j} \)是 gold label
2.4 CONSTRAINTS
指标函数简化了训练过程,实际上还存在一些构造上的束缚,实体和关系对应于表中的正方形和矩形,然而指标函数没有显示该束缚,本文提出了两个直观的束缚:对称和隐含。
应用记号 \(\mathcal{P}\in \mathbb{R}^{|s|\times |s| \times |\mathcal{y}|} \)示意句子 \(s \)中所有单词对的 \(P(y_{i,j}|s) \)重叠
Symmetry(对称)与实体对应的正方形必须在对角线上,对于对称关系如 \((e_1,e_2,l) \)和 \((e_2,e_1,l) \)是等价的,因而在表格上对称关系也是对于对角线对称的 (Figure 1 所示 \( \mathrm{(“his”,“wife”,PER-SOC)} \)and\(\mathrm{(“wife”,“his”,PER-SOC)} \) 矩形对于对角线对称)。
标签集 \(y \)分为对称标签集 \(y_ {sym} \)和非对称标签集 \(y_ {asym} \)
对于矩阵 \(\mathcal{P}_ {:,:,t} \)应该对于每个标签 \(t\in\mathcal{y_{sym}} \)的对角线对称,损失为:
Implication 蕴含、蕴含 一个关系存在,那么肯定存在两个实体,反之就是,没有两个对应的实体,那么肯定不可能存在。从概率的角度看,关系的概率大于每个实体的概率。通过蕴含思维,本文对 \(\mathcal {P} \)施加如下束缚:对于对角线上的每个单词,其在实体类型空间 \(\mathcal{y_e} \)上的最大可能性不得低于关系类型空间 \(y_r \)上同一行或同一列中的其余单词的最大可能性。
蕴含损失示意为:
其中 \([u]_*=max(u,0) \)是 hinge loss.
总的损失:
2.5 DECODING
在测试阶段,给定句子 s 的概率张量 \(\mathcal{P}\in \mathbb{R}^{|s| \times |s|\times |y|} \),从中解码实体的正方形和关系的矩形。受到 sun et al 2019 的启发,本文提出了一个三步解码算法:
1. 解码 span(实体或实体间 span)。
2. 解码每个 span 的实体类型。
3. 解码实体对的关系类型。
- span decoding一个实体蕴含的词的行列是雷同的,如果相邻的两行 / 列不同,阐明在此处肯定有实体边界
1. 从行的角度登程将 \(\mathcal{P}\in \mathbb{R}^{|s| \times |s|\times |y|} \) 展平为 \(\mathcal{P}^{row}\in \mathbb{R}^{|s| \times (|s|\cdot |y|)} \), 而后计算行的欧几里得间隔 \(\mathcal{l_2} \)
2. 相似的,从列的角度登程依据 \(\mathcal{P}^{col}\in \mathbb{R}^{(|s|\cdot |y|) \times |s|} \), 而后计算列的欧几里得间隔
3. 将两个间隔的平均值作为最终间隔
4. 如果间隔大于默认的阈值 \(\alpha(\alpha=1.4) \) 则此地位为宰割地位(实体边界),span 解码的工夫复杂度变成了 \(\mathcal{O(|s|)} \) - Entity Type Decoding通过 span encoding 得出 \(span(i,j)$,将失去的 \\(i,j$ 生成正方形来解码实体类型 \( \overset{\wedge}{t}$:
如果 \(\overset{\wedge}{t}\in y_e \)则解码为一个实体,如果 \(\overset{\wedge}{t}=\bot \)则 \(span(i,j) \)不是实体。
能够了解为:\(span(i,j) \)在表格中是一个正方形,利用 \(argmax(\cdot) \)取出正方形中所有分数的最大值作为以后 span 的分数。
- Relation Type Decoding在实体类型解码后,给定一个实体 \(e_1=span(i,j) \)和另一个实体 \(e_2=span(m,n) \),解码一个关系 \((e_1,e_2,\overset{\wedge}{l}) \), 如果 \(\overset{\wedge}{l}=\bot \), 示意没有关系。
模式上体现为:
如果 \(\overset{\wedge}{l}\in y_r \),解码为一个关系 \((e_1,e_2,\overset{\wedge}{l}) \),如果 \(\overset{\wedge}{l}=\bot \),则 \(e_1,e_2 \)没有关系。
能够了解为:将失去的 span 两两匹配,失去实体对之间的关系矩形,将矩形中最大的那个地位对应的关系标签作为最终的关系标签。
3 Experiments
句子长度设置为 200,对于 MLP 层,将暗藏大小设置为 d =150,并应用 Gelu 作为激活函数。应用了 \(\beta _1 \)=0.9 和 \(\beta _2 \)=0.9 的 AdamW 优化器。批大小为 32,学习率为 5e-5,权值衰减为 1e-5,线性预热学习率调度器,预热率为 0.2。用最多 200 个 epochs(对于 SciERC 为 300 个纪元)训练模型,并采纳提前进行策略。在 Intel Xeon W-3175X CPU 和 NVIDIA Quadro RTX 8000 GPU 上进行所有试验。
劝退型模型
总的来说,UNIRE 在 ACE04 和 SciERC 上获得了最好的性能,在 ACE05 上获得了可比的后果。与之前最好的联结模型 (Wang and Lu,2020) 相比,该模型在 ACE04 和 ACE05 上显著进步了实体和关系的性能,即实体的相对 F1 别离为 +0.9 和 +0.7,关系的相对 F1 别离为 +3.4 和 +1.7。
对于最好的流水线模相比,该模型在 ACE04 和 SciERC 上获得了优异的性能,在 ACE05 上获得了相当的性能。与 ACE04/ACE05 相比,SciERC 的规模要小得多,因而在 SciERC 上的实体性能大幅降落。因为 (钟和陈,2020) 是一种流水线办法,其关系绩效受到较差的实体绩效的重大影响。然而,咱们的模型在这种状况下受到的影响较小,并且取得了更好的性能。此外,在 ACE04 上,即便实体后果较差,咱们的模型也能取得较好的关系性能。
3.1 ABLATION STUDY
具体地说,本文实现了一种奢侈的比拟解码算法,即“硬解码”算法,它以“两头表”作为输出。“两头表”是双仿射模型输入的概率张量 P 的硬模式,即 抉择概率最高的类作为每个单元的标签。
为了找到对角线上的实体正方形,它首先尝试判断最大的正方形 (\( |s|×|s| \)) 是否为实体。规范只是计算呈现在正方形中的不同实体标签的数量,并抉择呈现频率最高的一个。如果最罕用的标签是⊥,咱们将正方形的大小放大 1,而后在两个 (\( (|s|−1)×(|s|−1) \) 正方形上执行雷同的工作,依此类推。为防止实体重叠,如果实体与标识的实体重叠,则将抛弃该实体。为了找到关系,每个实体对都用对应矩形中最频繁的关系标签进行标记。
从融化钻研中,咱们失去了以下察看后果:
1. 移除其中一个额定损失后,性能将随不同水平降落 (第 2 - 3 行)。具体地说,对称性损失对 SCERC 有显著影响(实体和关系绩效别离降落 1.1 分和 1.4 分)。而去除蕴涵损失会显著侵害 ACE05(1.0 分) 的关系绩效。它表明,这两种损失所蕴含的构造信息对这项工作是有用的。
2. 与“Default”相比,“w/o logit Dropout”和“w/o CrossStatement Context”的性能降落幅度更大 (第 4 - 5 行)。logit dropout 能够避免模型适度拟合, 而跨句上下文为这项工作提供了更多的上下文信息,特地是对于像 SciERC 这样的小型数据集。
3.“hard decoding”的性能最差(其关系性能简直是“default”的一半)(第 6 行)。最次要的起因是“硬解码”将实体和关系离开解码。
结果表明,该译码算法综合思考了实体和关系,对译码具备重要意义
3.2 ERROR ANALYSIS
咱们进一步剖析了用于关系提取的其余谬误,并给出了五种谬误的散布状况:
跨度拆分谬误 (SSE)、 实体未找到 (ENF)、实体类型谬误(ETE)、 关系未找到(RNF)、和关系类型谬误(RTE)
SSE 所占的比例绝对较小,这证实了咱们的跨度解码办法的有效性。
此外,无论是实体还是关系,“未发现错误”的比例都显著大于“类型谬误”的比例 。最次要的起因是填表存在类不均衡问题,即 \(⊥ \) 的数量远远大于其余类。