1. 自然语言句子的双向、多角度匹配,是来自IBM 2017 年的一篇文章。代码github地址:https://github.com/zhiguowang/BiMPM
  2. 摘要
这篇论文主要提出了一个双向多角度匹配的模型(BiMPM),给定两个句子P和Q,首先模型分别将二者编码成BiLSTM encoder,然后在P→Q和Q→P两个方向对编码之后的句子进行匹配,在每一个方向的匹配当中,每个句子的每个time step 都从多个不同的角度与另外一个句子的全部time steps进行匹配。然后再使用一个BiLSTM将匹配的结果聚合成一个固定长度的向量。最后基于这个固定长度的向量,再通过一个全连接层(连接sigmoid或者softmax)进行分类以及构造损失函数。文章中对BiMPM在三个任务上进行了评估,并且与其他的模型进行了对比,分别是:paraphrase identification(相似短语识别),natural language inference(自然语言推断) 和 answer sentence selection(回答句子选择)。文章证明了BiMPM 在所有的任务上都取得了state-of-the-art的结果。
  • 自然语言句子匹配(Natural language sentence matching ,NLSM)是比较两个句子并且识别它们的关系的任务。
  • NLSM 一般有两种架构来解决:
1. “Siamese” architecture(单一架构),其步骤是使用同一个神经网络在相同的embedding space里面将两个句子进行编码,然后仅仅依据这两个编码之后的向量来进行决策。这种方法的优点是模型一般比较简单轻量,得到的向量可以用于可视化或者聚类等任务,其缺点是在编码阶段,两个句子没有显式地交互,这可能会丢失掉一些重要的信息。
2.matching aggregation(匹配聚合),在这种框架下,一些小的单元(words,context vectors)首先被进行匹配,然后匹配的结果通过CNN/LSTM进行聚合成一个单独的向量来进行决策。这种框架可以捕捉两个句子的交互特征,因而效果要比单一架构的模型要好。
  • BiMPM 属于 匹配聚合框架。
  • 之前的 匹配聚合框架的局限性:
1. 只考虑了word to word 的匹配,没有考虑phrase or sentence 级别的匹配
2. 只考虑了单向的匹配
  • BiMPM 对以上的两个局限性进行了改进。
  • 任务的定义:
1. 相似短语识别,本质是一个二分类问题,判定两个短语/句子在语义上是否是相似的,1表示相似,0表示不相似
2. 自然语言推断,P是一个条件句,Q是一个假设句,输出有三个不同的结果{entailment, contradiction, neutral},
entailment 表示Q可以从P推断得到
contradiction 表示在P的条件下Q是错误的
neutral 表示P和Q是不相关的
3. 回答句子选择,P是问题,Q表示一个候选答案,1表示Q是P的正确答案,0表示不是正确答案。
  • BiMPM 架构图

  • word representstion layer(词表达层):
主要分为两个部分,
第一个部分是使用glove/word3vec 进行word embedding,对于OOV word 向量进行随机初始化,dimension=300
第二个部分是character embedding,即基于字符的embedding,具体做法是对于每个word 的character将其输入LSTM进行编码,dimension=20
然后每个sentence 的word都可以得到一个dimension=320的向量表达。
  • context representation layer(上下文表达层):
使用一个BiLSTM对P和Q的context embeddings 进行编码,以便充分利用上下文信息。
  • matching layer(匹配层)
模型的核心层,该层的目的是对一个句子的每个time step 和另一个句子的全部time steps 的 context embedding 进行match,然后再反过来。这里需要进行一个多角度匹配操作。
  • aggregation layer(聚合层):
再使用一个BiLSTM 分别对两个句子使用四种方式进行匹配,得到四个固定长度的向量,然后再拼接这四个向量送入一个全连接层(预测层)
  • prediction layer(预测层):
最后的输出层。
  • Multi-perspective Matching Operation(多角度匹配操作):
四种不同的匹配操作:

1. full matching(全匹配)
是一个句子中的每个单词,更另外一个句子中最后一个隐藏层的输出作匹配,前向的LSTM是最后一个,后向的LSTM是第一个。
2. maxpooling matching(最大池化匹配)
与另一个句子每一个隐藏层的输出作匹配,取最大值。
3. attentive matching(专心匹配)
利用这个单词的embedding和另一个句子各个单词的embeddings分别计算余弦相似度,然后用softmax归一化做成attention权重,加权求和再进行带参余弦相似度计算。
4. max-attentive-matching(最大专心匹配)
与Attentive相似,先计算出attention的权重,取其中权重最大的,做相似度匹配。
这些操作的具体计算方式参考原论文,这里略去。
  • 实验参数设置:
