论文部分内容阅读
语义匹配在自然语言处理中有很多应用,包括问答系统、释义识别和文本蕴含等。孪生网络是计算语义匹配常用框架,它的特点是具有两个结构相同且共享权重的子网络。孪生网络的两个输入端同时接受一个文本信息,通过共享权重的子网络将这两个文本转化为向量,再使用某一种距离度量算法计算两个文本向量的距离。文本匹配面临几方面的难点,一是语义的多样性,表现在多词同义和一词多义;二是文本的结构性,相同数量的词汇按照不同顺序可以构成相同含义的句子,也可以表达出不同语义;三是目前现有知识对长文本表示困难,难以构建和认知长文本中层次信息;四是是否可以设计出更高效的语义匹配模型。深度学习的快速发展颠覆了语义匹配之前需要手工设计特征的时代,本文在孪生网络的基础上结合CNN、RNN和注意力机制设计出适用于不同场景的语义匹配模型。BERT作为通用预训练模型,又助力自然语言处理在多数场景下更进一步,本文在此基础上将孪生网络与BERT相结合,更好地处理了长文本匹配的问题。本文共提出了三种文本匹配算法模型,具体内容如下:(1)从如何更高效地进行语义匹配角度出发,利用SWEM设计了一种高效的语义匹配模型。SWEM是一个以词向量为基础、利用了池化技术的简单模型,该模块本身没有参数,利用该模块构建的孪生网络参数少,可以更快训练。实验结果表明,与以RNN为基础的孪生网络相比,基于SWEM的孪生网络参数量只有其1/3,训练速度却快了12倍,而两者实验效果基本一样。同时本章还对文本词序对模型的影响、语义匹配聚合方法对模型的影响做了进一步研究。(2)从如何更好地处理短文本匹配问题的角度出发,利用多头注意力机制和孪生网络设计了一种两阶段短文本匹配模型。根据句子对之间的关系,将句子对匹配分为两种情况,一种是判别句子对是否具有前后关系,一种是判别句子对是否具有对等关系。现有的模型在多数时候并不区分这两种情况,优点是目前模型中孪生网络结构与交互聚合模型已经充分考虑了两个句子间的差异与关联,缺点是过多的交互信息在语义相似度匹配中复杂性过高,容易过拟合。在这里,本章主要针对具有对等关系的句子对,提出独立训练句子对的比较与交互阶段、再融合的两阶段信息模型,并在四个中文相似度数据集上进行实验,实验结果表明了本章工作的有效性。(3)从如何更好地处理长文本匹配问题的角度出发,结合BERT和孪生网络的特点,设计了一种Pairwise方式长文本匹配模型。CNN、LSTM或者GRU由于难以记忆长距离信息,长文本匹配一直比较难以处理,Transfomer[8]的出现则改善了长文本匹配问题。BERT作为基于Transfomer的预训练模型,在多个自然语言处理任务中取得了最好成绩。本章利用BERT结合孪生网络,构建了长文本语义匹配模型。与直接利用BERT进行语义匹配相比,本文构建的模型效果好而且稳定。同时本文还比较了不同的预训练模型对该语义匹配算法的影响。本文所有实验数据都是基于中文数据集,包括4个短文本语义匹配数据集和一个长文本语义匹配数据集,实验结果表明本文设计的三个模型有效提高了现有模型的语义匹配效果。由于中文的分词与其他语言情况不同,所以本文设计的三个模型主要针对中文语义匹配,其他语言场景有待进一步研究。