2018.03.26试题理解论文两篇阅读

2018.03.26试题理解论文两篇阅读

最近读了两篇关于问题答案联合建模的论文,读书笔记如下:

1 A Constituent-Centric Neural Architecture for Reading Comprehension

0 摘要:

0.1应用领域:

阅读理解(Reading comprehension RC)旨在理解自然语言并回答其中的问题,这是一项具有挑战性的任务。 在本文中,我们研究斯坦福问题答疑数据集(SQUAD)中的RC问题。

0.2模型

从训练集观察,大多数正确的答案都集中在句子解析树(parse tree)中的组成成分(constituents)上,

我们设计了一个成分为中心(constituent-centric)的神经网络架构,其中候选答案(candidate answers)的生成和他们的表示学习(representation learning)都是基于解析树的组成部分(constituents)来生成,并由句子语法解析树指导(guided)。

好处:在这种架构下,候选答案的搜索空间可以大大减少,并且可以很好地捕获成分之间的句法(syntactic),层次(hierarchical)和组合结构(compositional structure),这有助于更好地表达候选答案。

1 引言

1.1 任务

阅读理解(RC)旨在通过理解文本来回答问题,这是自然语言处理中的一项很火热的研究领域。在本文中,我们是解决SQUAD QA任务(图1显示了一个例子),这个数据集的特点如下:

(1)大规模:107,785个问题,23,215个段落;

(2)非合成:由众包工作者提出问题;

(3)候选答案的大量搜索空间(对模型能力很高要求)。例子如下:

我们研究两个主要问题:(1)如何生成候选答案?(2)如何有效地代表(represent)候选答案?

  1. 与给出少量答案选项的多选QA 和 填空式QA不同,SQUAD中的答案可以是文本中的任意跨度(any span),从而产生一个大小为O(n 2)的大搜索空间,其中n是句子中单词的数量。这会产生大量的噪音,模糊性和不确定性,使得挑选正确答案非常困难。

  2. represent答案 首先,需要捕捉跨越多个句子的远程语义。即,回答问题需要多重推理。例如,在图1中,段落中的最后两句是解答第三个问题所必需的。 其次,局部句法结构需要纳入表征学习。 的研究表明,实验表明,句法特征是影响表现的主要因素。

1.2 解决办法

  1. 为了解决第一个问题:研究表明,人类回答问题时,给出的正确答案不是任意的跨度,而是以句法分析树中的成分为中心。我们根据成分产生候选答案,这大大减少了搜索空间。
  2. 为了解决第二个问题(句法特征的表示学习):我们首先使用链式树(chain-of-trees)LSTM 和树引导的注意机制(tree-guided attention mechanism)对各个成分进行编码,然后将这些编码生成组成序列的表示。

2模型

2.1 模型的总架构:

模型的输入是passage和question,输出是大部分适合于回答这个问题的段落中的答案。

我们设计了一个以成分为中心的神经网络(Constituent-Centric Neural network) (CCNN),它包含了以下四个层次:

  1. 树的chain-of-trees LSTM编码层:在编码层中,链式树LSTM和树LSTM分别对passage段落和问题中的构成要素进行编码。
  2. 树引导的注意层: 编码被馈送到树引导的注意层以学习问题意识表示(question-aware representations)
  3. 候选答案生成层:注意力输出被传递到候选答案生成层以基于组分扩展来产生和编码候选答案。
  4. 预测层:预测层使用前馈网络从候选人中挑选出最佳答案。

2.2 chain-of-trees LSTM编码层

考虑到段落和问题,我们首先使用斯坦福句法解析器将它们解析为组成分析树,然后CCNN的编码层通过tree LSTM学习 组成部分 在问题和段落中的表示。

这里有两个模型:tree LSTM 和chain of tree LSTM,概念是类似的,我们先看简单的:tree LSTM

2.2.1 tree LSTM

每个问题都是一个句子,有一个组成分析树(constituent parse tree)。树中的叶节点代表单个单词组成部分,内部节点表示具有多于一个单词的组成部分。

有了句法树,我们构建一个双向树LSTM,它由一个自下而上的LSTM和一个自顶向下的LSTM组成,以编码这些成分(如图4 )。

