最近在读“Multi-Perspective Sentence Similarity Modeling with Convolution Neural Networks”这篇论文,该文通过CNN层对两个句子分别进行建模,然后添加一个句子相似性测量层来计算两个句子的相似度。首先可以看一下其模型的架构图方便有一个直观的理解:
可以看到一个句子首先被转化为嵌入矩阵[sentence_length, embed_size],然后输入卷积-池化层(这里论文中提出使用两种卷积方式+三中池化方式,如图所思)得到处理后的句子向量。为了计算两个句子之间的相似度,论文中提出了两种算法,分别应用于不同卷积层的输出结果计算其相似性。最终将得到的相似性向量输入全连接层得到相似性分数,与标签相比较。从而进行训练等。接下来就详细的看一下每一部分内容。
句子表示层
本文之所以成为Multi-Perspective的句子相似性建模就是因为其提出了两种卷积核+三种池化方法,从而可以从不同层面提取出句子的特征。如下图所示: