http://www.xue63.com/toutiaojy/20180327G0DXP000.html

本文提出一种简单的自然语言推理任务下的神经网络结构,利用注意力机制(Attention Mechanism)将问题分解为可以单独解决的子问题,从而实现了并行化。在斯坦福自然语言推理(SNLI)数据集上,本文工作取得了极好的效果,并且比之前的工作减少了一个数量级的参数数量,而且模型结构不依赖任何单词顺序信息。延伸模型加入了句子内的Attention以考虑一部分单词词序信息,得到更好的提升效果。

1.背景介绍

a) Natural Language Inference自然语言推理任务

使用自然语言进行推理的能力是许多NLP任务(如信息提取,机器翻译和问答)的基本前提条件。NLI任务是给定两个句子A和B,预测句子间的关系:

·推演(Entailment):如果文本A是真的,那么文本B一定为真。

·矛盾(Contradiction):如果文本A是真的,那么文本B一定为假。

·中性(Neutral):上述两者都不是。

例如:

应用:文本相似度,意见挖掘,关系抽取,知识推理/问答等等。

b)Attention Model注意力模型

人类利用有限的注意力资源从大量信息中快速筛选出高价值信息的手段,可以极大地提高信息处理的效率与准确性。深度学习抽象出了注意力机制的本质思想,对输入序列计算概率分布信息。

2.相关工作

自然语言推理任务的方法分为以下两种:

传统方法:

(1)基于特征结合的分类:多种相似度如词性标注、命名实体的自然语言处理基础技术;

(2)基于对齐的方法:利用文本的相关性如N-gram,动词反义词等的对应关系。

深度学习方法:

(1)基于句子表示的方法:Sentence Embedding(LSTM/CNN/…),把句子表示成向量再分类;

(2)基于句子匹配的方法:引入Attention机制,关注对判断句子蕴含关系起到重要作用的词,给予相对较高的权重。

本文主要讨论的是深度学习相关方法,下面讨论两篇相关工作:

a) LSTM + Feedforward Neural Network (Bowman et al. 2015)

b)LSTM + Attention (Rocktaschel et al. 2016)

3.本文方法

动机:

(1)现在大部分模型的工作都是利用预训练的词向量,得到句子向量表达,依赖主流的语言模型求解思路完成句子的匹配和概率生成;

(2)对句子进行编码-解码耗时、参数多,例如LSTM/GRU等模型结构,对长句子做sentence representation的时候较为困难,不一定能很好的表达语义;

(3)使用seq2seq模型还存在的问题是不能并行计算,使得时间周期长。

本文提出在NLI任务上,不需要对句子进行复杂建模,而是分解问题——单词的对齐,实现并行解决;相比其他模型减少了更多参数(减少到10%),并达到很好的效果。

1.Attend

2.Compare

3.Aggregate

除了上述的基础模型之外,可以在每个句子中使用句子内的attention方式来加强输入词语的语义信息。

比如对于英-中机器翻译来说,source是英文句子,target是对应的翻译出的中文句子,inner-attention机制发生在target的元素query和source中的所有元素之间。

而intra-attention机制发生在source内部元素之间或者Target内部元素之间。Intra-attention可以捕获同一个句子内单词之间的联系,例如语法特征、语义特征等;计算过程中会直接将句子中任意两个单词的联系通过一个计算步骤直接联系起来,所以远距离依赖特征之间的距离被极大缩短,有利于有效地利用这些特征;可以增加计算的并行性。

4. 实验及结果

数据集:SNLI (Bowman et al. 2015)

5. 总结

(1) 在NLI任务上分解成子问题,并行解决,相比其他模型减少了更多参数,并达到很好的效果;

(2) NLP工作的新思路,不需要句子结构深入建模,通过对齐文本也能达到很好的实验结果。

(3) 本文将NLI任务当做是关键问题,并直接解决这个问题,因此比单独给句子编码有巨大的优势;Bowman等其他方法则更关注问题的泛化,也是针对此来构建模型,适用的场景会比本文模型更广泛。

