短文本匹配&自然语言推理模型--ESIM
论文链接:http://tongtianta.site/paper/11096
一、 原理
ESIM,简称 “Enhanced LSTM for Natural Language Inference“。顾名思义,一种专为自然语言推断而生的加强版 LSTM。至于它是如何加强 LSTM,听我细细道来。
Unlike the previous top models that use very complicated network
architectures, we first demonstrate that carefully designing sequential inference
models based on chain LSTMs can outperform all previous models.
Based on this, we further show that by explicitly considering recursive
architectures in both local inference modeling and inference composition,
we achieve additional improvement.
上面一段话摘选自ESIM论文的摘要,总结来说,ESIM 能比其他短文本分类算法牛逼主要在于两点:
- 精细的设计序列式的推断结构。
- 考虑局部推断和全局推断。
作者主要是用句子间的注意力机制(intra-sentence attention),来实现局部的推断,进一步实现全局的推断
1 模型输入编码层
没啥可说的,就是输入两句话分别接 embeding + BiLSTM
2 local inference modeling(局部推理建模)
local inference 之前需要将两句话进行 alignment,这里是使用 soft_align_attention。
怎么做呢,首先计算两个句子 word 之间的相似度,得到2维的相似度矩阵,
然后才进行两句话的 local inference。用之前得到的相似度矩阵,结合 a,b 两句话,互相生成彼此相似性加权后的句子,维度保持不变。
在 local inference 之后,进行 Enhancement of local inference information。这里的 enhancement 就是计算 a 和 align 之后的 a 的差和点积, 体现了一种差异性吧,更利用后面的学习.
3 inference composition
最后一步了,比较简单。
再一次用 BiLSTM 提前上下文信息,同时使用 MaxPooling 和 AvgPooling 进行池化操作, 最后接一个全连接层。这里倒是比较传统。没啥可说的。