NumNet

NumNet模型将数值推理集成到机器阅读理解中,通过建立异构图并利用图神经网络进行推理。它能处理数值比较和条件问题,尤其在处理涉及排序和计算的任务时表现出色。实验在DROP数据集上进行,验证了模型的有效性。

在这里插入图片描述

       NumNet: Machine Reading Comprehension with Numerical Reasoning
       https://arxiv.org/abs/1910.06701
       https://github.com/ranqiu92/NumNet

1.Motivation

将数值推理集成到机器阅读理解模型中。两个关键因素:

  1. 数值比较:问题的答案可以通过在文档中进行数值比较,如排序和比较,直接获得。例如,在表1中,对于第一个问题,如果MRC系统知道“49 > 47 > 36 > 31 > 22”的事实,它可以很容易地提取出第二长的场地目标是47码。
    在这里插入图片描述
  2. 数值条件:问题的答案不能通过文献中简单的数值比较直接得到,往往需要数值比较才能理解文本。例如,对于表1中的第二个问题,MRC系统需要知道哪个年龄组占人口的7%以上才能计算组数。

2 Methodology

2.1 Framework

在这里插入图片描述NumNet模型的概述如上图所示。分为编码模块、推理模块和预测模块。

Encoding Module

使用QANet的编码组件将问题和段落编码到向量空间表示中。形式上,问题Q和短文P首先编码为:
在这里插入图片描述
然后 passage-aware 的问题表示和question-aware的文章表示被计算为:
在这里插入图片描述
其中QANet-Emb-Enc()和QANet-Att()分别表示QANet的“stacked embedding encoder layer”和“context-query attention layer”。前者由卷积层、self-attention层和前馈层组成。后者是一个passage-question 的关注层。

Reasoning Module

首先建立一个异构图:GGG =(VVV;EEE),其节点 (VVV)对应于passage和question中的数字,边(EEE)用于编码数字之间的数值关系。然后基于图神经网络进行推理:

在这里插入图片描述

其中WMW^MWM是一个共享权重矩阵,UUU是对应于数字的节点的表示,QANet-Mod-Enc( ·)是QANet中定义的“模型编码器层”,类似于QANet-Emb-Enc(), Reasoning(·) 的定义将在第3.3节中给出。
最后,由于UUU只包含数字的表示,为了解决包含非数字单词的跨度式答案,将UUUMPM^PMP连接起来,产生的数字感知的段落表示M0M_0M0。形式上:
在这里插入图片描述
[;]表示矩阵连接,IIIiii)返回索引。

Prediction Module

遵循NAQANet,将答案分为四种类型,并使用唯一的输出层来计算每种类型的条件答案概率PPPrrr(answer|type):

  1. Passage span:答案是passage的跨度,答案概率被定义为开始和结束位置概率的乘积
  2. Question span:答案是question的跨度,答案概率也定义为开始位置和结束位置概率的乘积。
  3. Count:答案是通过计数得到的,被当作十个数(0-9)以上的多类分类问题处理,覆盖了DROP数据集中的大部分Count类型答案。
  4. Arithmetic expression:答案是一个算术表达式的结果。表达式分三步获得:(1)从passage中提取所有数字;(2)为每个数字指定一个符号(加号、减号或0);(3)对有符号的数字求和。

同时,还使用额外的输出层来预测每种答案类型的概率PPPrrr(type)。在训练时,最终答案概率定义为所有可行答案类型上的联合概率,即
在这里插入图片描述
这里,不需要答案类型注释,概率PPPrrr(type)由模型学习。在测试时,模型首先贪婪地选择最可能的答案类型,然后据此预测最佳答案。

2.2 Numerically-aware Graph Construction

