面向事实检验的语义层次图推理
0. Abstract
事实核查是一项具有挑战性的任务,因为核实声明的真实性需要对多个可检索的证据进行推理。在这项工作中,我们提出了一种适用于推理证据语义层次结构的方法。与大多数以往的工作不同,这些工作通常使用字符串连接或融合孤立证据语句的特征来表示证据语句,我们的方法基于语义角色标注获得的丰富的证据语义结构。我们提出了两种机制来利用证据的结构,同时利用像BERT、GPT或XLNet这样的预先训练好的模型的进步。具体来说,使用XLNet作为主干,我们首先利用图结构来重新定义单词的相对距离,直觉上语义相关的单词应该有短距离。然后,我们采用图卷积网络和图注意力网络来传播和聚集来自图上相邻节点的信息。我们在事实检查的基准数据集FEVER上评估我们的系统,发现丰富的结构信息是有帮助的,并且我们的基于图的机制都提高了准确性。在FEVER分数和准确率达到STOA。
1. Introduction
在本文中,我们研究事实检验,目的是通过寻找文本证据来自动评估文本声明的真实性。
之前这项工作以自然语言推理模型为主因为这项工作需要声明的推理和检索证据句子。通常要么将证据语句连接成单个字符串,要么使用特征融合来聚合孤立证据语句的特征。然而,这两种方法都不能在多个证据中捕获丰富的语义层次结构,这也阻碍了使用更深层次的推理模型进行事实检验。
如图1,给出了一个例子。做出正确的预测需要一个基于理解的推理模型,从证据一来看,Rodney King riots是发生在Los Angeles County的第一个证据,并且证明Los Angeles County是the most populous county in the USA来自第二个证据。因此,挖掘证据的语义结构并利用它来验证声明的真实性是可取的。
在上述考虑下,我们提出了一种基于图的事实检验推理方法。对于给定的主张,我们将检索到的证据语句表示为一个图,然后用图的结构来指导推理过程。具体来说,我们应用语义角色标注(SRL)来解析每个证据句子,并在参数之间建立链接来构建图。在开发推理方法时,我们打算同时利用图中体现的证据的丰富语义结构和在BERT 、GPT和XLNet等预训练模型中学习的强大上下文语义。为了实现这一点,当产生单词的上下文表示时,我们首先基于图结构重新定义单词之间的距离。此外,我们采用图卷积网络和图注意力网络在图结构上传播和聚集信息。这样,推理过程在单词/子单词级和图形级都使用语义表示。
消融研究表明,图形驱动的表征学习机制的集成提高了性能。我们简要总结我们的贡献如下。
-
我们提出了一种基于图的事实检验推理方法。我们的系统应用SRL来构造图,并提出了两种图驱动的表示学习机制。 图推理方式
-
结果表明,两种基于图的机制都提高了准确性,我们的最终系统在发热数据集上实现了最先进的性能。
2 Task Definition and Pipeline
以给定的文本声明作为输入,事实检查的问题是找到支持证据句子来验证声明的真实性。从维基百科抽取证据句, 预测声明是“SUPPORTED”, “REFUTED” 或 “NOT ENOUGH INFO (NEI)”中的一种,两种官方评估指标
在这里,我们概述了我们的FEVER管道,它遵循了大多数以前的研究。我们的管道由三个主要组件组成:文档检索模型、句子级证据选择模型和声明验证模型。(看这几篇文章,老三样)
图2给出了管道的概述。对于给定的声明,文档检索模型从给定的维基百科文档集合中检索最相关的文档。根据检索到的文档,证据选择模型选择前k个相关句子作为证据。最后,声明验证模型接受声明和证据语句,并输出声明的准确性。这项工作的主要贡献是声明验证的基于图的推理方法,这将在第3节中详细解释。我们的文档选择和证据选择策略在第4节中描述。
3 Graph-Based Reasoning Approach
输入:声明和检索的证据句。预测声明的真实性
我们方法的基本思想是利用证据的内在结构来评估声明的真实性。如图1中的示例所示,做出正确的预测需要对证据的语义层次结构以及基于该结构的推理过程有很好的理解。
在本节中,我们首先描述我们的图构建模块(3.1)。然后,我们展示了如何将图结构应用于事实检查,包括基于图的距离计算的上下文表示学习机制(3.2),以及图卷积网络和图注意力网络在图中传播和聚集信息(3.3和3.4)。
3.1 Graph Construction
以证据句子为输入,我们想建立一个图形来揭示这些证据的内在结构。可能有许多不同的方法来构建图,例如开放信息提取(Banko等人,2007)、命名实体识别加关系分类、序列生成(sequenceto-sequence generation),其被训练以产生结构化元组(Goodrich等人,2019)等。
在这项工作中,我们采用了一种基于语义角色标注的实用灵活的方法。具体来说,对于给定的证据句子,我们的图构造按照以下步骤操作。
- 对于每个句子,我们用AllenNLP开发的现成SRL工具包将其解析为元组,这是基于BERT模型的重新实现。
- 对于每个元组,我们将它的具有特定类型的元素视为图的节点。我们试探性地将这些类型设置为动词、自变量、位置和时态,也可以很容易地扩展到包括更多类型。我们为元组中的每两个节点创建边。
- 我们为不同元组之间的节点创建边,以获取多个证据句子之间的结构信息。我们的想法是为字面上彼此相似的节点创建边。假设实体A和实体B来自不同的元组,如果满足以下条件之一,我们将添加一条边:(1) A等于B (2) A包含B (3)A和B之间的重叠单词数大于A和B中最小单词数的一半。
图3显示了激励示例中证据的构建图。为了获得声明的结构信息,我们也使用相同的管道将声明表示为图形。
我们的图构造模块提供了一种对多证据结构建模的方法,这种方法可以在将来进一步发展。
3.2 Contextual Word Representations with Graph Distance
我们描述了使用图形来学习单词的图形增强的上下文表示
们的基本思想是缩短图上两个语义相关的单词之间的距离,这有助于在我们使用基于Transformer(V aswani等人,2017)的预处理模型(如BERT和XLNet)计算上下文单词表示时增强它们的关系
假设我们有五个证据句子 { s 1 , s 2 , . . . s 5 } \{s1,s2,...s5\} {s1,s2,...s5}和 s i s_i si的单词 w 1 i w_{1i} w1i和 s 5 s_5 s5的词 w 5 j w_{5j} w5j在图上是连接的,简单地将证据句子连接成单个字符串不能捕捉它们的语义级结构,并且会给 w 1 i w_{1i} w1i和 w 5 j w_{5j} w5j一个很大的距离, w 1 i w_{1i} w1i和 w 5 j w_{5j} w5j是它们之间跨越其他三个句子(即 s 2 s_2 s2、 s 3 s_3 s3和 s 4 s_4 s4)的单词数。实现我们目标的一个直观方法是定义一个沿着图的单词距离的 N × N N × N N×N矩阵,其中 N N N是证据中的单词总数。然而,这在实践中是不可接受的,因为表征学习过程将占用巨大的存储空间。
预训练的模型捕获了丰富的单词上下文表示,这有助于我们需要句子级推理的任务。考虑到上述问题,我们实现了一个近似的解决方案,在实现效率和图的信息量之间进行权衡。具体来说,我们使用拓扑排序算法对证据句子进行重新排序,直觉上相邻句子中应该存在紧密链接的节点。(方法)。这将更倾向于相邻句子包含父节点或兄弟节点,以便更好地捕捉不同证据句子之间的语义相关性。我们在附录A中给出了我们的实现。该算法从没有事件关系的节点开始。对于没有事件关系的每个节点,我们以深度优先搜索的方式递归访问其子节点。
在获得基于图的单词相对位置后,我们将排序后的序列输入XLNet以获得上下文表示。同时,获得表示特殊字符 [ C L S ] [CLS] [CLS]的 h ( [ C L S ] ) h([CLS]) h([CLS]).它代表Transformer-based的体系结构中声明和证据的联合表示。
3.3 Graph Convolutional Network
我们已经在Transformer中注入了图形信息,并获得了h([CLS]),它在单词级别捕获了声明和证据之间的语义交互,如图1中的示例和图3中的构建图所示,推理过程需要在跨度/参数级别上运行,其中基本计算单元通常由多个单词组成,如“Rodney King riots”和“the most popular county in the USA”。
为了进一步利用单词级别以外的图形信息,我们
- 通过平均节点中包含的单词的上下文表示来计算节点的表示,节点是图形中的单词跨度。
- 我们使用多层图卷积网络(GCNs)通过聚集图中邻居的表示来更新节点表示。
- 形式上,我们将
G
G
G表示为由前面的图构造方法构造的图,并使
H
∈
R
N
v
×
d
H ∈ R_{Nv×d}
H∈RNv×d表示包含所有节点的表示的矩阵,其中
N
v
Nv
Nv和
d
d
d分别表示节点数和节点表示的维数。 每一行
H
i
∈
R
d
H_i \in R_d
Hi∈Rd表示节点
i
i
i。我们引入了图
G
G
G的邻接矩阵
A
A
A和它的度矩阵
D
D
D,在这里我们给矩阵
A
A
A加上自环,
D
i
i
=
∑
j
A
i
j
D_{ii}=\sum_j A_{ij}
Dii=∑jAij。
单层GCN将通过单跳边缘聚合信息,计算如下:
H i ( 1 ) = ρ ( A ˉ H i W 0 ) (1) H_i^{(1)}= \rho(\bar{A}H_iW_0) \tag{1} Hi(1)=ρ(AˉHiW0)(1)
这里 H i ( 1 ) ∈ R d H_i^{(1)} \in R^d Hi(1)∈Rd是节点i的更新表示, A ˉ = D − 1 2 A D 1 2 \bar{A}=D^{-\frac{1}{2}}AD^{\frac{1}{2}} Aˉ=D−21AD21是归一化对称邻接矩阵, W 0 W_0 W0是权重矩阵, ρ \rho ρ是激活函数,为了利用来自多跳相邻节点的信息,我们堆叠了多个GCN层:
H i ( j + 1 ) = ρ ( A ˉ H j W j ) (2) H_i^{(j+1)}=\rho(\bar{A}H_jW_j) \tag{2} Hi(j+1)=ρ(AˉHjWj)(2)
j j j表示层号, H 0 H_0 H0是根据上下文表示初始化的节点 i i i的初始表示。以后用 H k H^k Hk表示向量。
对于基于声明和基于证据的图,将分别执行图表学习机制。因此,我们将 H c H_c Hc和 H e H_e He分别表示为基于声明的图和基于证据的图中所有节点的表示。然后,在做出最终预测之前,我们利用图注意力网络来对齐为两个图学习的图级节点表示。
3.4 Graph Attention Network
我们探索两个图之间的相关信息,并为最终预测进行语义对齐。设 H c ∈ R N e v × d H_c \in R^{Nev \times d} Hc∈RNev×d 且 H c ∈ H N c v × d H_c \in H^{Ncv \times d} Hc∈HNcv×d分别表示包含基于证据和基于声明的图中所有节点表示的矩阵,其中 N c v N_c^v Ncv和 N c v N_c^v Ncv表示对应图中的节点数。
我们首先使用一个图注意力机制来对声明图中的每个节点生成一个声明特定的证据表示。具体来说, 我们首先获取每个
h
i
c
∈
H
c
h_i^c \in H_c
hic∈Hc作为查询,并获取所有节点表示
h
j
e
∈
∈
H
e
h_j^e∈ \in H_e
hje∈∈He作为关键字。然后,我们在节点上执行图形注意力机制,这是一种注意力机制:KaTeX parse error: Undefined control sequence: \time at position 5: R^d \̲t̲i̲m̲e̲ ̲R^d \to R计算注意力系数:
e
i
j
=
a
(
W
c
h
c
i
,
W
e
h
e
j
)
(3)
e_{ij} = a(W_ch_c^i,W_eh_e^j) \tag{3}
eij=a(Wchci,Wehej)(3)
这意味着证据节点
j
j
j对于声明节点
i
i
i的重要性,
W
c
∈
R
F
×
d
W_c \in R^{F \times d}
Wc∈RF×d和
W
e
∈
R
F
×
d
W_e \in R^{F \times d}
We∈RF×d是权重矩阵,
F
F
F是注意力特征的维度。我们用点积函数作为
a
a
a。
然后,我们使用softmax函数对
e
i
j
e_{ij}
eij进行规范化
α
i
j
=
s
o
f
t
m
a
x
j
(
e
i
j
)
=
e
x
p
(
e
i
j
)
∑
k
∈
N
e
v
e
x
p
(
e
i
k
)
(4)
\alpha_{ij} = softmax_j(e_{ij}) = \frac{exp(e_{ij})}{\sum_{k \in Nev}exp(e_{ik})} \tag{4}
αij=softmaxj(eij)=∑k∈Nevexp(eik)exp(eij)(4)
之后,我们计算一个以声明为中心的证据表示
X
=
x
1
,
.
.
.
,
x
N
E
V
X={x_1,...,x_{NEV}}
X=x1,...,xNEV,使用
H
e
H_e
He的加权和:
x
i
=
∑
j
∈
N
e
v
α
i
j
h
e
j
(5)
x_i = \sum_{j \in N_e^v} \alpha_{ij}h_e^j \tag{5}
xi=j∈Nev∑αijhej(5)
然后,我们执行节点到节点对齐,并计算对齐的向量
A
=
[
a
1
,
.
.
.
,
a
N
c
v
]
由
声
明
节
点
表
示
A =[a_1,...,a_{Ncv}]由声明节点表示
A=[a1,...,aNcv]由声明节点表示H^c
和
以
声
明
为
中
心
的
证
据
表
示
和以声明为中心的证据表示
和以声明为中心的证据表示X$
a
i
=
f
a
l
i
g
n
(
h
c
i
,
x
i
)
(6)
a_i = f_{align}(h_c^i, x^i) \tag{6}
ai=falign(hci,xi)(6)
其中,
f
a
l
i
g
n
(
)
f_{align}()
falign()表示对齐功能。受沈等(2018)的启发,我们将校准函数设计为:
f
a
l
i
g
n
(
x
,
y
)
=
W
α
[
x
,
y
,
x
−
y
,
x
⨀
y
]
,
(7)
f_{align}(x, y) = W_{\alpha}[x, y, x − y, x \bigodot y], \tag{7}
falign(x,y)=Wα[x,y,x−y,x⨀y],(7)
这里KaTeX parse error: Undefined control sequence: \* at position 29: …n R^{d \times 4\̲*̲d}是权重矩阵,
⨀
\bigodot
⨀逐元素 Hadamard 积。
最终输出
g
g
g通过
A
A
A上的平均池化获得。然后,我们通过一个MLP层从XLNet反馈
g
g
g的连接向量和最终的隐藏向量h([CLS])
,用于最终的预测。
4 Document Retrieval and Evidence Selection
在本节中,我们简要描述了我们的文档检索和证据选择组件,以使论文自成一体。
4.1 Document Retrieval
用NSMN模型方法选出10篇
4.2 Sentence-Level Evidence Selection
证据选择模型以一个主张和检索到的文档中的所有句子作为输入,返回前k个最相关的句子。
我们将证据选择视为一个语义匹配问题,并利用XLNet (Y ang等人,2019)和RoBERTa(刘等人,2019a)等预训练模型中包含的丰富上下文表示来衡量声明与每个候选证据的相关性。我们以XLNet为例。句子选择器的输入是:
c
e
i
=
[
C
l
a
i
m
,
S
E
P
,
E
v
i
d
e
n
c
e
i
,
S
E
P
,
C
L
S
]
ce_i = [Claim, SEP, Evidence_i, SEP, CLS]
cei=[Claim,SEP,Evidencei,SEP,CLS]
其中,
C
l
a
i
m
Claim
Claim和
E
v
i
d
e
n
c
e
i
Evidence_i
Evidencei表示原始声明和第
i
i
i个候选证据的标记化词块,
d
d
d表示隐藏向量的维数,
S
E
P
SEP
SEP和
C
L
S
CLS
CLS分别是表示句子结束和整个输入结束的符号。通过提取[CLS]字符的隐藏向量获得最终表示
h
c
e
i
∈
R
d
h_{cei} \in R^d
hcei∈Rd
之后,我们使用MLP层和软最大值层来计算每个候选证据的得分
S
c
e
+
S_{ce}^+
Sce+。然后,我们用分数
S
c
e
+
S_{ce}^+
Sce+对所有证据句进行排序。该模型是在具有标准交叉熵损失的训练数据上训练的。
根据数据集设置,选择前五个证据句。
5 Experiments
5.1 Baselines
对比了
- 聂等人(2019)采用语义匹配神经网络进行证据选择和声明验证
- Yoneda等人(2018)推断每个声明证据对的准确性,并通过聚合多个预测标签进行最终预测。
- Hanselowski等人(2018)分别对每个证据对进行编码,并使用一个池化函数来聚合预测特征
- GEAR(周等,2019)使用BERT来获得每个证据句子的特定于声明的表示,并通过将每个证据句子视为图中的节点来应用图网络。
- (刘等,2019b)与我们的工作是并行的,它把句子看作一个图的节点,用核图注意网络来聚合信息。
5.2 Model Comparison
表1对比
最优。值得注意的是,我们的方法利用了SRL获得的证据的显式图级语义结构,其性能优于GEAR和KGAT,它们都将句子视为节点,并使用模型来学习证据的隐式结构。
5.3 Ablation Study
表2显示了在我们的模型中分别消除不同组件(包括基于图的相对距离(3.2)和图卷积网络和图注意力网络(3.3和3.4))后,开发集上的标签准确性。
如表2所示,与XLNet基线相比,合并两个基于图形的模块使标签准确性提高了3.76%
移除基于图形的距离会使标签准确度下降0.81%。基于图的距离机制可以缩短两个紧密链接的节点之间的距离,并帮助模型学习它们的依赖性。
删除基于图的推理模块下降了2.04%,因为图推理模块捕获了结构信息并对此进行了深入的推理。
图5给出了我们方法的一个案例研究。
5.4 Error Analysis
我们随机选择了200个错误预测的实例,并总结了主要的错误类型。第一种错误是由于描述同一事件的短语之间的语义不匹配造成的。例如,该声明指出Winter’s Tale is a book
,虽然证据表明Winter ’s Tale is a 1983 novel by Mark Helprin
。该模型未能意识到“小说”属于“书”,并声称该主张被驳回。解决这种类型的错误需要涉及能够指示不同事件之间逻辑关系的外部知识.
检索到的证据中的误导性信息会导致第二类错误。例如,该声明指出The Gifted is a movie
。事实证据表明The Gifted is an upcoming American television series
。然而,检索到的证据还包含“The Gifted is a 2014 Filipino dark comedy-drama movie”
。这误导模型做出错误的判断。
6 Related Work
略
我们的工作与周等人(2019)的不同之处在于:(1)我们的图的构建需要理解每个句子的语法,这可以被视为更细粒度的图;(2)上下文表示学习模块和推理模块都具有考虑图信息的模型创新。
7 Conclusion
在这项工作中,我们提出了一种基于图的事实检查方法。当评估给出多个证据句子的声明的准确性时,我们的方法建立在基于语义角色标注的自动构建的图之上。为了更好地利用图形信息,我们提出了两个基于图形的模块,一个用于在XLNet中使用基于图形的距离计算上下文单词嵌入,另一个用于学习图形组件的表示和在图形上的推理。实验表明,这两个基于图形的模块带来了改进,我们的最终系统在提交论文时是排行榜上最先进的。