每个节点(成分)具有两个隐藏状态:LSTM在自底向上产生的h↑和LSTM从上向下产生的h↓。

h↑(i)第i个 子代 的隐藏层状态(hidden state),c↑(i)第i个 子代 的memory cell。

在自底向上的LSTM中,每个节点都有一个输入门i↑,忘记门{f(l)↑}
对应于不同的孩子,一个输出门o↑和一个存储单元c↑。对于内部节点而言,输入是子节点的隐藏状态和存储单元,转换方程定义为:

在自上而下的方向上,门,存储单元和隐藏状态的定义方式与自底向上方向类似。 对于除根之外的内部节点,输入为其父节点的隐藏状态h↓和存储单元c↓。

对于叶节点,除了h↓和c↓之外,输入还包含单词嵌入。

对于根节点,自顶向下的隐藏状态h↓被设置为其自下而上的隐藏状态h↑。这样: h↑捕获所有成分的语义,然后将其复制为h↓并向下传播到每个单独的成分中。

最后,连接两个方向的隐藏状态,我们得到每个节点h = [h↑; h↓]的LSTM编码,它将成为关注层的输入。

自下而上的隐藏状态h↑构成了包含在该组成部分中的子组成部分的语义,并且自顶向下的隐藏状态h↓捕捉整个句子中表现的上下文语义。

2.2.2 Chain-of-Trees LSTM for Passage Encoding

Chain-of-Trees LSTM从字面上来看,就是把一系列Trees LSTM 连成一个链。

为了对包含多个句子的段落进行编码,我们设计了一个链式LSTM(图4)。为每个句子建立一个双向tree LSTM以捕捉本地句法结构,并且这些tree LSTM 通过双向链LSTM粘合在一起以捕捉跨越多个句子的远程语义。

具体位置输入为:由自底向上树LSTM生成的隐藏状态充当链LSTM的输入。类似地,链LSTM状态被馈送到自顶向下树LSTM。这使得每个成分的编码都能传播到通道中的所有其他成分。

  1. 前向LSTM:每个句子t被视为一个单位。这个单元的输入是由句子t的tree LSTM生成的,它是根部的自底向上隐藏状态h↑t。
  2. 后向LSTM:计算记忆门遗忘门之后,随后,封装所有语句的语义的→h t和←h t被输入到自顶向下树LSTM的根,并传播到句子t中的所有成分中。

2.3 Tree-Guided Attention Mechanism

我们提出了一种tree-guided attention(TGA)机制来学习文章中每个组成部分的问题意义( question-aware)表示,其中包括两个步骤:

(1)constituent-level attention分数计算;

(2)以树为导向的归一化;

给定文章中的constituent h(p),对于问题中的每个成分h(q),计算非标准化的注意力权重a作为a = h(p)•h(q),其测量两种成分之间的相似性。

然后我们对这些分数进行树导向的规范化。在分析树中的每个内部节点处,其L个孩子的未归一化注意分数为{al} ,使用softmax操作执行局部归一化。。因为在每个内部节点处,设h为其LSTM编码,{al} 为该节点及其L个孩子的归一化注意分数,则此节点的注意力表示为:

然后将它连接到文本成分的LSTM编码h(p),并获得将成为每个成分表示向量 z = [h(p); b(r)]。

2.4 Candidate Answer Generation layer

虽然训练集中的大部分正确答案都是组成部分(constituent),但是不完全是这样。

我们建议通过附加与它相邻的单词来扩展每个组成部分。

令C表示一个成分,并且S =“… wi-1 wi C wj wj+1…”是包含C的句子。我们通过追加C之前的单词(如wi-1和wi)和单词后的r个字附加到C上。

例子如下:前后扩展两个单词,共获得了9次扩展:

接下来,我们编码这些候选答案,编码将用于预测层。

鉴于每个扩展都是组成序列,我们构建了一个双向链LSTM(图5,右下),以综合其中各个组成部分的表示。在链式LSTM中,单元i的输入是Ci的组合表示。我们连接C 1处的前向隐藏状态和C 1处的后向状态作为E的最终表示。

