首页> 中国专利> 一种答复反馈方法、答复反馈装置及智能设备

一种答复反馈方法、答复反馈装置及智能设备

摘要

本申请公开了一种答复反馈方法、装置、智能终端及计算机可读存储介质,其中该方法包括:接收输入语句;将输入语句输入至已训练的第一检索模型及第二检索模型中,得到第一检索模型所输出的第一语句集合及第二检索模型所输出的第二语句集合;对第一语句集合与第二语句集合取并集得到第三语句集合,并记第三语句集合中所包含的语句为第三语句;基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值;将各个第三语句的一个以上特征值输入至预设的排序模型中,得到各个第三语句的总得分;基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复。通过本申请方案,可实现检索精度与检索时间的平衡,提升答复的准确性及反馈效率。

著录项

  • 公开/公告号CN113127612A

    专利类型发明专利

  • 公开/公告日2021-07-16

    原文格式PDF

  • 申请/专利权人 深圳市优必选科技股份有限公司;

    申请/专利号CN201911423796.0

  • 发明设计人 熊为星;熊友军;

    申请日2019-12-31

  • 分类号G06F16/332(20190101);G06F16/335(20190101);G06F40/30(20200101);G06F40/289(20200101);

  • 代理机构44414 深圳中一联合知识产权代理有限公司;

  • 代理人李木燕

  • 地址 518000 广东省深圳市南山区学苑大道1001号南山智园C1栋16、22楼

  • 入库时间 2023-06-19 11:52:33

说明书

技术领域

本申请属于人工智能技术领域,尤其涉及一种答复反馈方法、答复反馈装置、智能设备及计算机可读存储介质。

背景技术

当前,智能客服等智能设备可以接收用户的输入问题,并基于该输入问题在FAQ语料库中进行检索,以向用户反馈该输入问题的答复。上述检索有两种较为常见的方式,一种是采用单模型的检索方式,另一种是采用类似BERT(Bidirectional EncoderRepresentations from Transformers)这种大模型的检索方式;然而,上述采用单模型的检索方式通常难以满足业务的精度需要,而采用类似BERT这种大模型的检索方式无法一次性对FAQ语料库完成全量语料检索,需要小批次的进行多次语料检索,这导致其检索时间较长,无法完成工程化的目标。基于此,当前的检索方式难以实现检索精度与检索时间的平衡。

发明内容

有鉴于此,本申请提供了一种答复反馈方法、答复反馈装置、智能设备及计算机可读存储介质,可实现检索精度与检索时间的平衡,提升答复的准确性及反馈效率。

本申请的第一方面提供了一种答复反馈方法,包括:

接收输入语句;

将上述输入语句输入至已训练的第一检索模型及第二检索模型中,得到上述第一检索模型所输出的第一语句集合及上述第二检索模型所输出的第二语句集合,其中,所述第一检索模型用于基于所述输入语句的字词在预设的语料库中检索与所述输入语句相匹配的语句,所述第二检索模型用于基于所述输入语句的语义在所述语料库中检索与所述输入语句相匹配的语句,所述第一语句集合所包含的第一语句的数量与所述第二语句集合所包含的第二语句的数量相同;

对上述第一语句集合与上述第二语句集合取并集,得到第三语句集合,并记上述第三语句集合中所包含的语句为第三语句;

基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,其中,每一特征值对应一个评估维度;

将各个第三语句的一个以上特征值输入至预设的排序模型中,得到各个第三语句的总得分;

基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复。

本申请的第二方面提供了一种答复反馈装置,包括:

接收单元,用于接收输入语句;

检索单元,用于将上述输入语句输入至已训练的第一检索模型及第二检索模型中,得到上述第一检索模型所输出的第一语句集合及上述第二检索模型所输出的第二语句集合,其中,上述第一检索模型用于基于上述输入语句的字词在预设的语料库中检索与上述输入语句相匹配的第一语句,上述第二检索模型基于上述输入语句的语义在上述语料库中检索与上述输入语句相匹配的第二语句,上述第一语句集合所包含的第一语句的数量与上述第二语句集合所包含的第二语句的数量相同;

并集单元,用于对上述第一语句集合与上述第二语句集合取并集,得到第三语句集合,并记上述第三语句集合中所包含的语句为第三语句;

计算单元,用于基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,其中,每一特征值对应一个评估维度;

排序单元,用于将各个第三语句及各个第三语句的一个以上特征值输入至预设的排序模型中,得到各个第三语句的总得分;

