《A Frame-based Sentence Representation for Machine Reading Comprehension》ACL2020论文阅读

目录

论文认为存在的问题:

主要解决的问题方法:

了解一下FrameNet:

论文举例:

数学符号声明:

模型:

1.Lexical Units Aggregation Model(LUA)

2.Lexical Units Attention Model(TLUA)

3.Frame Relation Attention Model(FRA)

4.FSR

FSR模型:

数据集:

最后结果:

举例:


机构为:山西大学。

论文认为存在的问题:

1.当前MCR获取到的信息只局限于句子本身,不能像人类使用语义知识。2.并且目前利用FrameNet只局限于在一个Frame中的LUs vector embedding,没有把Frame当作一个整体进行建模。也没有利用F-to-F之间的丰富的语义信息。

为了语义缩小差距和综合利用Frame的语义,于是提出了Frame-based Sentence Representation方法。具体而言,与现有的只对词汇单元(lu)进行建模的方法不同,Frame Representation Models整合了多Frame语义信息,以获得更丰富的语义聚合,从而获得更好的句子表示。

主要解决的问题方法:

提出基于FrameNet工具包的三种表示方法和一个模型, Lexical Units Aggregation Model(LUA)、Lexical Units Attention Model(TLUA)、Frame Relation Attention Model(FRA)、模型:Frame-based Sentence Representation(FSR)。通过这些模型方法获取到更好的Sentence Representations,从而提升了对识别标签和判断句子之间语义关系的等方面的能力。

了解一下FrameNet:

FrameNet语料库是一个人读和机读的英语词汇数据库大多数单词的含义都可以通过语义框架(对事件、关系或实体及其参与者的描述)得到最佳理解。例如,烹饪的概念通常涉及到一个人做饭(Cook),即将被烹饪的食物(food),做饭时用来盛食物的东西(容器)和热源(加热设备)。在FrameNet项目中,这被表示为一个名为Apply heat的框架,而Cook、Food、Heating instrument和Container被称为frame elements (FEs)。链接这种框架的单词,如fry(炸)、bake(烘烤)、boil(煮)和broil(炙烤),称为Apply_heat框架的词汇单元(LUs)。

还有一些多字短语,如“given name”和像“shut-eye”这样带连字符的词,也可以是LUs ,而且他们的内部结构是不可分析的。FrameNet的工作是定义框架Frame,并对句子进行注释,以展示FEs与框架上的单词在语法上匹配情况。例如,“Apply heat”框架描述了涉及厨师、一些食物和加热设备的常见情况,并由单词bake、boil、roast、brown、simmer、steam…激活(evoking)。我们将框架Frame的角色称为“框架元素”(FEs),而引发框架的单词称为“词汇单元”(LUs),句子中与LU匹配的词称为Target。

论文举例:

论文中给出一个例子:Katie bought some chocolate cookies

数学符号声明:

这样对FrameNet有了大致了解,这样能对模型实现更好理解。在介绍模型之前,声明一些数学符号。F={\left \{​{F}_1,F_2,...,F_m,...} \right \}代表了在FrameNet中的一组Frame集合,F_m\in R^HU^{F_m}= \left \{ U_1^{F_m}, U_2^{F_m}, ...,U_n^{F_m},... \right \}F_m的LUs集合。N代表所有LUs在F_m中的数量,U_n^{F_m}代表在F_m中第n个LU。U^{F_m}\in R^{(H\cdot N)}t^{F_m}t^{F_m}是匹配了F_m中的一个LU的目标词。

模型:

以下给出三种不同的Frame representation的表示方法,来解决没有把Frame看作一个整体的问题。

1.Lexical Units Aggregation Model(LUA)

这是一种比较直观的方法,给定一个F_m,它将它包含所有的U_i^{F_m}(i\in N)求平均来表达其含义:

F_m=\frac{1}{N}\sum_{U^{F_m}}U_n^{F_m}

