论文总结 | Dialogue-Based Relation Extraction

原文链接:https://www.aclweb.org/anthology/2020.acl-main.444.pdf

摘要

  • 提出了人工标注的基于关系抽取(RE)数据集对话框,旨在支持对出现在对话中的两个参数之间关系的预测。
  • 通过对语料库和传统任务的异同分析,认为说话人相关信息(speaker-relatted information)在任务中起着至关重要的作用。
  • 考虑到会话中交流的及时性,我们设计了一种新的度量方法来评估会话环境下RE方法的性能。并研究了几种具有代表性的RE方法的性能。
  • 实验结果演示,在性能最好的模型上进行speaker-aware扩展,在标准环境和绘画环境下性能均提升。

1.介绍

主要工作

(1)提出了人工标注的基于关系抽取数据集DialogRE
(2)比较基于对话的关系抽取任务和传统关系抽取任务的异同。
(3)设计新的度量方法评估交互会话的时效性
(4)在数据集DialogRE上,使用标准的基于学习的关系抽取技术建立baseline
(5)证实明确对话者在基于对话的关系抽取任务中的重要性。

2.数据集

数据集源于《Friends》中1788段对话,36种关系类型,10168个关系二元组(subject,relation type,object)。同时,标注了最小文本最小跨度。表1是一段对话的示例。
论文总结 | Dialogue-Based Relation Extraction_第1张图片

2.1 关系模式

  • 主要关注PER和ORG;
  • 由于数据集内容限制,删除SF任务定义的一些关系类型,同时增加一些关系类型,共36种,如表2.
  • 论文总结 | Dialogue-Based Relation Extraction_第2张图片

2.2标注

定义

  • turn:regard an uninterrupted stream of speech from one speaker and the name of this speaker as a turn.
  • dialogue:the shortest snippet of contiguous turns that covers all annotated relational trips and sufficient supportive contests in this scene.

处理

  • 如果说话者的全名或者其他名字出现在同一个对话中,我们将对话者作为一个关系元组的参数。如表1中关系R3
  • 若一对参数有多种关系,每一个都标注。
  • 如果有则标注一个触发词。如R1的触发词为brother,R3无触发词
  • 标注反向的关系元组。如表1中R1和R2

2.3 负例生成,数据划分,匿名对话者

  • 负例生成??
  • 训练集:验证集:测试集合=6:2:2
  • 匿名对话者如表1中S1,S2

3.数据比较与讨论

3.1DialogRE vs SF

3.2DialogRE vs 现存关系元组

3.3触发词

4.模型和方法

4.1基于对话的关系抽取

对话D中,共有m条语句(turn),表示为:D=s1:t1,s2:t2,…,sm:tm.有参数对(a1,a2).
标准模式
把对话D看作文本d
输入:a1,a2,d
输出:a1,a2 之间的关系
评价标准:F1
会话模式
把前 i 条语句看作 d
L基于整段对话(D)标注的关系集;R表示36种关系集。
定义辅助函数:

j ( x ) = { m , x 未 在 D 中 出 现 i , x 在 第 i 条 对 话 中 首 次 出 现 j(x)=\begin{cases} m,& x未在D中出现 \\ i,& x在第i条对话中首次出现 \\ \end{cases} j(x)={ m,i,xDxi
i ( r ) = { j ( λ r ) , r ∈ L , λ r 为 关 系 r 所 标 注 的 触 发 , 即 关 系 r 的 触 发 词 λ r 首 次 出 现 的 位 置 。 m , r ∈ L 的 其 他 情 况 1 , r ∈ R − L i(r)=\begin{cases} j(\lambda_r), & r\in L,\lambda _r为关系r所标注的触发,\\ &即关系r的触发词\lambda _r首次出现的位置。 \\ m, & r\in L的其他情况 \\ 1, & r\in R-L \end{cases} i(r)=j(λr),m,1,rL,λrrrλrrLrRL
定义一组关系类型,这些关系类型是基于Ei评估的:
E i = { r ∣ i ≥ m a x { j ( a 1 ) , j ( a 2 ) , i ( r ) } } E_i=\{r|i\geq max\{j(a_1),j(a_2),i(r)\}\} Ei={ rimax{ j(a1),j(a2),i(r)}}

(即,给定前 i 条语句组成的d,如果a1,a2,以及 λ r \lambda _r λrd 中出现过,那么,基于a1,a2的关系类型 r 是可评估的,)

此定义基于假设:我们可以根据,能够清楚地表达关系的参数和触发器的位置,粗略估计我们需要多少条语句才能预测两个论点之间的关系。

输入:a1,a2,d(前 i 条语句,)
输出:Oi(a1,a2 之间的关系)
评价标准:Fc

对于单个输入,有Pc,Rc定义如下:

取所有实例的均值作为最终的准确率和召回率。
论文总结 | Dialogue-Based Relation Extraction_第3张图片

4.2Baseline

Majority:
若未在训练集中出现,则输出训练集中频数最大的关系类型;
否则,输出训练集中关于此两个参数频数最大的关系类型。

CNN/LSTM/BiLSTM:
遵循Yao 的工作。https://www.aclweb.org/anthology/P19-1074/

BERT:
使用Radfordhttps://s3-us-west-2.amazonaws.com/openai-assets/research-covers/language-unsupervised/language_understanding_paper.pdf
的预训练语言模型和BERT。
输入串:[CLS] d [SEP] a1 [SEP] a2 [SEP]
[CLS]的隐藏向量C ∈ R H \in R^H RH,关系类型 W i ∈ R H W_i \in R^H WiRH
基于 d 的关于实例 i 的a1,a2之间的关系的概率 P i = s i g m o i d ( C W i t ) P_i=sigmoid(CW_i^t) Pi=sigmoid(CWit)
使用交叉熵损失函数。

BERTs:
为了(1)帮助模型根据说话人姓名定位相关语句的起始位置;(2)避过拟合
输入串:[CLS] d ^ \hat{d} d^ [SEP] a 1 ^ \hat{a_1} a1^ [SEP] a 2 ^ \hat{a_2} a2^[SEP]
d ^ = s 1 ^ : t 1 , s 2 ^ : t 2 , . . . , s n ^ : t n \hat{d}=\hat{s_1}:t_1,\hat{s_2}:t_2,...,\hat{s_n}:t_n d^=s1^:t1,s2^:t2,...,sn^:tn
[S1],[S1]是两个新引入的特殊短语
s n ^ = { [ S 1 ] , s i = a 1 [ S 2 ] , s i = a 2 s i , 其 他 \hat{s_n}=\begin{cases} [S_1], &s_i=a_1 \\ [S_2],& s_i=a_2\\ s_i,& 其他 \end{cases} sn^=[S1],[S2],si,si=a1si=a2
a k ^ ( k ∈ { 1 , 2 } ) = { [ S k ] , 如 果 存 在 i 使 s i = a k a k , 其 他 \hat{a_k}(k \in \{1,2\})=\begin{cases} [S_k],& 如果存在i使s_i=a_k\\ a_k,&其他 \end{cases} ak^(k{ 1,2})={ [Sk],ak,i使si=ak

将BERT中的输入串做如下修改:(实现speaker-aware)
·对话者si处:如果对话者恰是所考察的两个论元之一,替换成新引入的短语[S1]/[S2];
·对话内容不变;
·论元a1/a2:如果所考察的论元是对话者,那么将a1/a2替换成新引入的短语[S1]/[S2]

论文还做了其他3种输入串的尝试,效果没有上述好。

5.实验

你可能感兴趣的:(论文总结 | Dialogue-Based Relation Extraction)