反馈单元,用于基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复。

本申请的第三方面提供了一种智能设备,上述智能设备包括存储器、处理器以及存储在上述存储器中并可在上述处理器上运行的计算机程序,上述处理器执行上述计算机程序时实现如上述第一方面的方法的步骤。

本申请的第四方面提供了一种计算机可读存储介质,上述计算机可读存储介质存储有计算机程序,上述计算机程序被处理器执行时实现如上述第一方面的方法的步骤。

本申请的第五方面提供了一种计算机程序产品,上述计算机程序产品包括计算机程序,上述计算机程序被一个或多个处理器执行时实现如上述第一方面的方法的步骤。

由上可见,通过本申请方案,首先接收输入语句,然后将上述输入语句输入至已训练的第一检索模型及第二检索模型中,得到上述第一检索模型所输出的第一语句集合及上述第二检索模型所输出的第二语句集合,其中,所述第一检索模型用于基于所述输入语句的字词在预设的语料库中检索与所述输入语句相匹配的语句,所述第二检索模型用于基于所述输入语句的语义在所述语料库中检索与所述输入语句相匹配的语句,所述第一语句集合所包含的第一语句的数量与所述第二语句集合所包含的第二语句的数量相同,接着对上述第一语句集合与上述第二语句集合取并集,得到第三语句集合,并记上述第三语句集合中所包含的语句为第三语句,再基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,其中,每一特征值对应一个评估维度,并将各个第三语句的一个以上特征值输入至预设的排序模型中,得到各个第三语句的总得分,最后基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复。本申请方案中,结合了基于上述输入语句的字词进行检索的第一检索模型以及基于上述输入语句的语义进行检索的第二检索模型对输入语句进行了粗略筛选,并基于粗略筛选的结果再与输入语句进行进一步多维度的比较,以实现对输入语句的答复反馈。上述过程可实现检索精度与检索时间的平衡,且一定程度上提升了答复的准确性及反馈效率。

附图说明

为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本申请实施例提供的答复反馈方法的实现流程示意图;

图2是本申请实施例提供的答复反馈方法中,分类模型的模型示意图;

图3-1是本申请实施例提供的答复反馈方法中,智能设备的算法架构图;

图3-2是本申请实施例提供的答复反馈方法中,智能设备的系统架构图;

图4是本申请实施例提供的答复反馈装置的结构框图;

图5是本申请实施例提供的智能设备的结构示意图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。

本申请实施例的一种答复反馈方法及答复反馈装置可应用于机器人、智能手机、平板电脑等具备人机交互功能的智能设备中,为了说明本申请的技术方案,下面通过具体实施例来进行说明。

下面对本申请实施例提供的一种答复反馈方法进行描述,请参阅图1,本申请实施例中的答复生成方法包括:

步骤101,接收输入语句;

在本申请实施例中,智能设备可以先获取待反馈的输入语句,上述输入语句指的是用户在与智能设备交互的过程中所输入的语句。可选地,上述输入语句可以是用户通过文字所输入的语句;或者,上述语句也可以是用户通过语音所输入的语句,此处不对上述输入语句的输入形式作出限定。

步骤102,将上述输入语句输入至已训练的第一检索模型及第二检索模型中,得到上述第一检索模型所输出的第一语句集合及上述第二检索模型所输出的第二语句集合;

在本申请实施例中,语料人员预先设定有一语料库,上述语料库为核心数据。该语料库中包括了一些常用的用户咨询的主问题、相似问题及对应答案,其中,每一主问题、该主问题的相似问题及对应答案组成了一组语料数据。具体地,可以由语料人员先设定若干个表达不同含义的主问题,然后再对每一主问题进行拓展,得到这些主问题的相似问题。可以认为,一个主问题的相似问题与该主问题所表达的含义是一致的,只是表述方式有所区别。例如,主问题为“什么是积木机器人”,语料人员可基于该主问题作出拓展,得到相似问题“什么是JIMU”、“积木机器人是啥”。由上可见,主问题与该主问题的相似问题是极其相似的,只是问法稍稍不同而已。进一步地,为了使得智能设备能够更高效地为用户提供服务,可以尽可能的增加各个主问题的相似问题的数量,也即,尽可能多的拓展得到各个主问题的相似问题。

可选地,在一组语料数据中,还可以基于主问题所包含的业务词语对该主问题及其相似问题进行类别区分,上述类别具体指业务类别;并在每一组语料数据中还可加入该组语料数据的问题所关联的类别。这不仅有利于算法的精度,也可以让语料管理的相关工作更加方便。

