一种基于知识图谱的智能问答引擎及其实现方法
文献发布时间:2023-06-19 10:16:30
技术领域
本公开涉及智能问答,尤其涉及一种基于知识图谱的智能问答引擎及其实现方法。
背景技术
随着搜索引擎给人们生活带来的便利,用户对于信息检索的需求量越来越大。现今有名的搜索引擎Google、Yahoo、必应、维基百科等,只需要用户输入想要搜索的内容,就能马上搜索出相关的网页信息。但当今是一个网络大爆发的时代,每天的网络数据都是爆发式的增长,这就暴露出了这些搜索引擎的一些短处,当用户在搜索的时候,经常能搜索到过多冗余的数据,这些搜索引擎会返回给用户太多其实并不是用户所需要的东西,难以快速满足用户的需求。其次,现在的搜索引擎是通过关键词来进行检索的,这就导致了所搜索的结果太过于多元化,检索的范围仅仅限于完全匹配的关键词,没能做到类似同义词的搜索和浅层语义分析,这样的信息检索方式越来越难以满足用户的需求。
发明内容
为了解决上述技术问题的至少一个,本公开提供了一种基于知识图谱的智能问答引擎及其实现方法。
本公开的技术方案是这样实现的:
一种基于知识图谱的智能问答引擎实现方法,包括:
基于业务流程数据和待搜索的问句,调用所需类型的问答引擎和所需类型的问答组件,其中业务流程数据包括客户预先配置好的所用于搜索的数据库和问题答案数据;
组装业务流程数据,并将所述业务流程数据植入到调用的所述问答引擎中;
通过调用的所述问答引擎从与所述调用的问答组件搭配的缓存中匹配所述问句的答案;
若匹配到,则提取相应的问答数据;
若未匹配到,则对所述问句进行分析,获取问答数据。
进一步地,所述对所述问句进行分析,获取问答数据,包括:
基于自然语言分析技术,解析所述问句的词性,并通过语义解析获取所述问句的含义;
进一步地,所述基于自然语言分析技术,解析所述问句的词性,包括:用词性标注及词性-词义聚类解析所述问句的词性。
基于所述问句的含义,调度问答组件的数据库,并匹配所述问句的答案。
进一步地,所述基于所述业务流程数据和待搜索的问句,调用所需类型的问答引擎和所需类型的问答组件,包括:
基于所述业务流程数据和输入的问句,定义问答引擎的类型;
基于问答引擎的类型选择所需的问答组件;
调用的所述问答引擎加载所述业务数流程数据,并调用所需类型的问答组件。
进一步地,所述问答引擎的类型包括:单问答、多问答组合、自定义问答组合。
进一步地,所述问答组件的类型包括问答对、句法模板、词性模板、暴力组合、基于知识图谱问答、多轮问答、阅读理解、NLSQL。
进一步地,所述对所述问句进行分析,获取问答数据之后,将所获取的问句答案加入所述缓存中。
一种用于基于知识图谱的智能问答引擎,包括:
问答组件模块,包括多种类型的问答组件,用于对问句进行解析,获取相关的问答数据;
问答引擎模块,包括多种类型的问答引擎,用于调度所需的问答组件;
应用服务模块,用于启动问答功能,对业务流程数据进行初始化,将所述业务流程数据植入到所述问答引擎中。
进一步地,所述问答引擎的类型包括:单问答、多问答组合、自定义问答组合。
进一步地,所述问答组件的类型包括问答对、句法模板、词性模板、暴力组合、基于知识图谱问答、多轮问答、阅读理解、NLSQL。
附图说明
附图示出了本公开的示例性实施方式,并与其说明一起用于解释本公开的原理,其中包括了这些附图以提供对本公开的进一步理解,并且附图包括在本说明书中并构成本说明书的一部分。
图1是本公开的问答引擎的工作流程示意图;
具体实施方式
下面结合附图和实施方式对本公开作进一步的详细说明。可以理解的是,此处所描述的具体实施方式仅用于解释相关内容,而非对本公开的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本公开相关的部分。
需要说明的是,在不冲突的情况下,本公开中的实施方式及实施方式中的特征可以相互组合。下面将参考附图并结合实施方式来详细说明本公开。
需要说明的是,文中的步骤编号,仅为了方便具体实施例的解释,不作为限定步骤执行先后顺序的作用。本实施例提供的方法可以由相关的服务器执行,且下文均以服务器或计算机等电子设备作为执行主体为例进行说明。
实施例一
参照图1,一种基于知识图谱的智能问答引擎实现方法,包括:
基于业务流程数据和待搜索的问句,调用所需类型的问答引擎和所需类型的问答组件,用户通过配置问答引擎和问答组件的匹配规则,从而使得问答引擎调用用户指定的问答组件;
对业务流程数据进行初始化,包括:组装业务流程数据,并将所述业务流程数据植入到调用的所述问答引擎中,用户批量地导入业务范围内的问答数据、问句、答案、模板等;
通过调用的所述问答引擎从与所述调用的问答组件搭配的缓存中匹配所述问句的答案;
若匹配到,则提取相应的问答数据;
若未匹配到,则对所述问句进行分析,获取问答数据。
对问句进行分析,获取问答数据之后,将所获取的问句答案加入缓存中,以便于下次调用。
作为本实施例的优选实施方式,对问句进行分析,获取问答数据,包括:
基于自然语言分析技术,用词性标注及词性/词义聚类解析问句的词性,并通过语义解析获取问句的含义;
基于问句的含义,调度问答组件的数据库,并匹配问句的答案。
本实施例中,在初始化阶段,用户先组装、植入业务流程数据,以等待后续问答引擎的调度;其后,根据问答引用的需求,确定问答引擎的类型,问答引擎类型的确定才能进一步确定对问答组件的调度需求;问答引擎的类型包括:单问答、多问答组合、自定义问答组合。在确定问答引擎类型之后,问答引擎再通过问答引擎上下文算法,调用所需的问答组件,并进行问答搜索,问答组件的类型包括:问答对、句法模板、词性模板、暴力组合、基于知识图谱问答、多轮问答、阅读理解、NLSQL(Nature Language SQL)。在问答搜索过程中,系统会先到缓存区查询是否有该问题的相关问题答案,如果有,则从缓存里取出数据返回至应用前端,将问答数据呈现给用户,如果缓存区里无该相关问题的信息,再通过相关的问答搜索功能去数据库检索该问题的答案,适配问答结果,同时将该问题和答案返回给应用前端并加入缓存。
作为本实施例的优选实施方式,基于业务流程数据和待搜索的问句,调用所需类型的问答引擎和所需类型的问答组件,包括:
基于业务流程数据和输入的问句,定义问答引擎的类型;
基于问答引擎的类型选择所需的问答组件;其中问答引擎类型和所选择的问答的组件之间的匹配规则,最初是通过用户在后台来进行手动配置,到了后期运行次数足够多了之后,该问答引擎也能根据先例自动选择匹配规则;
调用的问答引擎加载业务数流程数据,并调用所需类型的问答组件。本实施例通过将各种类型的问答组件进行集成,根据业务流程数据和待搜索的问句,调用所需的问答引擎,并利用该问答引擎调用相应的问答组件,实现统一调度,能够根据问答的类型,自动调用所需的问答组件,从而进行问答流程功能和适配问答结果。
作为优选的实施方式,本实施例的问答组件集成了问答对,问答对通过事先定义好多对问题和答案,形成一个个问答对存在于数据库里。当用户搜索一个问题时,通过精确检索、模糊检索或近似匹配到相对因或者有关联的问题,就会返回该问答对的答案。提高的精确度和问句答案的关联性,同时其检索的结果也只限定于在数据库内,这就使得结果变得不杂乱冗余。
作为优选的实施方式,本实施例的问答组件集成了知识图谱问答,知识图谱通过把非结构化、半结构化、结构化的数据抽取出来组成一种基于图的数据格式,由点和边组成一个庞大的关系网络图,这大大的优化了搜索性能。通过知识图谱问答可以解决传统搜索的问题。同时,结合自然语言处理技术,通过近似匹配、语义理解、关系判断等,在数据库中检索出相似度最高的数据。
作为优选的实施方式,本实施例的问答组件集成了NLSQL,NLSQL又称为自然语言数据库技术,可以将用户输入的自然语言转为可执行的SQL语句。将自然语言转化为SQL语句的目的是充当数据库的智能接口,降低数据库查询的门槛,让非专业用户在不需要学习和掌握数据库编程语言的前提下自由地按需查询数据,比如说话就行。从技术范畴来看,NLSQL其本质是将用户的自然语言语句转化为计算机可读懂、可运行、符合计算机规则的语义表示,需要计算机理解自然语言语句,并生成准确表达语句语义的可执行程序式语言。
本实施例通过问答引擎的调度,调用用户的业务数据、所需的引擎类型和问答组件来实现问答功能;同时再通过语义识别、语义解析来理解问题,调度数据库并且返回搜索结果,其中,利用问答引擎作为图谱问答、问答对搜索、NLSQL等问答组件之间相互调用的枢纽,让图谱搜索和问答搜索的操作更加可视化、直接化和简便化,同时也更加高效。
实施例二
一种用于基于知识图谱的智能问答引擎,包括:
问答组件模块,包括多种类型的问答组件,用于对问句进行解析,获取相关的问答数据;问答组件的类型包括问答对、句法模板、词性模板、暴力组合、NLP KBQA、多轮问答、阅读理解、NLSQL。
问答引擎模块,包括多种类型的问答引擎,用于调度所需的问答组件;问答引擎的类型包括:单问答、多问答组合、自定义问答组合。
应用服务模块,用于启动问答功能,对业务流程数据进行初始化,将业务流程数据植入到问答引擎中。
本实施例的原理和效果与实施例一中的一致,本实施例不再重复描述。
本领域的技术人员应当理解,上述实施方式仅仅是为了清楚地说明本公开,而并非是对本公开的范围进行限定。对于所属领域的技术人员而言,在上述公开的基础上还可以做出其它变化或变型,并且这些变化或变型仍处于本公开的范围内。
- 一种基于知识图谱的智能问答引擎及其实现方法
- 一种面向5W问答的基于数据图谱、信息图谱、知识图谱和智慧图谱的推荐引擎设计方法