一种问答方法、装置及电子设备与流程

文档序号:20164758发布日期:2020-03-24 21:22阅读:130来源:国知局
一种问答方法、装置及电子设备与流程

本发明属于智能技术领域,尤其涉及一种问答方法、装置及电子设备。



背景技术:

语音交互,是一种人机交互方式。区别于传统的图形界面交互,语音交互可以使人通过自然地说话和计算机完成信息交互和指令传达,就像平时人和人之间用自然语言交流一样。语音备忘系统,是指用户可以使用语音交互的方式,让智能交互设备记录住具体的备忘录内容。同时,也可以通过语音搜索的方式,得到自身之前已经存储的各种备忘录信息。

现有技术的语音交互系统包括语音识别单元和检索单元。由于语音识别单元是将语音信号转化为文字,因此语音识别过程中不可避免地会发生语音识别错误,例如人名“刘德深”被语音识别单元识别为“刘得胜”等。另外,由于检索单元在搜索备忘录时考虑了备忘录的更新时间,即检索单元永远返回最新插入的备忘录且只能检索到最新的一条备忘录;因此当用户记录越来越多的备忘录时,就不能有效地筛选到最匹配的那条备忘录。



技术实现要素:

有鉴于此,本发明实施例提供一种问答方法、装置及电子设备,能够在提高应答速度的同时提高应答的准确率。

为实现上述目的,根据本发明实施例第一方面,提供一种应答方法。

本发明实施例的一种问答方法,包括:获取查询语信息;从问答库中选取与所述查询语信息对应的多个候选备忘录信息;对所述多个候选备忘录信息进行筛选,得到准备忘录信息;反馈所述准备忘录信息。

可选的,所述从问答库中选取与所述查询语信息对应的多个候选备忘录信息,包括:通过solr搜索引擎从问答库中选取与所述查询语信息对应的若干个预选备忘录信息;计算所述若干个预选备忘录信息中每个预选备忘录信息的solr得分;从所述若干个预选备忘录信息中按照solr得分从高到低的方式选取特定数量的预选备忘录作为候选备忘录信息。

可选的,所述对所述多个候选备忘录信息进行筛选,得到准备忘录信息,包括:计算所述多个候选备忘录信息中每个候选备忘录信息的得分;将得分最高的候选备忘录信息确定为准备忘录信息。

可选的,所述计算所述多个候选备忘录信息中每个候选备忘录信息的得分,包括:通过solr算法计算所述多个候选备忘录信息中每个候选备忘录信息的solr得分;和/或,通过编辑距离算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的编辑距离得分;和/或,通过tf-idf算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的tf-idf得分。

可选的,所述将得分最高的候选备忘录信息确定为准备忘录信息,包括:对所述多个候选备忘录信息中的每个所述候选备忘录信息的solr得分、编辑距离得分和tf-idf得分进行线性加权相加,得到每个所述候选备忘录信息的总得分;将总得分最高的候选备忘录信息作为准备忘录信息。

可选的,所述反馈所述准备忘录信息,包括:获取所述准备忘录信息中与所述查询语信息匹配的子信息;反馈所获取的子信息对应的应答语。

为实现上述目的,根据本发明实施例的第二方面,还提供一种问答装置。

本发明实施例的一种问答装置包括:获取模块,用于获取查询语信息;选取模块,用于从问答库中选取与所述查询语信息对应的多个候选备忘录信息;筛选模块,用于对所述多个候选备忘录信息进行筛选,得到准备忘录信息;反馈模块,用于反馈所述准备忘录信息。

可选的,所述选取模块包括:预选单元,用于通过solr搜索引擎从问答库中选取与所述查询语信息对应的若干个预选备忘录信息;solr得分单元,用于计算所述若干个预选备忘录信息中每个预选备忘录信息的solr得分;选取单元,用于从所述若干个预选备忘录信息中按照solr得分从高到低的方式选取特定数量的预选备忘录信息作为候选备忘录信息。

可选的,所述筛选模块包括:计算得分单元,用于计算所述多个候选备忘录信息中每个候选备忘录信息的得分;筛选单元,用于将得分最高的候选备忘录信息作为准备忘录信息。

可选的,所述计算得分单元包括:solr得分子单元,用于通过solr算法计算所述多个候选备忘录信息中每个候选备忘录信息的solr得分;和/或,编辑距离得分子单元,用于通过编辑距离算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的编辑距离得分;和/或,tf-idf得分子单元,用于通过tf-idf算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的tf-idf得分。

可选的,所述筛选单元包括:线性计算子单元,用于对所述多个候选备忘录信息中每个所述候选备忘录信息的solr得分、编辑距离得分和tf-idf得分进行线性加权相加,得到每个所述候选备忘录信息的总得分;选取子单元,用于将总得分最高的候选备忘录信息作为准备忘录信息。

可选的,所述反馈模块包括:获取单元,用于获取所述准备忘录信息中与所述查询语信息匹配的子信息;反馈单元,用于反馈所获取的子信息对应的应答语。

为实现上述目的,根据本发明实施例第三方面,还提供一种电子设备。

本发明实施例的一种电子设备包括:一个或多个处理器;存储装器,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如第一方面所述的问答方法。

为实现上述目的,根据本发明实施例的第四方面,还提供一种计算机可读介质。

本发明实施例的一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的一种问答方法。

上述发明中的一个实施例具有如下优点或有益效果:通过获取查询语信息,从问答库中选取与查询语信息对应的多个候选备忘录信息,并利用solr算法、和/或编辑距离算法、和/或tf-idf算法计算每个候选备忘录的得分,而后从多个候选备忘录信息中选取得分最高的候选备忘录信息作为准备忘录信息,反馈准备忘录信息;从而提高了问答过程中筛选备忘录信息的准确率,进而提高了问答的准确率。

上述的非惯用的可选方式所具有的进一步的效果将在下文结合具体实施方式加以说明。

附图说明

附图用于更好地理解本发明,不构成对本发明的不当限定。其中:在附图中,相同或对应的标号表示相同或对应的部分。

图1为本发明一实施例的问答方法的流程图;

图2为本发明再一实施例的问答方法的流程图;

图3为本发明一实施例的问答装置的示意图;

图4为本发明实施例可以应用于其中的示例性系统架构图;

图5是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。

具体实施方式

以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。

图1为本发明一实施例的问答方法的流程图。如图1所示,本发明实施例的问答方法包括:

s101:获取查询语信息;

具体地,查询语信息为“我奶奶的生日是哪天?”。查询语信息是通过手动打字的方式或者通过语音记录的方式输入问答系统;若查询语信息是通过语音记录的方式输入问答系统,则在问答系统内会自动转换成文字的形式。

s102:从问答库中选取与所述查询语信息对应的多个候选备忘录信息;

示例性地,通过solr搜索引擎从问答库中选取与所述查询语信息对应的若干个预选备忘录信息;计算所述若干个预选备忘录信息中每个预选备忘录信息的solr得分;从所述若干个预选备忘录信息中按照solr得分从高到低的方式选取特定数量的预选备忘录作为候选备忘录信息。

在这里,特定数量是指候选备忘录信息的数量不超过预设阈值,其中预设阈值可以根据实际需求进行设定。

具体地,候选备忘录信息数量的预设阈值为50条;通过solr搜索得到与查询语信息“我奶奶的生日是哪天?”对应的预选备忘录信息的数量为70条;按照solr得分从高到低的方式从70条预选备忘录信息中最多只能选取50条预选备忘录信息作为候选备忘录信息。

s103:对所述多个候选备忘录信息进行筛选,得到准备忘录信息;

示例性的,计算所述多个候选备忘录信息中每个候选备忘录信息的得分;将得分最高的候选备忘录信息确定为准备忘录信息。

计算所述多个候选备忘录信息中每个候选备忘录信息的得分可以采用如下方式:通过solr算法计算所述多个候选备忘录信息中每个候选备忘录信息的solr得分;和/或,通过编辑距离算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的编辑距离得分;和/或,通过tf-idf算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的tf-idf得分;将得分最高的候选备忘录信息确定为准备忘录信息。

具体地,通过solr算法、编辑距离算法和tf-idf算法分别计算所述多个候选备忘录信息中每个候选备忘录信息的得分,对所述多个候选备忘录信息中的每个所述候选备忘录信息的solr得分、编辑距离得分和tf-idf得分进行线性加权相加,得到每个所述候选备忘录信息的总得分;经过筛选获得总得分最高的候选备忘录信息为“帮我记下我奶奶的生日是8月7日”;将该候选备忘录信息作为与查询语信息“我奶奶的生日是哪天?”匹配的准备忘录信息。

应理解,本发明实施例中对于候选备忘录信息得分的计算不局限于上述算法,还可以是其他算法,只要能提高问答过程中筛选备忘录信息的准确率即可。

s104:反馈准备忘录信息。

应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在的逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

本发明实施例通过获取查询语信息,并从问答库中选取与查询语信息对应的多个候选备忘录信息,而后对多个候选备忘录信息进行筛选,得到准备忘录信息,反馈准备忘录信息;从而提高了问答过程中筛选备忘录信息的准确率,进而提高了问答的准确率。

图2为本发明再一实施例的问答方法的流程图。如图2所示,本发明实施例的问答方法包括:

s201:获取查询语信息;

具体地,查询语信息为“小王的老家是哪里?”。

s202:通过solr搜索引擎从问答库中选取与查询语信息对应的若干个预选备忘录信息;

具体地,通过solr搜索引擎得到3条预选备忘录信息。

s203:计算若干个预选备忘录信息中每个预选备忘录信息的solr得分;

s204:从若干个预选备忘录信息中按照solr得分从高到低的方式选取特定数量的预选备忘录作为候选备忘录信息;

具体地,候选备忘录信息数量的预设阈值为10条,由于预选备忘录信息的数量小于预设阈值,因此将3条预选备忘录信息均作为候选备忘录信息。

s205:计算所述多个候选备忘录信息中每个候选备忘录信息的得分;

示例性地,通过solr算法计算所述多个候选备忘录信息中每个候选备忘录信息的solr得分,和通过编辑距离算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的编辑距离得分,以及通过tf-idf算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的tf-idf得分。

具体地,编辑距离算法是指一个字符串至少需要经过多少次处理才能变成另一个字符串,例如,小王名字拼音为“xiaowang”,小李名字拼音为“xiaoli”,小李名字转换成小王,拼音需要变化(增加、删除或修改)4个字母,因此“小王”和“小李”两者编辑距离为4。

tf-idf算法是指把每个词的词频逆文档频率数值作为向量每个元素,表示成整个句子向量,然后计算余弦相似度。因为这个任务的备忘录信息一般不是很长,80%在十个字以内,所以idf对此任务的贡献非常大。

s206:将得分最高的候选备忘录信息确定为准备忘录信息。

示例性地,对所述多个候选备忘录信息中的每个所述候选备忘录信息的solr得分、编辑距离得分和tf-idf得分进行线性加权相加,得到每个所述候选备忘录信息的总得分;将总得分最高的候选备忘录信息作为准备忘录信息;其中,tf-idf得分的权重为0.8、编辑距离得分的权重为0.1,solr得分的权重为0.1。

具体地,每个候选备忘录信息的总得分计算公式如下所示:

候选备忘录信息的总得分=0.1乘以solr得分+0.1乘以编辑距离得分+0.8乘以tf-idf得分。经过计算可知,由于候选备忘录信息“小王的老家是山东”的总得分最高,因此将候选备忘录信息“小王的老家是山东”作为准备忘录信息。

s207:获取所述准备忘录信息中与所述查询语信息匹配的子信息;

s208:反馈所获取的子信息对应的应答语。

具体地,查询语信息为“小王的老家是哪里?”,准备忘录信息为“小王的老家是山东”,准备忘录信息中与查询语信息匹配中的子信息为“山东”。系统获取到子信息后将子信息通过文字或语音的方式反馈给用户。

应理解,tf-idf得分的权重、编辑距离得分的权重和solr得分的权重不局限于本发明实施例中给出的数值,还可以是其他数值。

还应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在的逻辑确定,而不应对本发明实施例的实施过程构成任何限定。

本发明实施例通过从问答库中选取与查询语信息对应的多个候选备忘录信息,并通过solr算法、编辑距离算法和tf-idf算法计算多个候选备忘录信息中的每个候选备忘录信息的总得分,而后将总得分最高的候选备忘录信息作为准备忘录信息,反馈准备忘录信息;从而提高了备忘录信息筛选的准确率,准确率高达94%。

如图3所示,为本发明一实施例的问答装置的示意图。所述的问答装置300包括:获取模块301,用于获取查询语信息;选取模块302,用于从问答库中选取与所述查询语信息对应的多个候选备忘录信息;筛选模块303,用于对所述多个候选备忘录信息进行筛选,得到准备忘录信息;反馈模块304,用于反馈所述准备忘录信息。

在可选的实施例中,所述选取模块包括:预选单元,用于通过solr搜索引擎从问答库中选取与所述查询语信息对应的若干个预选备忘录信息;solr得分单元,用于计算所述若干个预选备忘录信息中每个预选备忘录信息的solr得分;选取单元,用于从所述若干个预选备忘录信息中按照solr得分从高到低的方式选取特定数量的预选备忘录信息作为候选备忘录信息。