可选地,还可以针对每组语料数据中的主问题及其相似问题,整理出各组语料数据的关键词;并在每一组语料数据中加入该组语料数据的关键词。需要注意的是,一组语料数据的关键词的数量可能有多个。

可选地,为了使答案不至于太单调,还可以针对每组语料数据中的主问题及其相似问题,编辑出多个答案;并在每一组语料数据中加入该组语料数据的各个答案。

需要注意的是,以上所有的数据均应确保其数据的准确性。

为了方便理解,下表1示出了语料库中的一组语料数据的数据结构:

表1

上述答案的个数、关键词的个数以及相似问题的个数可根据各组语料数据的实际情况进行调整,其中,相似问题的个数应尽量保证其表达之间具有一定的区分度,同时保证语义是一致的。上述数据结构中还示出了“序号”一栏,通过该“序号”可确定每一问题的问题序号,其中,上述问题序号的表示形式为“x-y”,x指代的是“序号”,用来指示序号“x”所对应的语料数据;“y”指代的是一组语料数据中的具体问题,其中,“y”为0时代表该组语料数据中的主问题,“y”为正整数时代表该组预料数据中的相似问题y,例如问题序号“3-0”代表的是序号3所对应的语料数据中的主问题,问题序号“2-2”代表的是序号2所对应的语料数据中的相似问题2。

随后,再对上述第一检索模型及第二检索模型进行说明:上述第一检索模型基于上述输入语句的字词在上述语料库中检索与上述输入语句相匹配的语句作为第一语句,并将所得到的所有第一语句输出至第一语句集合中;上述第二检索模型基于上述输入语句的语义在上述语料库中检索与上述输入语句相匹配的语句作为第二语句,并将所得到的所有第二语句输出至第二语句集合中。可选地,可以设定一固定数量,并使得上述第一语句集合所包含的第一语句的数量与上述第二语句集合所包含的第二语句的数量相同,均为上述固定数量。例如,上述固定数量可设定为50,也即,上述第一检索模型基于上述输入语句的字词在上述语料库中检索出与上述输入语句最为匹配的50条第一语句,上述第二检索模型基于上述输入语句的语义在上述语料库中检索出与上述输入语句最为匹配的50条第二语句。

其中,上述第一检索模型采用的是ElasticSearch技术,具体为一项根据tf-idf(term frequency-inverse document frequency)进行快速检索的开源技术,其对于中文的检索可以是基于字符级别,也可以是基于词级别。具体地,可以先对上述语料库中的各条语句基于ElasticSearch中的IK分词器进行分词后再进行索引构建,其中,上述IK分词器可选定为ik_max_word分词模式。需要注意的是,考虑到语料库中存储的语句包含有一条以上主问题,并且每一主问题对应有一条以上相似问题,因而,此处不仅仅需要预先针对语料库中的主问题进行分词及索引构建,而且还需要对各个主问题的相似问题进行分词及索引构建。

其中,上述第二检索模型是基于句向量的语义检索方式,上述基于句向量的语义检索不仅速度较快,而且检索时更多地依赖于语义的相关性,能够区别于ElasticSearch技术的偏字符级别及词级别的匹配。具体地,可以使用网上开源的BERT词向量的获取方式,分别获取语料库中的各个主问题及相似问题的句向量,并转换成为768维的向量表示,在得到所有问题的向量表示后存储起来,用于后期预测时的对比。

步骤103,对上述第一语句集合与上述第二语句集合取并集,得到第三语句集合,并记上述第三语句集合中所包含的语句为第三语句;

在本申请实施例中,上述第一语句集合及上述第二语句集合中,往往不仅包括语料库中的主问题,而且包括语料库中的相似问题。对上述第一语句集合及上述第二语句集合取并集后,得到第三语句集合,同时,为了后续表述方便,记上述第三语句集合中所包含的各条语句为第三语句。例如,通过第一检索模型检索后得到包含有50条第一语句的第一语句集合,通过第二检索模型检索后得到包含有50条第二语句的第二语句集合,将这50条第一语句及50条第二语句取并集,得到数量不超过100条的第三语句。可以认为,上述各条第三语句均在一定程度上与上述输入语句相似。通过上述基于第一检索模型及第二检索模型的检索可知,本申请方案不仅关注字词级别的匹配程度,而且关注语义级别的匹配程度。

