开篇
这里主要的内容来自庞亮博士的一篇综述性论文,后面会放出论文的参考地址。
摘要
深度文本匹配模型可以分为三类:
基于单语义文档表达的深度学习模型
基于单语义文档表达的深度学习模型主要思路是,首先将单个文本先表达成一个稠密向量(分布式表达),然后直接计算两个向量间的相似度作为文本间的匹配度。
基于多语义文档表达的深度学习模型
基于多语义的文档表达的深度学习模型认为单一粒度的向量来表示一段文本不够精细,需要多语义的建立表达,更早地让两段文本进行交互, 然后挖掘文本交互后的模式特征, 综合得到文本间的匹配度。
直接建模匹配模式的深度学习模型
而直接建模匹配模式的深度学习模型则认为匹配问题需要更精细的建模匹配的模式
文本匹配主要面临的挑战
这里说白了就是我们模型需要克服和解决的一些困难,解决实际问题的时候我们往往需要面对的也是这些问题。
- 词语匹配的多元性
不同的词语可能表示的是同一个语义,比如同义词, “荷花” 、“莲花”、“水芙蓉”、“芙蕖”,它们表示的都是同一种植物;同理一个相同的词在不同的语境下会有不同的语义,比如“苹果”既可以是一种水果,也可以是一家公司, 亦可以是一个品牌。 - 短语匹配的结构性
多个词语可以按照一定的结构组合成短语,匹配两个短语需要考虑短语的结构信息。比如“机器学习”和“机器学习”是两个词顺序匹配的,而“机器学习”和“学习机器” 只有词语是匹配的,而顺序是打乱的。这两种情况的匹配程度是不一样的。 - 文本匹配的层次性
文本是以层次化的方式组织起来的,词语组成短语,短语组成句子,句子组成段落,段落组成篇章。这样一种特性使得我们在做文本匹配的时候需要考虑不同层次的匹配信息,按照层次的方式组织我们的文本匹配信息。
传统文本匹配依赖于大量的人工特征,泛化能力比较差,深度文本匹配可以自动提取特征,层次结构也更加好。
卷积神经网络和循环神经网络
卷积神经网络的卷积核的结构能够建模局部化信息,并有平移不变性的特性,堆叠起来的卷积层可以很方便地模拟语言层次化的特性。而循环神经网络更偏向于序列化建模,类似人类阅读文本的方式每次将历史的信息压缩到一个向量,并作用于后面的计算,符合建模文本的序列性。
基于单语义文档表达的深度学习模型
两个基本问题:如果做文档的语义表示和如何计算语义表示的相似性