在可选的实施例中,所述筛选模块包括:计算得分单元,用于计算所述多个候选备忘录信息中每个候选备忘录信息的得分;筛选单元,用于将得分最高的候选备忘录信息作为准备忘录信息。

在可选的实施例中,所述计算得分单元包括:solr得分子单元,用于通过solr算法计算所述多个候选备忘录信息中每个候选备忘录信息的solr得分;和/或,编辑距离得分子单元,用于通过编辑距离算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的编辑距离得分;和/或,tf-idf得分子单元,用于通过tf-idf算法计算所述多个候选备忘录信息中每个候选备忘录信息与所述查询语信息之间的tf-idf得分。

在可选的实施例中,所述筛选单元包括:线性计算子单元,用于对所述多个候选备忘录信息中每个所述候选备忘录信息的solr得分、编辑距离得分和tf-idf得分进行线性加权相加,得到每个所述候选备忘录信息的总得分;选取子单元,用于将总得分最高的候选备忘录信息作为准备忘录信息。

在可选的实施例中,所述反馈模块包括:获取单元,用于获取所述准备忘录信息中与所述查询语信息匹配的子信息;反馈单元,用于反馈所获取的子信息对应的应答语。

图4为本发明实施例可以应用于其中的示例性系统架构图。

如图4所示,系统架构400可以包括终端设备401、402、403,网络404和服务器405。网络404用以在终端设备401、402、403和服务器405之间提供通信链路的介质。网络404可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。

用户可以使用终端设备401、402、403通过网络404与服务器405交互,以接收或发送消息等。终端设备401、402、403上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。

终端设备401、402、403可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。

服务器405可以是提供各种服务的服务器,例如对用户利用终端设备401、402、403所产生的点击事件提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的点击数据、文本内容等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。

需要说明的是,本申请实施例所提供的问答方法一般由服务器405执行,相应地,问答装置一般设置于服务器405中。

应该理解,图4中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。

根据本发明的实施例,本发明还提供了一种电子设备和一种计算机可读介质。

本发明的电子设备包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现本发明实施例的一种问答方法。

本发明的计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现本发明实施例的一种问答方法。

下面参考图5,其示出了适于用来实现实施例的终端设备或服务器的计算机系统的结构示意图。图5示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。

如图5所示,计算机系统500包括中央处理单元(cpu)501,其可以根据存储在只读存储器(rom)502中的程序或者从存储部分508加载到随机访问存储器(ram)503中的程序而执行各种适当的动作和处理。在ram503中,还存储有系统500操作所需的各种程序和数据。cpu501、rom502以及ram503通过总线504彼此相连。输入/输出(i/o)接口505也连接至总线504。以下部件连接至i/o接口505:包括键盘、鼠标等的输入部分506;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分507;包括硬盘等的存储部分508;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分509。通信部分509经由诸如因特网的网络执行通信处理。驱动器510也根据需要连接至i/o接口505。可拆卸介质511,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器510上,以便于从其上读出的计算机程序根据需要被安装入存储部分508。

特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分509从网络上被下载和安装,和/或从可拆卸介质511被安装。在该计算机程序被中央处理单元(cpu)501执行时,执行本发明的系统中限定的上述功能。

需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、系统或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储序的有形介质,该程序可以被指令执行系统、系统或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、系统或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、rf等等,或者上述的任意合适的组合。

附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。

描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括发送模块、获取模块、确定模块和第一处理模块。其中,这些模块的名称在某种情况下并不构成对该单元本身的限定,例如,发送模块还可以被描述为“向所连接的服务端发送图片获取请求的模块”。

作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:获取查询语信息;从问答库中选取与所述查询语信息对应的多个候选备忘录信息;对所述多个候选备忘录信息进行筛选,得到准备忘录信息;反馈所述准备忘录信息。从以上描述可以看出,本发明实施例通过获取查询语信息,并从问答库中选取与查询语信息对应的多个候选备忘录信息,而后通过solr算法、编辑距离算法和tf-idf算法计算多个候选备忘录信息中的每个候选备忘录信息的总得分,将总得分最高的候选备忘录信息作为准备忘录信息,反馈准备忘录信息;从而提高了备忘录信息筛选的准确率,准确率高达94%。

上述产品可执行本发明实施例所提供的问答方法,具备执行问答方法相应的功能模块和有益效果。未在本实施例中详尽描述的技术细节,可参见本发明实施例所提供的方法。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

以上所述,仅为本发明的具体实施路径,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1