内容简介:Facebook AI在15年6月发在arXiv上的论文:simple QA,即一类QA问题,这类问题能够转化为涉及一个entity和一个relation的查询,不涉及复杂的推理过程(比如结合多个KB中的fact和原文才能得出答案),只需要找到correct evidence(比如KB中的一个三元组)就可以正确回答。文章首先说明了虽然reasoning的研究最近很热,但是simple QA这类问题尚未解决,而且解决了之后应用范围也很广(通过更好的知识图谱支持)。
Facebook AI在15年6月发在arXiv上的论文: https://arxiv.org/pdf/1506.02075。主要阅读模型部分。
simple QA,即一类QA问题,这类问题能够转化为涉及一个entity和一个relation的查询,不涉及复杂的推理过程(比如结合多个KB中的fact和原文才能得出答案),只需要找到correct evidence(比如KB中的一个三元组)就可以正确回答。
文章首先说明了虽然reasoning的研究最近很热,但是simple QA这类问题尚未解决,而且解决了之后应用范围也很广(通过更好的知识图谱支持)。
这篇文章主要工作:
- 构造了包含大量simple-QA样本的数据集(SimpleQuestions)进行实验,研究了 多任务学习 和 迁移学习 在寻找correct evidence过程中的影响。
- 同时基于 memory networks 框架实现了一个QA模型,并获得了不错的效果。
因为该框架下的模型能够具备复杂推理的能力,从而可以继续深挖更难的QA任务。
FreeBase和Reverb,两个知识图谱,包含很多
格式的三元组(facts)。
模型概述:
-
预处理KB:进行了三个预处理步骤。(对于两个知识图谱的fact进行了相似的处理)
- 1.group。为了回答有很多答案的问题,把具有相同头实体和关系的facts聚合为一个新的fact。
- 2.remove intermediate node。将复杂关系化简为一个三元组(fact),使更多QA问题变为Simple QA问题。
- 3.vectorize。把预处理之后形如 的三元组向量化为一个高维向量,维度是所有实体数量和关系数量之和,并给予一个初始值(类似n-hot)。
- 4.vectorize questions。把所有作为输入的问题向量化。维度是词表的长度加上代表KB中实体的别名的n-grams的长度之和,用n-hot的形式表示问题向量。
- 输入模块I:进行上面的预处理步骤,从而把FreeBase的fact填充到memory中。或者把问题的vector表示传递给下一个模块。
- 泛化模块G:把Reverb的facts预处理为向量,扩展memory。(迁移学习)
-
输出模块O:由输入问题,找到对应的supporting fact,分为两步。
- 第一步通过实体链接找出一个待选的facts集合;
- 第二步通过embedding model找到与question向量最相关的fact并输出。
- 响应模块R:在本文模型中,直接选择输出模块输出的fact中的尾实体集合即可。
总结一下,本文把同一年提出的MemNN应用到QA领域,并取得了不错的效果,证明了MemNN可以应用于NLP的一些任务,而且Memory中即使存储着海量高维向量,也是能够训练的。
2.《Gated End-to-End Memory Networks》
墨尔本大学和施乐欧洲研究中心2016年10月发表在arXiv上的论文: https://arxiv.org/pdf/1610.04211。提出了一个在MemN2N基础上改进的模型,并在2个涉及到推理过程的对话数据集上得到了SOTA的结果。
这里首先我们来回顾一下 MemN2N 的结构,主要是若干层的 supporting memory ,每一层都有 input memory 和 output memory ,负责把上下文编码到记忆中,input memory进一步和question向量计算出分布在memory上的注意力权重,output memory和注意力权重加权求和得到每一层的response向量。通过使用soft attention而不是MemNN中的hard attention,用可微的读取(写入)memory的操作实现端到端的记忆神经网络。最后一层的response向量通过仿射变换和softmax计算出 答案的分布 。
shortcut connections,能够解决梯度消失问题,让深度神经网络更易训练。其中Highway Network和Residual是两个同时提出的shortcut connections的模型。Highway中将原本前馈神经网络的
变成 ,其中T和C是两个门,residual可以认为是Highway的一种特殊形式。
模型改进:MemN2N的模型中,第k个hop到第k+1个hop之间的转换关系是,第k个hop的输出(response向量)
加上第k个hop的输入 作为第k+1个hop的输入。也就是 。这可以认为是一种类似residual的shortcut连接,但是这种连接不具有动态特性。所以本文改进成了 动态门机制的计算方式(GMemN2N,过程如上图所示):
- 首先计算出 ,也就是gate的值。
- 而后计算k+1层hop的输入,
本文用了一种简单的改进方式改进了MemN2N模型,但从实验结果来看提高的比较多。
3.《Reading Comprehension Using Entity-based Memory Networks》
日本的NTT通讯科学实验室和东京大学于2016年12月发表在arXiv上的论文: https://arxiv.org/pdf/1612.03551。提出了一种基于实体的记忆神经网络用于QA任务,该模型能够更好的捕捉**细粒度信息**和实体间的**细微关系**。
之前用于NLP任务(尤其是QA任务)的记忆神经网络模型的问题在于,memory中存储的是句子向量,这样那些低于句子级别的文本单元之间的关系就会被忽略。本文的模型选择只存储entity,避免引入冗余信息和噪声。
对于
形式的QA任务,模型具体的处理过程如下(参考下图):
- 首先,对于 上下文 句子 ,用自编码器(或其他模型)计算出句子的向量表示 。而后抽取其中的所有实体 并用预训练的词向量初始化每个实体的 状态向量 。而后不断的 更新状态向量 直到使用所有实体的状态向量能够 重建 句子的向量表示为止,把这些实体的状态向量存储到memory中。
- 而后,将 问题 的向量表示 计算出来,并找出memory中与 问题相关 的所有实体状态向量。用这些状态向量通过一个神经网络计算出 特征向量 ,并以此为基础预测问题的答案。
模型采用监督式学习训练,而且在数据集上需要预先标注句子中的实体,这里实验中把所有的名词和代词作为实体。在bAbi,MCTest数据集上进行了实验。
4.《Two-Stage Synthesis Networks for Transfer Learning in Machine Comprehension 》
斯坦福、微软研究院等机构的人员发表在EMNLP2017上的论文: https://arxiv.org/pdf/1706.09789。文章提出了SynNet模型,进行关于QA问题上的迁移学习。
通过生成(问题,答案)对的方式,将在一个QA数据集(SQuAD)上预训练的模型在另一个无标记数据集(NewsQA)上微调训练,实现效果较好的迁移学习。
在源域(source domain)上的数据集训练时,样本以(P,Q,A)即段落、问题、答案三元组的形式给出,其中 答案是段落中的一个连续片段 。
在目标域(target domain)上的数据集训练时,样本以P即 无标记段落 的形式给出。
模型SynNet(如上图)主要负责给定目标域数据集上的段落P,生成问题Q和答案A,分为两个步骤:
- 答案生成:利用一个双向LSTM网络,对段落中的单词(embedding的形式)进行 标记 ,所有标记为非None的 连续单词序列 作为候选答案,输入问题生成模块。
-
问题生成:采用一个 encoder-decoder
结构的网络,最大化联合条件概率
:
- encoder:输入P的word embedding向量(增加一维表示答案的0/1特征),经过双向LSTM处理得到隐状态h。
- decoder:由h和前一时刻输出的问题单词 得到注意力向量 。采用两个预测器,一个直接产生预定义词表中的词,另一个由一个pointer network从段落P中复制一个词。
- loss:由于产生的问题单词序列Q没有标签,所以借鉴论文 《Latent predictor networks for code generation. 》 中的无监督学习算法最小化交叉熵损失。
- 机器阅读理解模型:直接使用了开源的 BiDAF ,但其他模型也可以。
-
训练:
- 在源域(source domain)s上的数据集训练时,样本以(P,Q,A)即段落、问题、答案三元组的形式给出,其中 答案是段落中的一个连续片段 。
- 在目标域(target domain)t上的数据集训练时,样本以P即 无标记段落 的形式给出。
- 1.在s上训练好MC模型,在t上训练好SynNet。
- 2. 微调 MC模型,使用了一个叫做“ data-regularization ”的trick。每输入s上的k个minibatch,输入t上生成的1个minibatch(实验中k取4),避免生成的数据噪音过多影响模型效果。
- 3.最后在测试时,由多个训练时保存的模型ensemble,增加模型稳定性。
额,这篇论文和memory没什么关系,提出了一种迁移学习的方法并应用在QA数据集上,论文的实验和分析部分非常详尽。
5.《EviNets: Neural Networks for Combining Evidence Signals for Factoid Question Answering 》
埃默里大学发表在ACL2017上的一篇论文: http://aclweb.org/anthology/P17-2047。针对QA模型的答案预测模块进行研究,利用并结合多个来源(比如结构化的知识图谱和非结构化的文本)的support evidence给出答案。
针对factoid QA问题,即1中所说的Simple QA问题,基于知识图谱的QA模型能够解决,但是有时知识图谱不够完善,需要其他信息的配合。
模型结构如上图,对于一个 问题 ,使用搜索系统获取与问题相关的 问题相关文本 ,实体链接的方式从相关文本获取若干 候选答案实体 ,此外再通过知识图谱获取相关实体的 三元组 和 实体类型信息 ,这些信息作为模型的输入。其中 supporting evidence 是所有问题相关的文本或者三元组等形式的信息。模型主要过程如下:
- Evidence Matching:评估 每个supporting evidence和问题的相关程度 (采用对两者的向量表示进行点乘的方法),然后进行softmax归一化。
- Evidence Aggregation:聚合权重,对每个候选答案a,其得分取决于:与其相关的supporting evidence中该候选答案的 被提及程度 、次数以及该候选答案 与问题q的相关度 。
- Answer Scoring:将聚合起来的每个候选答案的得分输入 全连接网络 计算最终的输出。
额,这篇文章和Memory并没有太多的关联。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网
猜你喜欢:- 用于深度强化学习的结构化控制网络(ICML 论文讲解)
- 微软论文解读:用于视觉对话的多步双重注意力模型
- 最佳论文:南京大学提出DSKG,将多层RNN用于知识图谱补全
- 机器之心论文解读:可用于十亿级实时检索的循环二分嵌入模型(RBE)
- Stanford NLP 解读 ACL 2018 论文——用于调试 NLP 模型的语义等价对立规则
- html5 – 用于span标记的Twitter Bootstrap工具提示(不适用于标记)
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。
TED Talks Storytelling: 23 Storytelling Techniques from the Best
Akash Karia / CreateSpace Independent Publishing Platform / 2015-1-11 / USD 6.99
"Every speaker can put these ideas into practice immediately -- and they should!" ~ Dr. Richard C. Harris, Certified World Class Speaking Coach "An insightful read" ~Dennis Waller, Top 500 Revie......一起来看看 《TED Talks Storytelling: 23 Storytelling Techniques from the Best》 这本书的介绍吧!