<A Decomposable Attention Model for Natural Language Inference>(自然语言推理)的更多相关文章

  1. 《Enhanced LSTM for Natural Language Inference》(自然语言推理)

    解决的问题 自然语言推理,判断a是否可以推理出b.简单讲就是判断2个句子ab是否有相同的含义. 方法 我们的自然语言推理网络由以下部分组成:输入编码(Input Encoding ),局部推理模型(L ...

  2. 论文阅读笔记: Natural Language Inference over Interaction Space

    这篇文章提出了DIIN(DENSELY INTERACTIVE INFERENCE NETWORK)模型. 是解决NLI(NATURAL LANGUAGE INFERENCE)问题的很好的一种方法. ...

  3. <<Natural Language Inference over Interaction Space >> 句子匹配

    模型结构 code :https://github.com/YichenGong/Densely-Interactive-Inference-Network 首先是模型图: Embedding Lay ...

  4. 第四篇:NLP(Natural Language Processing)自然语言处理

    NLP自然语言处理: 百度AI的 NLP自然语言处理python语言--pythonSDK文档: https://ai.baidu.com/docs#/NLP-Python-SDK/top 第三方模块 ...

  5. 《Bilateral Multi-Perspective Matching for Natural Language Sentences》(句子匹配)

    问题: Natural language sentence matching (NLSM),自然语言句子匹配,是指比较两个句子并判断句子间关系,是许多任务的一项基本技术.针对NLSM任务,目前有两种流 ...

  6. Bilateral Multi-Perspective Matching for Natural Language Sentences---读书笔记

    自然语言句子的双向.多角度匹配,是来自IBM 2017 年的一篇文章.代码github地址:https://github.com/zhiguowang/BiMPM 摘要          这篇论文主要 ...

  7. 论文笔记:Tracking by Natural Language Specification

    Tracking by Natural Language Specification 2018-04-27 15:16:13  Paper: http://openaccess.thecvf.com/ ...

  8. 【翻译】Knowledge-Aware Natural Language Understanding(摘要及目录)

    翻译Pradeep Dasigi的一篇长文 Knowledge-Aware Natural Language Understanding 基于知识感知的自然语言理解 摘要 Natural Langua ...

  9. BiMPM:Bilateral Multi-Perspctive Matching for Natural Language Sentences

    导言 本论文的工作主要是在 'matching-aggregation'的sentence matching的框架下,通过增加模型的特征(实现P与Q的双向匹配和多视角匹配),来增加NLSM(Natur ...

随机推荐

  1. mysql innodb存储引擎优化

    innodb_data_home_dir 这是InnoDB表的目录共用设置.如果没有在 my.cnf 进行设置,InnoDB 将使用mysql的datadir目录为缺省目录.如果设定一个空字串,可以i ...

  2. Node.j中path模块对路径的操作

    一.path模块 https://nodejs.org/docs/latest/api/path.html#path_path_join_paths 1.join方法 ==> 该方法将多个参数值 ...

  3. Build step 'Execute Windows batch command' marked build as failure

    坑爹的Jenkis,在执行windows命令编译.NET项目的时候命令执行成功了,但是却还是报了这样一个错: Build step 'Execute Windows batch command' ma ...

  4. 调用office COM出现不会退出的问题

    症状 在使用.net调用 Microsoft Office 应用程序时,Office 应用程序在调用Quit方法时不会退出. 原因 Visual Studio.NET 从托管代码调用 COM 对象时, ...

  5. mock server搭建及接口测试简单实例

    一.搭建mock server mock工具很多,这里我们选择用简单易操作的moco服务器 使用前必须先安装java,去相关网站下载Standalone Moco Runner 二.使用mock se ...

  6. layerui如何隐藏按钮?

    https://www.layui.com/doc/modules/layer.html#btn 建议把 btn: ['取消'],btnAlign: 'c',yes: function (index) ...

  7. 10W年薪和30W+年薪的产品经理差距在哪?

    举办到今年第六届壹佰案例峰会,认识的“程序猿/媛”朋友越来越多,时间长了就发现,程序员的世界一点也不单调,外界传说的不善言辞.最大的乐趣就是买“机械键盘”都是不对的.你见过周末组团去山里骑哈雷的研发经 ...

  8. 【太虚AR_v0.1】使用教程 | SLAM(Markerless)

    https://blog.csdn.net/VOID_AR/article/details/77715274

  9. CCCC L2-007. 家庭房产 建图 XJB模拟

    https://www.patest.cn/contests/gplt/L2-007 题解:一开始是想直接并查集,一个家就是一个集合,对每个集合维护一个人数num1一个房产数num2 一个房产面积ar ...

  10. https://pyobjc.readthedocs.io/en/latest/

    https://pyobjc.readthedocs.io/en/latest/ The PyObjC project aims to provide a bridge between the Pyt ...