标签: Jd_Paperweekly
时间:2020.11.18
来源: ACL 2017
关键词:文本匹配,Alignment layer
1.背景及问题描述
文本匹配(Text Matching)是自然语言处理领域最经典的问题之一,也是搜索、QA、推荐等领域的基础研究课题。而短文本匹配,因为其特殊性,比如语义性缺失,句法缺失等,往往需要特殊的处理模型。而对齐机制(Alignment)是处理短文本的有效方案,今天介绍一篇很经典的基于Alignment的短文本匹配模型。ESIM不仅在模型开创性还是实用性上来说,都是一个很值得学习的佳作,毕竟此模型被公认为短文本匹配竞赛刷榜利器。
这篇文章是专门为NLI(自然语言推理)任务做的,即给定前提premise和假设hypothesis,要求判断两者的关系(1.不相干neural;2.冲突contradiction,即有矛盾,3.蕴含entailment,即能从p推断h或者两者表达相同的意思)。
2.已有的解决方案
在这篇文章之前的深度文本匹配模型,基本上就是基于简单的LSTM+attention的模型。往往具有很深的模型。
3.解决方案概述
现在来看,ESIM的网络并不复杂,层次结构也非常清晰。左半部分就是我们要讲的ESIM,右半部分的区别是编码器使用Tree-LSTM,可适用于语法分析任务。模型大概分为4层:
- 1.Input Encoding
编码层,使用词向量表示输入序列的token,然后对序列向量通过BiLSTM做编码,可认为是做一层特征提取,同时加入语境特征,也是NLP任务的一般配置。分别对Premise和Hypothesis进行编码:
- 2.Local Inference Modeling
往往两个句子之间的推理关系是通过一些关键词决定的,所以为了分析Premise和Hypothesis之间的关系,找到两句话之间有关系的部分是关键点。这些有关系的部分,可以称之为对其(alignment)部分,一般通过attention机制实现,来描述对彼此来说的重要部分。
模型的做法比较简单,计算Premise和Hypothesis之间的attention权重,就是直接将上层的结果做矩阵乘法:
然后用上面attention权重来做本地推理,以此获取Premise和Hypothesis的关系:
Premise的对其表征是用attention权重乘以Hypothesis向量,Hypothesis的对其表征同理使用ttention权重乘以Premise向量,也就是通过这样来引入对其机制,作者称之为Local Inference。
然后,在此基础上,再进行强化表示,分别对这两个值做差异性计算,作者使用了差值和点积(element-wise product),作者认为这样的操作有助于模型效果的提升:
- 3.Inference Composition
这一层就是对对和再使用BiLSTM来提取信息,然后分别进行MaxPooling和AvgPooling来做降维和特征提取,然后将四部分的结果concat在一起:
- 4.Prediction
最后预测层,把送入到全连接层,激活函数采用的是,得到的结果送到softmax层。
4.结果分析
作者主要就是在SNLI数据集上做了实验,达到了当时的SOTA。
5.创新点或贡献
- 这篇文章是第一个将对其机制引入文本匹配的模型,获得了非常好的效果。
6.个人思考
短文本匹配,对其机制和交互信息一般会是很好的策略。
但是其模型还是相对复杂,作者没做实验,但是预计推理时间不太高效,并且模型结果无法预存,只适合做精准匹配,不太容易做大规模匹配。