步骤104,基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值;

在本申请实施例中,每一特征值对应一个评估维度。具体地,可预先设定多个评估维度,上述评估维度包括但不限于:语义相似维度,杰卡德相似维度,业务词语维度,关键词语维度及字符串相似维度。以下分别对各个评估维度作出介绍:

对于语义相似维度来说,可通过已训练的BERT分类模型在语义相似维度上对各个第三语句进行评估,具体为将上述输入语句及各个第三语句输入至已训练的BERT分类模型中,得到上述BERT分类模型所输出的上述输入语句与各个第三语句的语义相似度,作为各个第三语句的语义相似度特征值。具体地,上述BERT分类模型可用于区分两个短文本在语义之间的相关性。如图2所示,BERT分类模型可在BERT预训练的中文模型的基础上继续训练而成,其输出层可在原有的BERT模型的基础上加上一层或者多层的全连接层,保持BERT预训练的中文模型(也即原有的BERT模型)的参数不变,调整全连接层部分的参数,得到BERT分类模型,上述BERT分类模型能够判断两句话是否为相同语义表达。也即,可将上述BERT分类模型分成两部分,包括原有的BERT模型以及新增的全连接层,这其中,BERT模型的所有参数保持不变,将BERT模型的输出作为新增的全连接层的输入,通过一个神经元的输出来判别两个语句之间的语义相似度,其可通过以下公式进行表述:

Lable=sigmoid(f(H(sentent 1,sentent 2))) (1)

其中,计算语义相似度的两个语句用setent1及sentent2表示,f函数是新增的全连接层的参数,H函数为BERT模型的固定参数,在训练收敛后,保存参数供预测使用。

上述BERT分类模型所采用的训练数据也相对简单。具体地,将上述BERT分类模型所采用的训练数据记为语义数据,则该语义数据可以由业务数据及通用数据共同构成,其中,上述通用数据可从网络上收集,上述业务数据可以通过上述语料库进行构建,其构建方法如下:

已知某主问题及其相似问题,如已知问题序号为“1-0”的主问题,其相似问题有3条,这些相似问题的问题序号分别为“1-1”、“1-2”及“1-3”;另有问题序号为“2-0”的主问题,其相似问题的问题序号分别为“2-1”及“2-2”;基于此,所构成的语义数据可以如下表2所示:

表2

上表中,“语义标签”为1,代表两个问题的语义相近;“语义标签”为0,代表两个问题的语义不相近;根据语料库的构建逻辑,可设定语料库中处于同一组语料数据中的两个问题的语义相近,处于不同组语料数据中的两个问题的语义不相近。使用这种方式,可以根据语料库大量扩展语义数据,其中语义数据的格式要求如下:

问题1\t问题2\t语义标签\n

其中,\t为tab空格,而\n为换行。

对于杰卡德相似维度来说,可分别计算上述输入语句与每一个第三语句的杰卡德相似度,作为各个第三语句的杰卡德相似度特征值。具体地,可通过如下式子计算两个语句之间的杰卡德相似度:

上式中,J(sentent1,sentent2)代表语句sentent1及语句sentent2之间的杰卡德相似度;I表示取交集;Y表示取并集。

对于业务词语维度来说,可先由语料人员预先设定一业务词语库,将各个业务类别所常用的业务词语存放于该业务词语库中,然后基于上述业务词语库,检测上述输入语句中是否存在业务词语,当上述输入语句中存在业务词语时,可统计上述输入语句的业务词语的数量,同时统计各个第三语句中目标业务词语的数量,其中,上述目标业务词语为与上述输入语句的任一业务词语相匹配的词语,然后分别计算各个第三语句的目标业务词语的数量与上述输入语句的业务词语的数量的比值,作为各个第三语句的业务词语特征值。也即是说,输入语句通过上述业务词语库来判断自身所包含的业务词语,第三语句通过上述输入语句所包含的业务词语来判断自身所包含的目标业务词语。例如,假定基于上述业务词语库发现输入语句S

对于关键词语维度来说,可先由语料人员预先设定一关键词语库,将各个用户常用的关键词语存放于该关键词语库中,然后基于上述关键词语库,检测上述输入语句中是否存在关键词语,当上述输入语句中存在关键词语时,可统计上述输入语句的关键词语的数量,同时统计各个第三语句中目标关键词语的数量,其中,上述目标关键词语为与上述输入语句的任一关键词语相匹配的词语,然后分别计算各个第三语句的目标关键词语的数量与上述输入语句的关键词语的数量的比值,作为各个第三语句的关键词语特征值。也即是说,输入语句通过上述关键词语库来判断自身所包含的关键词语,第三语句通过上述输入语句所包含的关键词语来判断自身所包含的目标关键词语。例如,假定基于上述关键词语库发现输入语句S