将question和passage中的所有数字都视为图中的节点,以便进行推理,对应于出现在question和passage中的数字的一组节点分别表示为VQV^QVQVPV^PVP。将所有节点表示为VVV = VQV^QVQVPV^PVP,数字对应于一个节点vvvVVV表示为nnn(vvv)。
在这项工作中考虑了两组边:

  1. 更大关系边(E→E^→E):对于两个节点viv_ivivjv_jvjVVV,如果nnn(viv_ivi) > nnn(vjv_jvj),则从vvvi_ii指向vjv_jvj的有向边eeei_iij_jj→^→= (viv_ivivjv_jvj)将被添加到图中,这在图1中用实线箭头表示。
  2. 更小或等于关系边(E←E^←E):对于两个节点viv_ivivjv_jvjVVV,如果nnn(viv_ivi) ≤ nnn(vjv_jvj),则有向边(eeei_iij_jj←^←= (vjv_jvjviv_ivi)将被添加到图中,这在图1中用虚线箭头表示。

2.3 Numerical Reasoning

当构建图GGG =(VVV;EEE)时,利用NumGNN来执行推理,这对应于等式(7)中的Reasoning(·) 函数。推理过程如下:

Initialization

对于每个节点vvvP^PPi_iiVPV^PVP,其表示被初始化为MPM^PMP的对应列向量。形式上,初始表示为

vvvP^PPi_ii= MPM^PMP[IpI^pIp(vvvP^PPi_ii)]

其中IpI^pIp(vvvP^PPi_ii)表示对应于vvvP^PPi_ii的词索引。
类似地,节点vvvQ^QQi_iiVQV^QVQ的初始表示被设置为MQM^QMQ的对应列向量。最后将所有初始节点表示表示为v0v^0v0 = { vvvP^PPi_ii }∪{vvvQ^QQi_ii }。

One-step Reasoning

给定图GGG和节点表示vvv,使用GNN分三步进行推理:
(1) Node Relatedness Measure:
由于通常只有少数数字与回答问题相关,因此为每个节点计算一个权重,以便在推理中忽略不相关的数字。在形式上,节点viv_ivi的权重计算如下
在这里插入图片描述
其中WvW_vWv是权重矩阵,bvb_vbv是偏置。
(2) Message Propagation:
由于数字在推理中的作用不仅由它自己决定,而且与上下文有关,因此将massage从每个节点传播到它的邻居,以帮助执行推理。由于question和passage中的数字可能在推理中扮演不同的角色,并且应该区分对应于不同数字关系的边,所以我们在消息传播中使用特定关系的转换矩阵。在形式上,定义以下传播函数来计算节点的前向传递更新:
在这里插入图片描述
其中vvv’^’i_ii−^-是节点viv_ivi的消息表示,rrrj_jji_ii是分配给边eeej_jji_ii的关系,WWWr^rrj^jji^ii是关系特定的变换矩阵,NiN_iNi= {jjj|(vjv_jvjviv_ivi) ∈ EEE}是节点viv_ivi 的邻居。对于每条边,rrrj_jji_ii由以下两个属性决定:

  1. 数值关系:>或者≤
  2. 节点type:边的两个节点对应于两个数,即:(1)都来自question(qqq−-qqq);(2)两者均来自passage(ppp−-ppp);(3)分别来自question和passage(qqq−-ppp);(4)分别来自passage和question(ppp−-qqq)。即:
    在这里插入图片描述

(3) Node Representation Update:
由于上一步得到的消息表示只包含来自邻居的信息,需要与节点表示融合,与节点本身携带的信息相结合,执行如下:
在这里插入图片描述

最后,表示整个一步推理过程作为单一功能:
在这里插入图片描述

Multi-step Reasoning

通过单步推理,只能推断相邻节点之间的关系。然而,对于某些任务,例如排序,可能需要多个节点之间的关系。因此,执行多步推理至关重要,可以按如下方式进行:
在这里插入图片描述
其中t ≥ 1。假设执行KKK步推理,vvvK^KK在Eq(7)中用作UUU.
在这里插入图片描述

3 Experiments

3.1 Dataset and Evaluation Metrics

数据集:DROP
评价指标:EM和F1

3.2 Experimental Settings

本文在开发集上调整模型,并使用网格搜索来确定最佳参数。所有表示的维度(例如,QQQPPPMMMQ^QQMPM^PMPUUUMMM’^’0_00MMM0_00vvv)都设置为128。如果没有指定,推理步骤KKK设置为3。
Adam优化器,β1= 0.8,β2= 0.999,∈∈= 10-7以最小化目标函数。学习率为5e-4,L2权重衰减λ为10-7,梯度限幅的最大模值为5。还对所有可训练变量应用衰减率为0.9999的指数移动平均。该模型以40个epoch16个batch_szie的规模进行训练。passage和question在训练期间分别被削减到400和50个token,在测试期间分别被削减到1000和100个token。

3.3 Overall Results

在这里插入图片描述

3.4 Effect of GNN Structure

不同GNN结构对DROP开发集的影响。结果如下表所示。“Comparison”, “Number” and “ALL”分别对应于比较问题子集、数字型答案子集和整个开发集。如果替换数字感知图为完全连通的图,则模型退回到传统的GNN,在表中表示为“GNN”。此外,““- question num”表示问题中的数字不包含在图形中,“-≤type edge”和“->type edge”分别表示不采用≤和>型的边。
在这里插入图片描述

3.5 Effect of GNN Layer Number在这里插入图片描述

3.6 Case Study

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值