栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

基于ElasticSearch+文本相似度模型的检索式智能问答方案

基于ElasticSearch+文本相似度模型的检索式智能问答方案

目录

背景

为什么只用ES相似度匹配不行

解决同一意图不同表达的问题

 “粗筛”+“精选”的意图匹配方案

背景

在对话系统领域,检索式对话系统一直是工业界的偏爱。而如何“检索”,或者说如何对用户query(输入的问题)进行意图匹配,则是能否做好检索式对话系统的关键所在。

笔者曾经简单的基于ElasticSearch的相似度匹配进行过实现(详见:基于ElasticSearch的检索式智能问答方案_chenxy02的博客-CSDN博客 )。后面又引入深度学习模型——“文本相似度识别”提升了系统的意图匹配机制,于是便有了这篇博客。

为什么只用ES相似度匹配不行

ES(ElasticSearch)所提供的相似度机制本质上是一种基于词频、基于规则的相似度计算(详见:ElasticSearch相似度匹配及分词器选择_chenxy02的博客-CSDN博客)。其优点是:快,非常快。但用ES相似度计算来做对话系统的意图匹配,存在什么缺点呢?

“深圳的市花是什么”&“鹏城的市花是啥” ,这两句话我们明显能看得出来 表达的是一个意图。但如果是仅用ES相似度识别实现的问答机器人 则是无法看出来的的。

解决同一意图不同表达的问题

虽然现在NLP技术的发展,还很难让机器的文字理解达人类的水平。不过随着Word2Vec、bert等NLP预训练框架的出世,NLP技术也是取得了一些不错的成就,比如:能把“北京”、“首都”这两个词,当做有接近意思的字;甚至在一定程度上 能识别出表达同一意图的不同句子。(关于"语言模型"、"词/句向量"的知识,可参见:自然语言处理中的预训练技术发展史_chenxy02的博客-CSDN博客)

 “粗筛”+“精选”的意图匹配方案

基于上述的情况,笔者得到这样一个意图匹配方案—— “粗筛”+“精选”(详见下面流程图)。

先经过一个“粗筛”的模块,这个模块一般将用户当前轮的query与语料库里query进行快速匹配,得到几十上百个候选意图,完成第一轮的匹配。ES信息检索模型BM25 便是一个不错做“粗筛”模块的选择。

接下来便是使用深度学习模型,在得到的候选意图中进行精选。将选择结果对应的答案,返回给用户。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/389460.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号