对于字符串相似维度,可检测由上述输入语句转换为目标第三语句时的编辑次数,其中,上述编辑次数为对上述输入语句进行编辑操作的次数,上述编辑操作包括插入、删除及替换,上述目标第三语句为任一第三语句,并根据上述编辑次数及预设的相似度计算公式计算得到上述目标第三语句与上述输入语句的字符串相似度,作为上述目标第三语句的字符串相似度特征值。其中,上述预设的相似度计算公式为:

L(sentent1,sentent2)=1-n/Math.Max(str1.length,str2.length)

其中,str1.length为语句sentent1的长度;str2.length为语句sentent2的长度;n为由sentent1转换为sentent2的编辑次数。

步骤105,将各个第三语句的一个以上特征值输入至预设的排序模型中,得到各个第三语句的总得分;

在本申请实施例中,上述排序模型的作用是针对检索的结果(也即第三语句集合)进行重排,具体地,可通过上述多个评估维度下的特征值分别计算各个第三语句的总得分并基于该总得分进行排序。上述排序模型同样需要训练,其训练所用的特征可以为上述语义相似度特征值,上述杰卡德相似度特征值,上述业务词语特征值,上述关键词语特征值及上述字符串相似度特征值,此处不作限定。其中,上述排序模型使用简单的线性模型进行训练,可使用标准测试集进行训练并更新上述各个特征的相关权重,以使损失函数最小,并将各个特征最终所对应的权重进行保存。以下对上述标准测试集作出说明:

标准测试集的作用为进一步确定排序模型的模型参数。为了避免样本数据不均衡导致的模型参数问题,制作的标准测试集中的样本数据应尽量分布均匀且数量要大。具体地,标准测试集中样本数据的格式要求如下:

问题1\t标准问题\n

其中,上述问题1应不同于上述语料库中的主问题及相似问题,而上述标准问题应为上述语料库中主问题。在训练时,对标准测试集中的每个样本数据计算出其在各个评估维度下所分别对应的特征值,并所有特征值输入到线性模型中,在线性模型的损失收敛后所得到的各个特征值的权重进行保留,得到已训练的排序模型。也即,通过已训练的排序模型,可以为每一第三语句的各个评估维度下的特征值赋予权重,并基于此计算得到总得分。

步骤106,基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复。

在本申请实施例中,上述排序模型还可将每一第三语句的总得分与预设的得分阈值进行比对,并最终给出高阈值的一个第三语句,或高于预设的得分阈值的几个第三语句,这些第三语句即为与上述输入语句相匹配的语句。具体地,上述步骤106可表现为:分别将各个第三语句的总得分与预设的得分阈值进行比对,得到候选语句,其中,上述候选语句为总得分大于或等于上述得分阈值的第三语句。在进行比对后,存在三种情况:第一种情况是当前不存在候选语句,此时可以调用预设的闲聊接口,并反馈闲聊内容;第二种情况是存在一个候选语句,此时可以通过上述语料库查找到上述候选语句所对应的答复语句(也即答案),并反馈上述答复语句,其中,当该候选语句所对应的答案有多个时,可随机从多个答案中选择一答案进行反馈;第三种情况是存在两个以上候选语句,此时基于上述总得分由大至小的顺序对各个候选语句进行排序,保留前N个候选语句,并反馈上述前N个候选语句。上述N为预设的正整数,其中,N不宜被设定的过大,例如,可以被设定为3,也即在这种情况下,将相匹配的3个(N个)候选语句直接反馈给用户,用户可查阅所反馈的候选语句中是否存在其想要询问的问题并进行勾选,以获得勾选的问题的回答。

可选地,此处也可以是设定两个得分阈值,例如,分别为第一得分阈值及第二得分阈值,其中,上述第一得分阈值高于上述第二得分阈值,上述第一得分阈值作为高阈值的判定方式。则上述步骤106也可以表现为:

第一得分阈值作为是否精准命中输入语句的判断基础,先基于上述第一得分阈值对各个第三语句进行检测,若存在一个或多个总得分高于上述第一得分阈值的第三语句,则将其中总得分最高的第三语句确定为唯一的候选语句,可认为该候选语句精准命中了输入语句,此时将该唯一的候选语句在语料库中所关联的答案作为答复语句进行反馈;

