论文阅读笔记:Tracking State Changes in Procedural Text: A Challenge Dataset and Models for Process Paragra

0、简介

  • 论文名字:Tracking State Changes in Procedural Text A Challenge Dataset and Models for Process Paragraph Comprehension
  • 下载地址:https://arxiv.org/pdf/1805.06975.pdf
  • 会议:ACL 2018

1、论文的motivation

MRC是近年来NLP领域比较热门的问题。在MRC中,追踪过程式文本中实体的状态是一个很重要的工作,识别实体在不同步骤中的状态可以更好的回答MRC中高层次的问题。什么是过程式文本呢?过程式文本就是描述一个过程的文本,举例来说,下图中的文字是一段描述光合作用的文本,就是过程式文本,文本中包含了光合作用的不同步骤。

在这里插入图片描述

本文针对实体状态追踪问题,提出了数据集ProPara。

2、Propara数据集

Proara数据集追踪了实体的状态信息和位置信息,其中待追踪的实体是给定的,实体的状态信息有no change、created、destroyed、moved,实体的位置信息没有预先定义,位置可以是文本中的任意span。下图是实体和位置信息的表

在这里插入图片描述

每一句话代表一个step,表格描述了每个实体在步骤结束后的位置。比如water在step0结束后在soil里(这里step 0代表初始状态),step 1结束后在roots中。“?”代表不知道,“-”代表不存在。

3、ProLocal模型

Prolocal模型把追踪实体状态看成多分类任务,把追踪实体位置信息看成序列标注任务,下图是Prolocal的模型结构图

在这里插入图片描述

(1)Input Encoding部分

模型的输入是 x i = [ v w : v e : v v ] x_{i}=[v_{w}:v_{e}:v_{v}] xi=[vw:ve:vv],其中 v w v_{w} vw代表单词i在GloVe中的embedding, v e v_{e} ve代表单词i是不是被选定的实体, v v v_{v} vv代表单词i是不是动词

(2)Context Encoding部分

使用BiLSTM学习包含上下文信息的向量表示,BiLSTM的隐藏层输出当作每个输入的向量表示 h i h_{i} hi

(2)Bilinear Attention

将每个实体的embedding 和动词(没有太明白这里的动词是怎么回事)拼接在一起,成为 h e v h_{ev} hev h e v h_{ev} hev和(2)中计算得到的每个输入的上下文向量表示计算Attention值。这里使用两组参数,计算了两个Attention值 A 1 A_{1} A1 A 2 A_{2} A2

(3)Output Layer

  • Output classification

    这里是计算实体的状态信息。把计算得到的 A 1 A_{1} A1当作权重,和对应的 h i h_{i} hi加权求和,得到 o 1 o_{1} o1,把 o 1 o_{1} o1接入softmax就可以输出分类结果,也就是实体对应的状态信息。

  • Output:Span Prediction

    这里计算实体的位置信息,使用序列标注的方法。将 A 2 A_{2} A2和和对应的 h i h_{i} hi计算,得到每个输入对应的隐藏表示,然后将每个隐藏表示单独送入Linear+Softmax的结构,输出BIO tags。BIO tags有五种,分别是B-Before-LOC, I-Before-LOC, B-After-LOC, I-After-LOC, O。B-Before-LOC表示单词是实体move之前,位置单词的开始,I-Before-LOC表示单词是实体move之前,位置单词剩余部分。B-After-LOC表示单词是实体move之后,位置单词的起始,I-After-LOC表示单词是实体move之后,位置单词剩余部分。O表示不是位置单词。当实体的状态是Create(Destory)的时候,位置单词只有after(before)。

4、ProGlobal模型

ProGlobal模型预测实体状态信息的时候并没有预测是否creat、move、destory状态,而是预测每一个步骤中实体是否为“not exist”, “unknown location”, “known location”状态。

ProGlobal模型结构类似于RNN,每一步的预测结果会受上一步的影响,模型结构图如下所示

在这里插入图片描述

(1)Input Encoding

模型输入是整个段落,也就是每个step代表的文本都做为输入。因为模型结构是类似于RNN的逐层结构,每次输入是相同的都是全部文本,但是不同step的对输入的编码方式是不同的。编码由三部分组成 x = [ v w : v d : v s ] x=[v_{w}:v_{d}:v_{s}] x=[vw:vd:vs],其中 v w v_{w} vw代表没个词的embedding, v d v_{d} vd代表每个词和实体词的距离,这里每次预测一个实体,因此只需要找和待预测实体的距离, v s v_{s} vs代表词和step的相对位置,当前是step2,如果词语是step2中的词语,那么 v d v_{d} vd就是current,如果是step2之前步骤的词语或者之后步骤的词语,对应的就是preveiou或者following。

(2)Context Encoding

这里也是使用BiLSTM进行上下文编码,隐藏层输出h作为每个输入的上下文encoding。下图公式就是得到的上下文的encoding

在这里插入图片描述

(3)预测状态

对于step p 中的实体 i 的状态进行预测,将(2)中获得每个输入的content encoding进行最大池化操作,得到表示 μ i p \mu_{i}^{p} μip,和step p-1的实体i的表示 c i − 1 p c_{i-1}^{p} ci1p相结合,送入Linear+softmax得到对状态的预测。状态为“not exist”, “unknown location”, “known location”中的一种。

(4)位置预测

这个步骤是在(3)预测的结果是known location的时候才执行的。位置信息预测和ProLocal模型不同,不需要对所有文字做序列标注,只需要预测位置单词开始和结束位置。预测位置时也会用到前一步骤的信息。我们拿预测开始位置来说明具体流程。 s i − 1 p s_{i-1}^{p} si1p是step i-1对第p个实体预测的位置的开始单词的概率分布,用 s i − 1 p s_{i-1}^{p} si1p和所有(2)得到的上下文encoding做加权求和得到了一个值,计算公式如下所示

在这里插入图片描述

将加权求和得到的值再和(2)中的每个上下文encoding进行拼接,然后使用LSTM进一步学习表示,如下所示
在这里插入图片描述

得到的 φ i t \varphi_{i}^{t} φit和(2)中的上下文encoding拼接,放入softmax就得到了step i下对实体p位置开始单词的概率分布 s i p s_{i}^{p} sip

体p位置结束单词的概率分布预测流程类似。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值