Enhanced LSTM for Natural Language Inference(ESIM)为文本匹配模型,在之前的短文本匹配比赛中取得了不错的效果,故现对该模型进行一些总结。该模型综合利用了biLSTM和attention机制,将一个句子各单词与另一个句子各单词特征相关性进行表示,再进行差积分析,凸显了局部推理信息,可以说这是这个模型的一大亮点。原论文中还有编码以及推理合成部分都利用TreeLSTM替代biLSTM,鉴于效果不如biLSTM本文不做讨论,感兴趣的可以去查看原论文。
论文链接:https://arxiv.org/pdf/1609.06038.pdf
-
biLSTM编码
假设输入句a、句b,首先采用biLSTM分别对这两个句子进行编码。
a i ‾ = B i L S T M ( a , i ) b i ‾ = B i L S T M ( b , i ) \overline{a_{i}}=BiLSTM(a,i) \\ \overline{b_{i}}=BiLSTM(b,i) ai=BiLSTM(a,i)bi=BiLSTM(b,i)
a i ‾ \overline{a_{i}} ai为 将a再输入时间i的隐藏状态,也就是a句中i单词进行编码时的输出状态,b句也按此操作。此处利用双向LSTM模型在单词的上下文关联上会有更好的效果,单词所在的语境可以表现在编码后。 -
Local Inference Modeling
这个模块为该模型最大的创新点,主要在句子基础上表征了两句词之间的关系,并凸显了某一句单词对另一句各单词之间的产生的影响。
先采用点积计算两句间各单词的attention权重:
e i , j = a i ‾ T b j ‾ e_{i,j}=\overline{a_i}^T\overline{b_j} ei,j=aiTbj
然后对两句各单词之间进行交互性计算,可见该词与另一句子联系越大,则计算出的值也会越大:
a i ~ = ∑ j = 1 l b e x p ( e i , j ) ∑ k = 1 l b b j ‾ \tilde{a_i}=\sum^{l_b}_{j=1}\frac{exp(e_{i,j})}{\sum^{l_b}_{k=1}}\overline{b_j} ai~=∑