当输入语句模棱两可时,往往无法实现精准命中,也即不存在总得分高于上述第一得分阈值的第三语句,此时可以再基于上述第二得分阈值对各个第三语句进行检测,若有超过N个第三语句的总得分高于上述第二得分阈值,则基于总得分由大至小的顺序将总得分靠前的N个第三语句确定为候选语句,若总得分高于上述第二得分阈值的第三语句的数量未超过N个,则将所有总得分高于上述第二得分阈值的第三语句均确定为候选语句,并直接向用户反馈所有候选语句,供用户选择;

当不存在高于第二得分阈值的第三语句时,认为当前语料库中不存在可以命中输入语句的问题,此时认为用户实际上在与智能设备进行闲聊沟通,可通过调用预设的闲聊接口,向用户反馈闲聊内容。

可选地,在上述步骤101后,上述答复反馈方法还包括:

对上述输入语句进行预处理。

其中,上述预处理包括表情识别、简繁体转换、敏感词脏词识别、去意义词、繁简体转换、分词、改写及提取同义词等操作,此处不作赘述。

请参阅图3-1,图3-1示出了智能设备所采用的算法架构。本申请实施例中,智能设备采用了四种不同的模型,包括第一检索模型,第二检索模型,BERT分类模型以及排序模型。其中,第一检索模型与第二检索模型并行,二者的输出结果在取并集后输入BERT分类模型,BERT分类模型的输出结果输入排序模型。

请参阅图3-2,图3-2示出了智能设备所采用的系统架构。可看到当接收到输入语句后,先通过一预处理模块进行预处理操作;经过预处理后的输入语句会输入到检索模块中作检索处理,其中,该检索模块采用并行的第一检索模型及第二检索模型;检索模块会对这两个检索模型的输出结果取并集后,再输入至匹配模块中,其中该匹配模块采用BERT分类模型计算上述并集中的每一语句与输入语句的语义相似度特征值;与此同时,智能设备还会计算其它评估维度下的特征值,并将各个特征值输入至排序模块中,基于排序模块中排序模型的输出结果反馈答复。

由上可见,通过本申请实施例,结合了基于上述输入语句的字词进行检索的第一检索模型以及基于上述输入语句的语义进行检索的第二检索模型对输入语句进行了粗略筛选,并基于粗略筛选的结果再与输入语句进行进一步多维度的比较,包括语义相似维度,杰卡德相似维度,业务词语维度,关键词语维度及字符串相似维度等,以实现对输入语句的答复反馈。上述过程可实现检索精度与检索时间的平衡,且一定程度上提升了答复的准确性及反馈效率。

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

本申请实施例二提供了一种答复反馈装置,上述答复反馈装置可集成于智能设备中,如图4所示,本申请实施例中的答复反馈装置400包括:

接收单元401,用于接收输入语句;

检索单元402,用于将上述输入语句输入至已训练的第一检索模型及第二检索模型中,得到上述第一检索模型所输出的第一语句集合及上述第二检索模型所输出的第二语句集合,其中,上述第一检索模型用于基于上述输入语句的字词在预设的语料库中检索与上述输入语句相匹配的第一语句,上述第二检索模型基于上述输入语句的语义在上述语料库中检索与上述输入语句相匹配的第二语句,上述第一语句集合所包含的第一语句的数量与上述第二语句集合所包含的第二语句的数量相同;

并集单元403,用于对上述第一语句集合与上述第二语句集合取并集,得到第三语句集合,并记上述第三语句集合中所包含的语句为第三语句;

计算单元404,用于基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,其中,每一特征值对应一个评估维度;

排序单元405,用于将各个第三语句及各个第三语句的一个以上特征值输入至预设的排序模型中,得到各个第三语句的总得分;

反馈单元406,用于基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复。

可选地,上述评估维度包括语义相似维度,上述计算单元404,包括:

语义相似度特征值计算子单元,用于将上述输入语句及各个第三语句输入至已训练的分类模型中,得到上述输入语句与各个第三语句的语义相似度,作为各个第三语句的语义相似度特征值。

可选地,上述评估维度包括杰卡德相似维度,上述计算单元404,包括:

分别计算上述输入语句与各个第三语句的杰卡德相似度,作为各个第三语句的杰卡德相似度特征值。

