【文献阅读】01-基于新分解策略的实体关系联合抽取
【文献阅读】01-基于新分解策略的实体关系联合抽取-ECAI 2020:Joint Extraction of Entities and Relations Based on a Novel Decomposition Strategy
1 Introduction
1.1 实体关系联合抽取
实体关系抽取任务:提取具有语义关系的实体对,即三元组; 是信息提取的中心任务,需要从非结构化文本自动构建知识 。
实体关系抽取目前两种常见解决方案
Pipeline:早期的信息抽取将实体抽取和关系抽取看作两个独立的任务,这样的串联模型在建模上相对更简单。但这样将实体识别和关系抽取当作两个独立的任务会导致一些问题:比如误差积累、实体冗余、关系重叠问题等等 。
联合抽取:对实体抽取和关系分类联合建模,能够利用实体和关系之间的交互信息,同时抽取实体并分类实体对的关系,可以很好地解决流水线方法所存在的问题。
3. 目前的抽取思路:通常是 先提取实体对-然后-再对关系进行分类或采用统一标注的方式 来解决实体关系抽取问题。
文章认为目前的方法依然存在一些问题:1.模型受冗余实体对的影响; 2.对实体识别和关系提取 的内在联系的利用还不够充分。
1.2 文章工作
1.文章提出新方法解决实体关系抽取问题:
将任务分解为两个相互关联的子任务 :
HE(Head-Entity)提取和TER(Tail-Entity and Relation)提取
HE任务提取句子中的头实体
TER任务为每个提取的头实体确定相应的尾实体和关系
2.提出基于跨度的标记方案
将两个子任务分解为序列标记问题
提出分层边界标记器HBT 与 多跨度解码算法 解决问题
模型可以捕获不同步骤间的语义依赖,并减少冗余实体的干扰; 在NYT-Single、NYT-Multi、WebNLG数据集上达到了最新水平 。
2 ETL-Span
2.1 Tagging Scheme
标注方案
文章把实体关系抽取任务分解为了头实体抽取和尾实体与关系抽取两个子任务,但这两个子任务都可以在同一个标注框架下实现,每个抽取任务都可以化为两个序列标注任务。
头实体抽取
第一个序列标注任务:识别一个实体的开始位置。 如果一个token是实体的开始词,则将其标记为相应的实体类型,否则将为其分配标签“ O”(外部)。
第二个序列标注任务:识别一个实体的结束位置。
尾实体和关系抽取
第一个序列标注任务:识别一个尾实体的开始位置。 如果一个token是实体的开始词,则将其标记为和头实体之间的关系类型,否则将为其分配标签“ O”(外部)。
第二个序列标注任务:识别一个尾实体的结束位置。
如果在头实体抽取过程中抽取出m个头实体,要识别句子中所有重叠关系, 模型只需对同一句子进行2+2m次标记, 意味着文章提出的模型更加节省时间和效率,和其他使用 “ BIES”标注策略的模型相比,文章提出的标注策略只预测开始和结束位置,还保留了多词实体提及的能力。
2.2 层次边界标记器(HBT)
根据标记方案,文章提出 层次边界标记器来做提取工作。文章认为,预测实体开始位置和结束位置两个任务之间存在自然的顺序: 开始位置的预测结果 可能会有助于 对结束位置的预测 ,于是文章提采用 层次标记结构。
每一层和一个任务相关联:左侧是预测实体开始位置,右侧是预测实体结束位置 。在这两个任务都选择BiLSTM 作为编码器对输入的信息进行编码,输出隐藏状态,再用softmax归一化之后预测开始和结束标签。
两个任务不同点: 输入信息不同
开始位置预测部分的输入::是token的隐藏表示,是辅助向量:是从整个句子中学到的全局表示。
结束位置预测部分的输入:替换为 开始位置预测任务的隐藏状态,又增加了一个开始标签的 位置嵌入 。可以用开始位置预测的结果协助结束位置预测。
2.3 多跨度解码算法
在推理时,为了适应多目标提取任务,文章提出了一种多跨度解码算法。
对于每个输入句子S,首先初始化变量来帮助解码:
(1)n:S的长度
(2)R:记录提取出的 目标和类型标签 的一个空集
(3)s:存储当前最近的起始位置
(4) :具有默认值C的,长度为n的列表:保存位置序列(这个序列会转化为向量表示,作为位置信息用于结束位置预测部分的输入)
利用标记好的开始标签序列,在pse中填充好位置信息
5~11行
最后解码 开始标签和结束标签:
首先遍历开始标签:找到目标的起始位置如果当前索引的标签不是“ O”,则表示该位置可能是起始单词 (第14行)
然后从这个位置开始遍历,通过识别 结束标签 来 搜索结束位置(第15行)
匹配标准:如果结束位置的 标签类型 与开始位置的标签类型相同(第16行)
两个 位置之间的单词 视为候选目标(第17行)
并且把这个标签类型 视为 目标的类型(第18行)
最后将提取的 目标 及其 标签类型 添加到集合R中(第19行)
再循环,寻找下一个开始位置(第20行)
直到抽取结束
2.4 ETL-Span模型
ETL-Span模型整体结构
1.用BiLSTN对词的嵌入信息进行编码,生成每个token的隐藏层表示。每个token的输入信息是:词嵌入word embedding+ 字符嵌入character embedding +POS词性嵌入 。
2.头实体抽取:任务抽取出句子中的头实体,排除不相关实体 任务的输入是和全局的上下文表示,然后通过一个层次边界标记器抽取头实体。
3.尾实体关系抽取:是为每个提取的头实体 识别 对应的尾实体和关系 任务的输入除了和之外还添加了与头实体相关的语义信息和头尾实体间的距离信息。然后通过一个层次边界标记器抽取尾实体和关系 。
通过这个模型,完成了头尾实体和关系的抽取 。
3 实验
3.1 实验结果
文章在NYT-Single、NYT-Multi、WebNLG三个数据集上进行了实验,并和经典的模型进行了对比,文章提出的模型获得了最好的性能 。
文章提出模型的主要优势:
将联合提取任务分解为了更为简单的两个子任务
头实体抽取:缓解了实体冗余问题,减轻了冗余实体对模型性能的干扰
尾实体和关系抽取任务 添加了头实体相关的语义信息和位置信息,捕获了实体识别和关系抽取之间的隐藏信息。
3.2 消融实验
4 结论
文章提出新方法解决实体关系抽取问题:将任务分解为两个相互关联的子任务 :HE(Head-Entity)提取和TER(Tail-Entity and Relation)提取。
HE任务:提取句子中的头实体,减少冗余实体的干扰;
TER任务:为每个提取的头实体确定相应的尾实体和关系,捕获子任务间的交互信息
提出基于跨度的标记方案
将两个子任务分解为序列标记问题:仅预测开始和结束位置,提升效率
问题解决:提出分层边界标记器(HBT)& 多跨度解码算法
实验:在NYT-Single、NYT-Multi、WebNLG数据集上达到了最新水平
文章链接
Joint Extraction of Entities and Relations Based on a Novel Decomposition Strategy