2.Lexical Units Attention Model(TLUA)

方法1不能区分不同LU的重要性,为了解决这个问题,提出了TLUA。通过给定句子中的Target利用注意力机制(attention scheme)自动确定不同LU的权重。

这里回顾一下attention 机制:

左右两边分别是Encoder Decoder ,纵轴则是多层的神经网路区块/ 层。现在让我们看下注意力机制计算步骤。在Decoder 的每个时间点,我们都会进行注意力机制以让Decoder Encoder 取得语境资讯:

1.拿Decoder当下的红色隐状态向量htEncoder所有蓝色隐状态向量hs做比较,利用score函式计算出ht对每个hs的注意程度

2.以此注意程度为权重,加权平均所有Encoder隐状态hs以取得上下文向量context vector

3.将此上下文向量与Decoder隐状态结合成一个注意向量attention vector并作为该时间的输出

4.该注意向量会作为Decoder 下个时间点的输入

回到论文中,我们只强调当前的句子给定的Target以及匹配的LU,这样会减少在同一个Frame中不相关LUs的潜在影响。

3.Frame Relation Attention Model(FRA)

提出该模型是为了分析不同句子间的语义关系,在FRA模型中可以利用FrameNet中F-to-F关系去获取更丰富的语义信息。

给定F_mF_m^+=\left \{ {F_{m,1},...,F_{m,w},...} \right \}表示所有可以与F_m连接的框架,基于在FrameNet中F-to-F关系。Attention shemes被设计为内部att和外部att,内部att关注相邻的LUs,外部 att更关注相邻(relevant)的F,避免受到连接但关系不深的F的影响。

公式和上个方法类似,只是由T变成了F

4.FSR

给定一段落s=\left \{ {x_1,x_2,...,x_k,...} \right \}其中x_k是单词,T_k代表段落中激活第k个Frame的target,即T_k激活F_kFE_{ki}表示F_k第i个frame element。P_{ki} denotes the i-th span fulfilling  FE_{ki}(个人认为P_{ki}代表了s中的单词)。定义c_k=\left \langle T_K,F_k,FE_{kn},P_{kn}\ket \right \ranglec_k表示段落第k个四元组。 在这里论文直接使用了SEMAFOR(框架语义分析器)去自动对句子进行多种语义标注。

上图提供了一个示例句子有三个target:bought、some、chocolate cookies。每个 T 都有其唤起的语义框架,就在下面,commerce_buy、Proportional_quantity、Food。对于每个Frame与T对应的FE在最下方。比如T: bought唤起 Commerce_buy的Frame,有buyer,Goods这些FEs是包含    Katie和 some chocolate cookies。

如果还是不太理解,再看一个例子:Do you want me to hold off until I finish July and August?

最后两层都代表了FES,只是存在包含和被包含的关系,因此写成两层。

FSR模型:

c_k(k=1,2,3)作为输入,首先计算它的矩阵表示c_k^t,(We first compute its matrix representation c_k^t),列代表不同语义信息。我们将句子表示形式化如下:

N代表了神经网络,K代表句子中四元组的总数量,是拼接操作(aggregate operation)。是利用句子中P和T产生的信息用来形成frame set representation c^t

数据集:

MCTest:在这个数据集中,所有的文档都是一些叙述性的故事。它考察的推理能力被限定于一个 7 岁儿童可以接受的范围内,包含有许多常识性的推理,这些推理既包含事实性的,也包含非事实性的。这个数据集包含有两部分,一个是 MC160,还有一个是 MC500,分别包含 160 篇和 500 篇文档。由于这个数据集较为接近我们真实的阅读理解场景,因而成为阅读理解相关研究者的首选评测数据集。

最后结果:

举例:

Found 和 Buy 在给定的问题和段落中激活了Locationg 和 Commerce buy Frame—在FrameNet中,由于它们的语义关系,所以选择B。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值