可选地,上述评估维度包括业务词语维度,上述计算单元404,包括:

第一检测子单元,用于基于预设的业务词语库,检测上述输入语句中是否存在业务词语;

第一统计子单元,用于若上述输入语句中存在业务词语,则统计上述输入语句的业务词语的数量,并统计各个第三语句中目标业务词语的数量,其中,上述目标业务词语为与上述输入语句的任一业务词语相匹配的词语;

业务词语特征值计算子单元,用于分别计算各个第三语句的目标业务词语的数量与上述输入语句的业务词语的数量的比值,作为各个第三语句的业务词语特征值。

可选地,上述评估维度包括关键词语维度,上述计算单元404,包括:

第二检测子单元,用于基于预设的关键词语库,检测上述输入语句中是否存在关键词语;

第二统计子单元,用于若上述输入语句中存在关键词语,则统计上述输入语句的关键词语的数量,并统计各个第三语句中目标关键词语的数量,其中,上述目标关键词语为与上述输入语句的任一关键词语相匹配的词语;

关键词语特征值计算子单元,用于分别计算各个第三语句的目标关键词语的数量与上述输入语句的关键词语的数量的比值,作为各个第三语句的关键词语特征值。

可选地,上述评估维度包括字符串相似维度,上述计算单元404,包括:

第三检测子单元,用于检测由上述输入语句转换为目标第三语句时的编辑次数,其中,上述编辑次数为对上述输入语句进行编辑操作的次数,上述编辑操作包括插入、删除及替换,上述目标第三语句为任一第三语句;

字符串相似度特征值计算子单元,用于根据上述编辑次数及预设的相似度计算公式计算得到上述目标第三语句与上述输入语句的字符串相似度,作为上述目标第三语句的字符串相似度特征值。

可选地,上述反馈单元406包括:

得分比对子单元,用于分别将各个第三语句的总得分与预设的得分阈值进行比对,得到候选语句,其中,上述候选语句为总得分大于或等于上述得分阈值的第三语句;

闲聊内容反馈子单元,用于若不存在候选语句,则调用预设的闲聊接口,并反馈闲聊内容;

答复语句反馈子单元,用于若存在一个候选语句,则获取上述候选语句所对应的答复语句,并反馈上述答复语句;

候选语句反馈子单元,用于若存在两个以上候选语句,则基于上述总得分由大至小的顺序对各个候选语句进行排序,保留前N个候选语句,并反馈上述前N个候选语句。

由上可见,在本申请实施例中,答复反馈装置结合了基于上述输入语句的字词进行检索的第一检索模型以及基于上述输入语句的语义进行检索的第二检索模型对输入语句进行了粗略筛选,并基于粗略筛选的结果再与输入语句进行进一步多维度的比较,包括语义相似维度,杰卡德相似维度,业务词语维度,关键词语维度及字符串相似维度等,以实现对输入语句的答复反馈。上述过程可实现检索精度与检索时间的平衡,且一定程度上提升了答复的准确性及反馈效率。

本申请实施例三提供了一种智能设备,请参阅图5,本申请实施例中的智能设备5包括:存储器501,一个或多个处理器502(图5中仅示出一个)及存储在存储器501上并可在处理器上运行的计算机程序。其中:存储器501用于存储软件程序以及模块,处理器502通过运行存储在存储器501的软件程序以及单元,从而执行各种功能应用以及数据处理,以获取上述预设事件对应的资源。具体地,处理器502通过运行存储在存储器501的上述计算机程序时实现以下步骤:

接收输入语句;

将上述输入语句输入至已训练的第一检索模型及第二检索模型中,得到上述第一检索模型所输出的第一语句集合及上述第二检索模型所输出的第二语句集合,其中,上述第一检索模型用于基于上述输入语句的字词在预设的语料库中检索与上述输入语句相匹配的语句,上述第二检索模型基于上述输入语句的语义在上述语料库中检索与上述输入语句相匹配的第二语句,上述第一语句集合所包含的第一语句的数量与上述第二语句集合所包含的第二语句的数量相同;

对上述第一语句集合与上述第二语句集合取并集,得到第三语句集合,并记上述第三语句集合中所包含的语句为第三语句;

基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,其中,每一特征值对应一个评估维度;

将各个第三语句的一个以上特征值输入至预设的排序模型中,得到各个第三语句的总得分;

基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复。

假设上述为第一种可能的实施方式,则在第一种可能的实施方式作为基础而提供的第二种可能的实施方式中,上述评估维度包括语义相似维度,上述基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,包括:

将上述输入语句及各个第三语句输入至已训练的分类模型中,得到上述输入语句与各个第三语句的语义相似度,作为各个第三语句的语义相似度特征值。

在上述一种可能的实施方式作为基础而提供的第三种可能的实施方式中,上述评估维度包括杰卡德相似维度,上述基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,包括:

分别计算上述输入语句与各个第三语句的杰卡德相似度,作为各个第三语句的杰卡德相似度特征值。

在上述第一种可能的实施方式作为基础而提供的第四种可能的实施方式中,上述评估维度包括业务词语维度,上述基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,包括:

基于预设的业务词语库,检测上述输入语句中是否存在业务词语;

若上述输入语句中存在业务词语,则统计上述输入语句的业务词语的数量,并统计各个第三语句中目标业务词语的数量,其中,上述目标业务词语为与上述输入语句的任一业务词语相匹配的词语;

分别计算各个第三语句的目标业务词语的数量与上述输入语句的业务词语的数量的比值,作为各个第三语句的业务词语特征值。

在上述第一种可能的实施方式作为基础而提供的第五种可能的实施方式中,上述评估维度包括关键词语维度,上述基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,包括:

基于预设的关键词语库,检测上述输入语句中是否存在关键词语;

若上述输入语句中存在关键词语,则统计上述输入语句的关键词语的数量,并统计各个第三语句中目标关键词语的数量,其中,上述目标关键词语为与上述输入语句的任一关键词语相匹配的词语;

分别计算各个第三语句的目标关键词语的数量与上述输入语句的关键词语的数量的比值,作为各个第三语句的关键词语特征值。

在上述第一种可能的实施方式作为基础而提供的第六种可能的实施方式中,上述评估维度包括字符串相似维度,上述基于预设的一个以上评估维度,计算各个第三语句的一个以上特征值,包括:

检测由上述输入语句转换为目标第三语句时的编辑次数,其中,上述编辑次数为对上述输入语句进行编辑操作的次数,上述编辑操作包括插入、删除及替换,上述目标第三语句为任一第三语句;

根据上述编辑次数及预设的相似度计算公式计算得到上述目标第三语句与上述输入语句的字符串相似度,作为上述目标第三语句的字符串相似度特征值。

在上述第一种可能的实施方式作为基础,或者上述第二种可能的实施方式作为基础,或者上述第三种可能的实施方式作为基础,或者上述第四种可能的实施方式作为基础,或者上述第五种可能的实施方式作为基础,或者上述第六种可能的实施方式作为基础而提供的第七种可能的实施方式中,上述基于各个替换语料的意图得分及语言模型得分,确定目标替换语料,包括:

上述基于预设的得分阈值对所有第三语句进行筛选,并根据筛选结果反馈答复,包括:

分别将各个第三语句的总得分与预设的得分阈值进行比对,得到候选语句,其中,上述候选语句为总得分大于或等于上述得分阈值的第三语句;

若不存在候选语句,则调用预设的闲聊接口,并反馈闲聊内容;

若存在一个候选语句,则获取上述候选语句所对应的答复语句,并反馈上述答复语句;

若存在两个以上候选语句,则基于上述总得分由大至小的顺序对各个候选语句进行排序,保留前N个候选语句,并反馈上述前N个候选语句。

应当理解,在本申请实施例中,所称处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。

存储器501可以包括只读存储器和随机存取存储器,并向处理器502提供指令和数据。存储器501的一部分或全部还可以包括非易失性随机存取存储器。例如,存储器501还可以存储设备类型的信息。

由上可见,在本申请实施例中,智能设备结合了基于上述输入语句的字词进行检索的第一检索模型以及基于上述输入语句的语义进行检索的第二检索模型对输入语句进行了粗略筛选,并基于粗略筛选的结果再与输入语句进行进一步多维度的比较,包括语义相似维度,杰卡德相似维度,业务词语维度,关键词语维度及字符串相似维度等,以实现对输入语句的答复反馈。上述过程可实现检索精度与检索时间的平衡,且一定程度上提升了答复的准确性及反馈效率。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将上述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者外部设备软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的系统实施例仅仅是示意性的,例如,上述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关联的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读存储介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机可读存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读存储介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读存储介质不包括是电载波信号和电信信号。

以上上述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,上述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。。其中,上述计算机程序包括计算机程序代码,上述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。上述计算机可读介质可以包括:能够携带上述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,上述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号