2.5 Answer Prediction and Parameter Learning

给定候选答案的表示,我们使用2个隐藏层(两者具有相同数量单位)的前馈网络f来预测正确的答案。

网络的输入是候选答案的特征向量,输出是置信度分数。 选择得分最高的那个作为正确的答案。

3实验

实验在斯坦福问题答疑数据集(SQUAD)v1.1上进行,其中包含来自536维基百科文章的107,785个问题和23,215个段落。数据被随机分为训练集(80%),开发集(10%)和未发布测试集(10%)。

4思考

  1. 题目与答案 联合建模。
    对阅读理解任务来说,本篇论文说的是:最重要的是对“问题”与“原文(答案来源)”进行联合建模,取得了很好的效果提升。那么对于我们的“试题”表示学习来说,将题目文本(可以基于树),与答案文本(试题的讲师解析)联合建模。

  2. 总的来说,建模是一种工具,怎么如何衡量 建模的好坏。(各种测评任务) 或者建立自己的衡量数据集 与 任务。

2 Joint Modeling of Content and Discourse Relations in Dialogues

对话中内容与话语关系的联合建模

1引言

面向目标的对话,如会议,谈判或客户服务记录,在我们的日常生活中扮演着重要的角色。 从对话中自动提取关键点(critical points)和重要结果(important outcomes)将有助于为复杂对话生成摘要(summaries),也有助于理解会议的决策过程或分析协作的有效性。

本文主要关注 口头会议(spoken meetings),这是协作和想法分享的常用方式。


其中,话语结构(discourse structure)可以用来捕捉在会议的问题解决和决策过程中提出的主要讨论要点(主题)和论点。原因是:

  1. 不同说话人轮流的内容不是孤立地发生的,而有其内在逻辑。
  2. 同时,内容的转变也可以反映说话人的目的转变(purpose turns),从而便于话语关系的理解。

以图1中AMI语料库的会议片段为例:

这个讨论是基于Twente论证模式( Twente Argumentation Schema )(TAS)的话语结构加以注释的。

可以看出,会议参与者通过显示疑问(UNCERTAIN),提出替代解决方案(OPTION)或提供反馈(feedback)来评估不同的选项。话语信息通过揭示讨论流程帮助识别关键讨论点(key discussion point),即“使用哪种类型的电池”。

当前,对话中的自动话语分析仍然是一个具有挑战性的问题。 而且,获取关于话语关系的标注是耗时且昂贵的过程,并且不能针对大型数据集进行缩放。

所以,在本文中,我们提出了一种联合建模方法来选择(1)反映关键讨论点的重要短语,并(2)标注谈话会议中发言者轮流之间的话语关系。

据我们所知,我们的工作是第一个在会议中共同建立内容和话语关系的模型。我们用两个会议语料库 - AMI语料库和ICSI语料库测试了我们的模型。实验结果表明,我们的模型在词组选择上的准确率为63.2,明显好于基于支持向量机(SVM)的分类器。

我们的话语预测组件也比现有的基于神经网络的方法获得更好的准确性(59.2与54.2)

2模型

2.1 Model Description

我们提出的模型学习通过利用两种信息源之间的相互作用来共同执行内容选择和话语关系预测。

假设会议讨论记录(meeting discussion)为x,其中x由话语单元( discourse units)序列 x = {x 1 ,x 2 ,··· ,x n }组成。每个话语单元 xi 可以是某人完整的一句话或其中一部分。

如图1所示,为每次讨论构造一棵树形结构的话语图,每个话语单元作为树的一个节点。

在这项工作中,我们使用了Twente论证模式(TAS)(Rienksetal,2005)的议论性话语结构。对于每个节点x i,它在讨论中被附加到它之前的另一个节点x i’ (i’< i ),(对于每一句非开头话语,总是之前某一句话的“疑问、意见、反馈”)

并且话语关系di保持在链路(如果x i是根,则d i是空的)。令t表示x中的链路集合。根据之前的研究,我们假设话语单元之间的依附结构是在训练和测试期间给出的。

