最近在实现一个文本检索式的问答机器人,技术核心是文本相似建模,于是对相关的深度学习方法应用进行了调研,这里做个基本的梳理。默认读者有信息检索的基础知识,所以没有细致的概念解释,如果发现错误还请各位旁友们及时指正。
应用&简单介绍
1. 基于深度学习的检索算法常见做法是,定义或者学习出一个静态的语义网络结构,它可以用来向量化query和documents,句向量模型(sen2vec、doc2vec)也可以理解成要输出这么一个网络结构。对所有query和doc进行向量化预计算,然后借助annoy这种向量近邻计算框架即可实现检索,当然排序阶段也可以拿来计算文本pair对的得分。
2. 具体检索算法区分有监督和无监督,『分词-->词向量-->求平均』就是一种最简单的无监督做法,有监督算法应用的数据对象多为搜索引擎的搜索点击日志数据,这是本文重点。
3. 文本匹配按层次可分为keyword-based matching和exical matching,或者称为local matchine和global matching,前者是文本序列的单元之间的相似,后者是文本表意上的相似。
4. 介绍算法那部分主要就输入数据格式、特征单元与特征表示、网络结构和损失函数进行展开。
5. 一种英文文本切分方法:Letter n-gram,以Letter-Tr