两句话之间的逻辑关系,只有三类:推理p->q、无关、矛盾p!->q
自然语言推理最近相关工作(传统)
2005年专家系统,2015年用深度学习找两句话的表示,然后做分类:lstm去encode句子表示,也可以加attention等等。问题是不能并行计算,使得时间周期长。
传统第一类做法:
传统第二类做法
交互空间中的自然语言推理
《natural language inference over interaction space》数据集是SNLI和multiNLI
IIN:embedd–>encoder–>interaction做两句话的每个词之间的交互
extraction很像图像识别中的feature map,所以像用resnet做特征提取
交叉熵loss
《attention is all you need 》提出来一个muti-hot attention,就是对两句话做多次attention,就是说两组encoding之间有多个encoding weight。
更深的attention weight就可以包含更多信息。
模型
模型分为五个部分:output、feature提取、interaction、encoding、embedding
跟传统模型完全不一样
encoding layer
分为三个部分:两层highway和selfatt输出一期进入fusegate
encoding layer:
(fuse gate作用是将两者信息动态结合)
现加两层highway network,在此之上做一次self-attention,整合信息全局信息,就是不用lstm去组合context信息。
feature extraction layer
feature extraction layer用的densenet(cvpr2017),不同的是除去batch-norm,每个dense block有8层convolution layer,每个convolution layer的output都是20个chanel的feature map,再叠加到之前的feature map上
三组densenet block
通过element wise interaction得到
回顾一下densenet结构
densenet节省参数而又不损失准确率
实验
数据:SNLI、mulitiNLI、quora question pair
切除分析
做切除分析,每个切除分析都能加强对模型理解
交互空间中的其他应用
很多可以借鉴cv的地方,特定任务中有些好的神经网络结构会超过那些trick。如何融合数据集外的常识知识会变的非常常见的任务。
qa
可以用在句子的reranking、相似度