《面向对话的融入交互信息的实体关系抽取》--中文信息学报

实体关系抽取旨在从文本中抽取出实体之间的语义关系,是自然语言处理的一项基本任务。在新闻报道,维基百科等规范文本上,该任务的研究相对丰富且已取得了一定的效果,但面对对话文本的相关研究的还处于起始阶段。相较于规范文本,对话是一个交互的过程,大量信息隐藏在交互中,这使得面向对话文本的实体关系抽取更具挑战性。依据对话的特点,该文提出了融入对话交互信息的实体关系抽取方法,通过交叉注意力机制获取对话交互信息,提升性能,并结合多任务学习来解决语料库数据分布不均衡的问题。

0 引言

实体关系抽取旨在从非结构化文本中获取实体间所具有的语义关系,抽取出来的信息以三元组<X,R,Y>的形式存储,其中,X和Y表示实体,R表示实体间的语义关系。作为信息抽取的核心技术之一,实体关系抽取不仅是自动构建知识库的核心部件之一,还在自动问答、聊天机器人等下游任务中发挥着关键作用。

目前,受限于语料资源,实体关系抽取相关研究多集中于新闻报道、维基百科等规范文本,而这类文本通常由专业人士编辑,行文规范,文本内容的信息密度大,随着DialogRE数据集的发布,针对对话文本的实体关系抽取研究得以展开。相较于规范文本,对话文本的特点明显,主要体现在:1.对话中存在大量指代和省略现象,特别是人称代词出现频率较高。2.相比规范文本,对话文本中信息密度较低,存在关系的实体对通常出现在不同对话语句中;3.对话内容通常围绕某些特定主题在交互过程中向前推进,因此对话的交互过程蕴含了大量重要信息。因此,在规模有限的对话文本中如何尽可能多地提取有效特征,特别是隐藏在交互过程中的信息,构建面向对面对话文本的实体关系抽取模型则更具挑战性。

本文采用轻量级的Star-Transformer模型作为主模型,基于这一模型进行了两个核心工作:1.关注对话交互信息:目前已有的研究在处理对话语料时大多选择直接将对话拼接成一段长文,这样做的后果是模型难以获取到对话交互过程的信息。本文以对话者的一问一答作为一轮对话,依次选出两轮对话,使用交叉注意力机制挖掘它们之间的关联信息,最后整合所有的关联信息来表征整个对话对应的交互信息。2.降低数据不均衡的影响:通过分析语料我们发现,语料中共包含37种关系,其中,无明确(unanswerable)关系的数据占到了样本总数的21.5%,远大于其他类型的关系。同时语料中37.6%的样本中包含触发词(trigger),即实体关系是通过某个具体的触发词来传递的。

为了解决语料中关系分布均衡的问题,我们在主模型之上加入了多任务层,通过增加两个辅助任务来辅助主任务的完成。实验结果表明,本文提出的Star-Transformer+交互信息+Multi-task模型在DialogRE公开数据集上的F_{1}值为54.1%,F_{1c}值为50.7%,证明了本文方法的有效性。后续章节中统一使用STCM代表本文所提出的方法。

1.相关研究

近年来深度学习逐渐崛起,学者们将深度学习应用到实体关系抽取任务中,Zeng等人在2014年首次使用CNN进行关系抽取,Katiyar等人在2017年首次将注意力机制Attention与递归神经网络Bi-LSTM结合使用来提取实体和分类关系,Wang等人提出的CNN架构使用了一种新颖的多层次注意力机制提取指定实体的注意力和指定关系的池化注意力。Zhang等人在2018年将一种新的修剪策略和定制的图卷积网络相结合。Guo等人在2019年提出了注意引导图卷积网络,直接以全依赖作为输入,该模型可以更好地利用全依赖树的结构信息。李青青等人在2019年提出了一种基于Attention机制的主辅多任务模型,通过多个关联任务共享信息提升性能。刘苏文等人在2020年提出了一种二元关系抽取和一元功能识别共同决策的联合学习模式,能够融合各个子任务的信息。更多改进的深度学习模型在实体关系抽取任务取得了巨大的进步,学者们不再满足于句子级的实体关系抽取,难度更大的篇章级实体关系抽取任务逐渐成为研究重点。Quirk等人于2017年借助远程监督生成了生物领域的跨句子实体关系抽取数据集。Yao等人在2019年发布了DocRED数据集,该数据集覆盖丰富的领域,并且提供了人工标注和远程监督两个版本。

然后目前主流的用于实体关系抽取的数据都是针对新闻报道和维基百科这类规范文本的,DialogRE数据集的出现将学者们的目前吸引到针对人类对话的实体关系抽取。Yu等人在发布数据集的同时将一些主流的神经网络模型如CNN、LSTM、Bi-LSTM和BERT等应用到了该任务上,没有针对对话文本的特点进行处理,同时也没有针对数据分布不均衡的问题进行模型的改进。

本文给出了一个机遇Star-Transformer的实体关系抽取框架,并针对对话文本的特性进行了交互信息的融入,同时结合多任务学习策略来提高模型在对话文本上实体关系抽取的性能。

2.任务定义和评价方法

本节介绍对话文本中实体关系抽取任务的定义以及针对该任务提出的评价方法。

2.1 对话文本中的实体关系抽取 

给定一段对话D=s_{1}:t_{1},s_{2}:t_{2},\cdots,s_{m}:t_{m}和一个实体对(a_{1},a_{2}),其中s_{i}t_{i}分别代表第i轮对话的对话者和他说的话,m代表总的对话轮数。模型需要提取出现在D中的a_{1}a_{2}之间的关系,图1给出了一个具体的例子,在给定的对话文本中,根据下划线部分可以判断出“Speaker 2”和“Frank”之间的关系是“per:siblings”,而触发词就是“brother”。

 2.2 标准评价方法