word embedding:glove,size=300
character embedding size = 20
adma optimizer
dropout rate = 0.1
learning rate = 0.001
  • Quora Question Pairs(https://www.kaggle.com/quora/question-pairs-dataset)
quroa 在kaggle上举办的一个对句子进行语义重复识别的比赛,共有40w对句子。
  • quora dataset 训练/验证/测试集的选取
随机选择5000个语义相似的句子对和5000个语义不相似的句子对作为验证集,
再用同样的方式各选择5000个语义相似以及不相似的句子对作为测试集,
剩下的数据集作为训练集。

转载于:https://www.cnblogs.com/lyrichu/p/11204574.html

Bilateral Multi-Perspective Matching for Natural Language Sentences---读书笔记相关推荐

  1. 相似度:多边视角:2017:Bilateral Multi-Perspective Matching for Natural Language Sentences

    Bilateral Multi-Perspective Matching for Natural Language Sentences 以前的方法要么是从单一方向匹配句子,要么只应用单一的粒度(逐字或 ...

  2. 《The C Programming Language》读书笔记 说明

    <The C Programming Language>读书笔记 说明 作为笔记而言,完全是一种自写自看的行为,本来是没有必要写这篇东西的.但是作为一个生活在网络时代的学 生来说,想学好一 ...

  3. Notes on language modeling-COMS W4705: Natural Language Processing-学习笔记

    COMS W4705: Natural Language Processing 语言模型在广泛的应用中非常有用,最明显的也许是语音识别和机器翻译. 在语音识别中,语言模型与为不同单词的发音建模的声学模 ...

  4. Enhanced LSTM for Natural Language Inference-学习笔记

    Enhanced LSTM for Natural Language Inference 自然语言推理(NLI: natural language inference)问题:即判断能否从一个前提p中推 ...

  5. Recent Trends in Deep Learning Based Natural Language Processing(arXiv)笔记

    深度学习方法采用多个处理层来学习数据的层次表示,并在许多领域中产生了最先进的结果.最近,在自然语言处理(NLP)的背景下,各种模型设计和方法蓬勃发展.本文总结了已经用于大量NLP任务的重要深度学习相关 ...

  6. 《PC Assembly Language》读书笔记

    本书下载地址:pcasm-book. 前言 8086处理器只支持实模式(real mode),不能满足安全.多任务等需求. Q:为什么实模式不安全.不支持多任务?为什么虚模式能解决这些问题? A: 以 ...

  7. NATURAL LANGUAGE INFERENCE OVER INTERACTION SPACE

    文章目录 ABSTRACT 1 INTRODUCTION 2 RELATED WORK 3 MODEL 3.1 INTERACTIVE INFERENCE NETWORK 3.2 DENSELY IN ...

  8. 论文:Zero-Shot Grounding of Objects from Natural Language Queries

    作者 摘要 A phrase grounding system localizes a particular object in an image referred to by a natural l ...

  9. Interactive natural language question answering over knowledge graphs论文导读

    论文导读 目录 Abstract introduction 1 抛砖引的玉(砖见于图谱构建综述吧) 2 现有方法介绍 3 问题驱动 4 挑战与贡献 Interaction approach overv ...

最新文章

  1. SAP SD基础知识之SD常用BAPI
  2. jenkins+docker的简单项目部署
  3. 仿iOS中图标的抖动
  4. c#_Task用法总结
  5. 在java中重写方法应遵循规则的包括_Java面试题集合篇二
  6. flink on yarn HA高可用集群搭建
  7. oracle11g 查看磁盘,oracle11g 磁盘
  8. C#调用ORACLE存储过程返回结果集及函数
  9. 推动边缘计算的七项核心技术
  10. 区块链查比特币_登图区块链课堂——比特币矿机发展史
  11. 遥感数据下载网站整理
  12. 使用JRTPLIB收发RTP数据包
  13. 贴片电阻丝印看阻值大全,附高精度贴片电阻代码表
  14. 上位机软件系统开发工具简介
  15. 电脑服务器至强cpu性能排行,至强CPU性能排行榜,至强系列cpu天梯图2020.06
  16. 使用photoshop画虚线框
  17. VSCode: Acquiring CodeLLDB platform package 速度慢
  18. 嵌入式文件服务器,嵌入式文件服务器
  19. 数据分析领域不同职位de薪酬职能差异
  20. https域名安全证书怎么配置

热门文章

  1. 用微信远程控制电脑?这个新玩法一定爽到你
  2. 淘淘商城第51讲——从商城首页跳转到搜索页面
  3. css内边距外边距和边框
  4. Python微信公众号教程基础篇——收发文本消息
  5. MT7620设置GPIO输入中断
  6. HTML.初学.更新
  7. Double值取得小数点后两位的若干方法
  8. apache 在windows下无法启动的一个错误
  9. 最酷的Bootstrap免费字体和图标
  10. 进阶mapbox GL之paint和filter