从每个话语单元x i中提取一组候选短语,从中识别包含要点信息的显着短语。我们使用斯坦福分析器(Stanford parser)获得组成和依赖分析的话语。并按照以下规则进行选取:

  • 我们限制符合条件的候选人是最多5个单词的名词短语(NP),动词短语(VP),介词短语(PP)或形容词短语(ADJP),其首字不能是停用词。
  • 如果候选人是组成分析树中另一位候选人的父母,我们将只保留父母。
  • 如果后者是动词的直接宾语或主语,我们将动词和候选名词短语进一步合并为一个候选词。

对于例子x i :
“let’s use a rubber case as well as rubber buttons”,我们可以确定候选词: “use a rubber case” 和 “rubber buttons”.

“让我们使用橡胶外壳以及橡胶按钮”,我们可以确定候选词“使用橡胶外壳”和“橡胶按钮”。

此时,对于x i,候选短语集合表示为$ c i = (c_{i,1},c_{i,2},...,c_{i,mi}) $,其中m i是候选词数。 如果相应候选者被选为显着短语,则$c_{i,j}$取值1;否则$c_{i,j}$等于0。

整个讨论x(discussion)中的所有候选短语都表示为c ,c的特征参数为w(feature parameters),话语关系(discourse relations)为d。我们定义一个对数线性模型(对数线性模型描述的是概率与协变量之间的关系,逻辑回归就是一个对数线性模型):

这里Φ(·)和φ(·)表示特征向量。

我们利用三种类型的特征函数:

  1. (1)仅含内容的特征φc(·),它捕捉短语的重要性,
  2. (2)仅限话语特征φd(·),表征(潜在的更高阶)话语关系
  3. (3)内容和话语φcd(·)的共同特征,它们模拟了两者之间的相互作用。

2.2 Joint Learning for Parameter Estimation参数估计的联合学习

为了学习模型参数w,我们采用基于SampleRank的算法,这是一种随机结构学习方法

算法1中描述了完整的学习过程:

  1. 首先,使用从[-1,1]中随机抽取的每个值对特征权重w进行初始化。
  2. 对于每个样本,我们随机地初始化候选短语标签c和话语关系d的分配。
  3. 构造一个MCMC链,配置为σ=(c,d):
    1. 首先选择分布q(d’ | d,x)对话语结构d进行采样
    2. 然后基于新的选择分布q(c ‘ | c,d’,x)进行短语标签c的采样
    3. 计算两个提案得分。如果通过ω(σ0)提高得分,则新配置被接受。参数w会相应更新。

2.3 特征描述

  1. 内容特征Content Features

重要短语倾向于具有较高TF-IDF分数,所以我们计算每个短语中TF-IDF词的分数。

我们还要考虑这个词的主语是否在前面提到,这意味着讨论的焦点。

计数标签和短语类型的数量以表征句法结构

我们确定讨论中包含候选词组的转折的绝对位置和相对位置。最后,我们记录候选词是否由主讲者说出,主讲者在讨论中发表最多的单词。

  1. 话语特征Discourse Features

对于每个话语单元,我们收集话语树中当前单元及其父节点的对话行为类型,以及它们之间的相似性。

我们记录同一位发言者是否发出两个回合。

话语单位的长度也是相关的。因此,我们计算时间跨度和字数。

为了整合全局结构特征,我们对话语树中节点的深度和它的兄弟节点的数量进行编码。

  1. 联合特征Joint Features

为了对内容和话语之间的交互进行建模,我们将话语关系添加到每个内容特征以组成联合特征。

例如,如果候选词的内容特征φ[avg-TFIDF]的值为0.5,并且其话语关系d是POSITIVE,则联合特征采用φ[avg-TFIDF,POS]的值为 0.5。

3 收获

  • 对试题进行建模的时候,为了提高精度。可以考虑题干文本的先后关系。 比如把一个题干分为[a、b、c]三部分,除了a 的文本之外,能否考虑a是b的条件;b是c的假设;这样的标签信息。
  • 还有就是作者对文本的特征提取方式,比如:特征词的个数、同一个关键点之前有没出现过、转折词的个数。。。

评论

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×