在标准评价方法中,将对话D视为文档d,模型的输入是对话全文d,模型的输入是对话全文d和实体对(a_{1},a_{2}),输出是基于da_{1}a_{2}之间的关系。实验采用准确率P、召回率RF_{1}值对识别结果进行评价。

2.3 对话评价方法

在对话评价标准中,将第i(i\leqslant m)轮对话视为d,采用一种新的衡量标准:对话准确率(P_{c})和对话召回率(R_{c})的调和平均值F_{1c},作为F_{1}的补充。下面介绍如何定义F_{1c}:

当输入为a_{1}a_{2}和第i轮对话时,O_{i}表示输出的预测关系集合。

对于实体对(a_{1},a_{2})L表示它对应的人工标注的关系类型集合

R表示37种关系类型的集合,且O_{i},L\subseteq R

定义一个辅助函数f(x),若x没有出现在对话D中返回m,否则返回x第一次出现时的对话轮次。

定义辅助函数\Phi (r)

(1) 对于每个关系类型r\in L,如果存在一个r的人工标注的触发词,则\Phi (r)=f(\lambda _{r})\lambda _{r}表示触发词,否则\Phi (r)=m

(2) 对于每个r\in R\setminus L\Phi (r)=1

i轮对话的关系类型集合可以用E_{i}来评价,E_{i}的定义如式(1)所示:

E_{i}=\left \{ r| i\geqslant max\left \{ f(a_{1}),f(a_{2}),\Phi (r) \right \} \right \}

式(1)表明,给出第i轮对话中包含的d,如果a_{1}a_{2}和r的触发词都在d中,那么 a_{1}a_{2}之间的关系r是可评估,

该定义是基于以下假设:根据实体对和触发词的位置,可以大致估计需要多少轮对话来预测两个参数之间的关系。

对话准确率的定义如式(2)所示,对话召回率的定义如式(3)所示:

P_{c}\left(D, a_{1}, a_{2}\right)=\frac{\sum_{i=1}^{m}\left|O_{i} \cap L \cap E_{i}\right|}{\sum_{i=1}^{m}\left|O_{i} \cap E_{i}\right|}

R_{c}\left(D, a_{1}, a_{2}\right)=\frac{\sum_{i=1}^{m}\left|O_{i} \cap L \cap E_{i}\right|}{\sum_{i=1}^{m}\left|L \cap E_{i}\right|}

对所有实例的对话准确率和对话召回率进行平均,以获得最终的值。计算过程如式(4)~(6)所示:

P_{c}=\frac{\sum_{D^{\prime} ,a_{1}^{\prime} , a_{2}^{\prime}} P_{c}\left(D^{\prime}, a_{1}^{\prime}, a_{2}^{\prime}\right)}{\sum_{1^{\prime} , a_{1}^{\prime} , a_{2}^{\prime} } 1}

R_{c}=\frac{\sum_{D^{\prime} , a_{1}^{\prime} , a_{2}^{\prime}} R_{c}\left(D^{\prime}, a_{1}^{\prime}, a_{2}^{\prime}\right)}{\sum_{D^{\prime} , a_{1}^{\prime} , a_{2}^{\prime} } 1}

F_{1 c}=\frac{2 \cdot P_{c} \cdot R_{c}}{P_{c}+R_{c}}

在标准评价方法中,模型的输入可以利用整个对话全文,而在对话评价方法中,模型的输入只可以利用根据上述方法得到部分对话。通俗来讲,F_{1c}值就是来评价模型在尽可能少的对话轮数中快速识别出实体间关系的性能。

3.融入交互信息的实体关系抽取模型

3.1 STCM模型

与大多数实体关系识别方法一样,本文也将对话抽取任务转化为一个分类任务

在把对话D和实体对  a_{1}a_{2} 拼接成一段长文的基础上,拼接上通过交叉注意力机制获取到的交互信息作为模型的输入。

图2给出了STCM模型的结构,该模型主要包含三个部分:1.获取对话交互信息层。2.基于Star-Transformer的序列编码层。3.多任务学习层。

 3.2 获取对话交互信息层

本文将对话者的一问一答看作一轮对话u,每个训练样本中平均包含7.5轮对话,依次从中提取出两轮对话来模拟交互过程,使用交叉注意力机制来捕获这两轮对话的关联信息,最后把所有得到的关联信息进行整合得到我们需要的交互信息C。具体过程如图3所示。

 

其具体计算工程如式(7)、(8)所示

u_{i+1}^{c}=\text { CrossAttention }\left(u_{i}, u_{i+1}\right)

C=\operatorname{mean}\left(\left[u_{1}^{c} ; u_{2}^{c} ; \cdots ; u_{L-1}^{c}\right]\right)

其中,\left[u_{1}^{c} ; u_{2}^{c} ; \cdots ; u_{L-1}^{c}\right]表示将所有向量在0维上进行堆叠,L表示总的对话轮数。

交叉注意力机制的工作原理如图4所示:

 注意力权重的计算如式(9)所示:

e_{j k}=\left(u_{i j}\right)^{\mathrm{T}} u_{(i+1) k}

其中,e_{j k}指的是对话u_{i}中第j个字符与对话u_{(i+1)}中第k个字符的注意力权重。使用软对齐获取两轮对话之间的局部相关性,对话u_{(i+1)}中的第k个字符与对话 u_{i}中相关的语义部分标记为向量{u}_{(i+1), k}^{c},其具体计算过程如式(10)(11)所示:

3.3 基于Star-Transformer的编码层

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值