掌桥专利:专业的专利平台
掌桥专利
首页

意图识别方法、人机交互方法、电子设备及存储介质

文献发布时间:2023-06-19 18:29:06


意图识别方法、人机交互方法、电子设备及存储介质

技术领域

本申请涉及人工智能技术领域,尤其是涉及一种意图识别方法、人机交互方法、电子设备及存储介质。

背景技术

随着互联网技术的发展,使用语音进行人机交互的智能设备越来越多,用户与智能设备进行交互的场景也愈发常见,例如订购商品,查询信息、聊天等场景。应理解,用户在与智能设备进行人机交互的方式,可以通过语音、键鼠、触屏或者其他方式向智能设备输入请求指令,然而,不同用户对请求指令的表述方式存在差异,同一请求指令可以通过不同的措辞用语加以表达,也可以通过不同的语句结构加以表达,甚至可以通过不同的语种类别信息加以表达,因此智能设备接收到的请求指令往往是不规范的。在较为复杂的具体应用场景下(例如保险领域相关业务的应用),对于智能设备意图识别的准确率更是有着较高的要求,相关技术在意图识别的过程中如何提升意图识别准确率,已经成为业内亟待解决的一大难题。

发明内容

本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种意图识别方法、人机交互方法、电子设备及存储介质,能够在意图识别的过程中提升意图识别准确率。

根据本申请的第一方面实施例的意图识别方法,包括:

获取请求指令;

对所述请求指令进行初步意图识别,得到与所述请求指令对应的初步意图;

根据所述初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,所述意图候选集包含多个候选意图,所述词槽序列候选集包含多组候选词槽序列,所述候选意图与所述候选词槽序列一一对应;

基于所述词槽序列候选集与所述意图候选集对所述请求指令进行目标意图识别,得到与所述请求指令对应的目标意图。

根据本申请的一些实施例,所述基于所述词槽序列候选集与所述意图候选集对所述请求指令进行目标意图识别,得到与所述请求指令对应的目标意图,包括:

在所述词槽序列候选集内对所述请求指令进行词槽序列比对,得到目标词槽序列;

基于所述目标词槽序列在所述意图候选集内进行意图查询,得到所述目标意图。

根据本申请的一些实施例,所述在所述词槽序列候选集内对所述请求指令进行词槽序列比对,得到目标词槽序列,包括:

获取所述词槽序列候选集内预设的多个关键字段;

基于多个所述关键字段在所述请求指令中进行查询,得到多个第一命中字段;

根据多个所述第一命中字段,形成所述目标词槽序列。

根据本申请的一些实施例,所述在所述词槽序列候选集内对所述请求指令进行词槽序列比对,得到目标词槽序列,还包括:

当所述请求指令中无法查询到与所述关键字段匹配的所述第一命中字段时,从所述意图数据库中获取预设引导语句;

输出所述预设引导语句,以获取补充指令;

基于多个所述关键字段在所述补充指令中进行查询,得到多个所述第二命中字段;

根据多个所述第二命中字段,形成所述目标词槽序列。

根据本申请的一些实施例,所述当所述请求指令中无法查询到与所述关键字段匹配的所述第一命中字段时,从所述意图数据库中获取预设引导语句,包括:

当所述请求指令中无法查询到与所述关键字段匹配的所述第一命中字段时,获取所述请求指令对应的用户信息;

基于所述用户信息在预设的用户画像数据库中查询与所述关键字段匹配的所述第三命中字段;

当所述用户画像数据库中无法查询到与所述关键字段匹配的所述第三命中字段,从所述意图数据库中获取所述预设引导语句。

根据本申请的一些实施例,所述根据所述初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集之前,所述意图识别方法还包括:

获取词槽配置指令、多个预设意图与多组预设词槽序列;

基于所述词槽配置指令,在所述意图数据库中构建所述预设词槽序列和所述预设意图的映射关系;

基于多个所述预设意图,形成预设意图集;

基于所述映射关系,形成与所述预设意图集对应的预设词槽序列集。

根据本申请的一些实施例,所述根据所述初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,包括:

基于所述初步意图与所述意图预设集中的所述预设意图进行意图匹配,得到所述意图候选集,所述意图候选集包括多个所述候选意图,所述候选意图为与所述初步意图匹配成功的预设意图;

对每一所述候选意图和所述预设词槽序列预设集中的多组所述预设词槽序列进行匹配处理,得到词槽序列候选集,所述词槽序列候选集包含多个所述候选词槽序列,所述候选词槽序列为与所述候选意图匹配成功的预设词槽序列。

根据本申请的第二方面实施例的人机交互方法,包括:

获取目标意图,所述目标意图根据本申请第一方面实施例中任一项所述的意图识别方法获取;

基于所述目标意图,执行与所述目标意图对应的应答动作。

第三方面,本申请实施例提供了一种电子设备,包括:存储器、处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如本申请第一方面实施例中任意一项所述的意图识别方法,或者,如本申请第二方面实施例中任意一项所述的人机交互方法。

第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行实现如本申请第一方面实施例中任意一项所述的意图识别方法,或者,如本申请第二方面实施例中任意一项所述的人机交互方法。

根据本申请实施例的意图识别方法、人机交互方法、电子设备及存储介质,至少具有如下有益效果:

本申请实施例中的意图识别方法需要先获取请求指令,再对请求指令进行初步意图识别,得到与请求指令对应的初步意图,进一步,根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应,再进一步,基于词槽序列候选集与意图候选集对请求指令进行目标意图识别,得到与请求指令对应的目标意图。由于意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应,因此基于词槽序列候选集与意图候选集,能够在初步意图的基础上进一步对请求指令进行目标意图识别,得到与请求指令对应的目标意图,从而提升意图识别准确率。应理解,通过本申请第二方面实施例的人机交互方法,可以在较为准确识别目标意图的基础上,应对较为复杂的人际交互场景,为目标用户提供了便利。

本申请的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

附图说明

本申请的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:

图1为本申请实施例提供的意图识别方法流程示意图;

图2为本申请实施例提供的意图识别方法另一流程示意图;

图3为本申请实施例提供的意图识别方法另一流程示意图;

图4为本申请实施例提供的意图识别方法另一流程示意图;

图5为本申请实施例提供的意图识别方法另一流程示意图;

图6为本申请实施例提供的意图识别方法另一流程示意图;

图7为本申请实施例提供的意图识别方法另一流程示意图;

图8是本申请实施例提供的电子设备的硬件结构示意图。

具体实施方式

下面详细描述本申请的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能理解为对本申请的限制。

在本申请的描述中,若干的含义是一个或者多个,多个的含义是两个以上,大于、小于、超过等理解为不包括本数,以上、以下、以内等理解为包括本数。如果有描述到第一、第二只是用于区分技术特征为目标,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量或者隐含指明所指示的技术特征的先后关系。

在本申请的描述中,需要理解的是,涉及到方位描述,例如上、下、左、右、前、后等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本申请和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本申请的限制。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示意性实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。

本申请的描述中,需要说明的是,除非另有明确的限定,设置、安装、连接等词语应做广义理解,所属技术领域技术人员可以结合技术方案的具体内容合理确定上述词语在本申请中的具体含义。另外,下文中对于具体步骤的标识并不代表对于步骤顺序与执行逻辑的限定,各个步骤之间的执行顺序与执行逻辑应参照实施例所表述的内容进行理解与推定。

需要说明的是,在本申请的各个具体实施方式中,当涉及到需要根据用户信息、用户行为数据,用户历史数据以及用户位置信息等与用户身份或特性相关的数据进行相关处理时,都会先获得用户的许可或者同意,而且,对这些数据的收集、使用和处理等,都会遵守相关国家和地区的相关法律法规和标准。此外,当本申请实施例需要获取用户的敏感个人信息时,会通过弹窗或者跳转到确认页面等方式获得用户的单独许可或者单独同意,在明确获得用户的单独许可或者单独同意之后,再获取用于使本申请实施例能够正常运行的必要的用户相关数据。

首先,对本申请中涉及的若干名词进行解析:

人工智能(Artificial Intelligence,AI):是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学;人工智能是计算机科学的一个分支,人工智能企图了解智能的实质,并生产出一种新的能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。人工智能可以对人的意识、思维的信息过程的模拟。人工智能还是利用数字计算机或者数字计算机控制的机器模拟、延伸和扩展人的智能,感知环境、获取知识并使用知识获得最佳结果的理论、方法、技术及应用系统。

自然语言处理(Natural Language Processing,NLP):NLP用计算机来处理、理解以及运用人类语言(如中文、英文等),NLP属于人工智能的一个分支,是计算机科学与语言学的交叉学科,又常被称为计算语言学。自然语言处理包括语法分析、语义分析、篇章理解等。自然语言处理常用于机器翻译、手写体和印刷体字符识别、语音识别及文语转换、信息意图识别、信息抽取与过滤、文本分类与聚类、舆情分析和观点挖掘等技术领域,它涉及与语言处理相关的数据挖掘、机器学习、知识获取、知识工程、人工智能研究和与语言计算相关的语言学研究等。

词槽(Slot):词槽指的是满足用户对话意图时的关键信息或限定条件,可以理解为用户需要提供的筛选条件。例如在查询天气时,词槽是地点和时间。具体而言,词槽可以理解为一句话中所包含的参数是什么,而槽位是指这句话里有多少个参数,它们直接决定系统能否匹配到正确的意图。举例而言,“今天深圳天气怎么样”这个语句信息可以拆分成“今天”、“深圳”、“天气”、“怎么样”四个词语,那么天气意图就包含了“时间”、“地点”、“触发关键词”、“无义词”四个词槽。另外,必填词槽指的是意图识别任务中必须识别到的词槽,获取必填词槽之后才能进行下一词槽的澄清或者给出回复;非必填词槽指的是意图识别任务中可有可无的词槽,可配置针对性模板用于识别此类语句。

随着互联网技术的发展,使用语音进行人机交互的智能设备越来越多,用户与智能设备进行交互的场景也愈发常见,例如订购商品,查询信息、聊天等场景。应理解,用户在与智能设备进行人机交互的方式,可以通过语音、键鼠、触屏或者其他方式向智能设备输入请求指令,然而,不同用户对请求指令的表述方式存在差异,同一请求指令可以通过不同的措辞用语加以表达,也可以通过不同的语句结构加以表达,甚至可以通过不同的语种类别信息加以表达,因此智能设备接收到的请求指令往往是不规范的。单一应用场景下(例如定车票、查消息)意图识别要求较低,通过通用的意图识别方法即可帮助智能设备理解请求指令的意图,然而较为复杂的具体应用场景下对于智能设备意图识别的准确率更是有着较高的要求,例如保险、金融等专业领域中相关业务的应用,用户往往不太了解专业领域的专业知识,如若智能设备不能准确地识别用户的意图,不仅可能导致沟通效率低下,还可能错误引导用户进行操作,以至于造成财物损失等严重后果。因此,相关技术在意图识别的过程中如何提升意图识别准确率,已经成为业内亟待解决的一大难题。

本申请旨在至少解决现有技术中存在的技术问题之一。为此,本申请提出一种意图识别方法、人机交互方法、电子设备及存储介质,能够在意图识别的过程中提升意图识别准确率。

下面以附图为依据作出进一步说明。

图1是本申请实施例提供的意图识别方法的一个可选的流程图,图1中的方法可以包括但不限于包括步骤S101至步骤S104。

步骤S101,获取请求指令;

步骤S102,对请求指令进行初步意图识别,得到与请求指令对应的初步意图;

步骤S103,根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应;

步骤S104,基于词槽序列候选集与意图候选集对请求指令进行目标意图识别,得到与请求指令对应的目标意图。

上述步骤S101至步骤S104,通过获取请求指令,再对请求指令进行初步意图识别,得到与请求指令对应的初步意图,进一步,根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应,再进一步,基于词槽序列候选集与意图候选集对请求指令进行目标意图识别,得到与请求指令对应的目标意图。由于意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应,因此基于词槽序列候选集与意图候选集,能够在初步意图的基础上进一步对请求指令进行目标意图识别,得到与请求指令对应的目标意图,从而提升意图识别准确率。

在本申请一些实施例的步骤S101中,首先需要获取请求指令,其中请求指令为反映目标用户请求意图的指令。需要说明的是,请求指令的获取方式可以是通过输入设备获取(如键鼠、触摸屏、语音识别模块),也可以从预先设置的数据库中调用获取,还可以是通过网络实时通讯或者其他方式获取。应理解,请求指令的呈现形式多种多样,可以包括,但不限于是文字形式、语音形式或者其他呈现形式的指令。

在本申请一些实施例的步骤S102中,对请求指令进行初步意图识别,得到与请求指令对应的初步意图。初步意图识别指的是基于通用的意图识别方式对请求指令进行意图识别。需要说明的是,意图识别具体指识别指令中蕴含的主题和意图,是一种偏向于应用层的自然语言理解任务。而初步意图识别得到的初步意图可以是一种意图类别,其中意图类别具有客观描述性、唯一性,标注规范方便理解,同一个模型中不同类别的意图不应该具有交叉、包含等关系,应该具有独立性,比如性别(男、女),比如专业领域的主题性质(保险、金融)。

应理解,通用的意图识别方式可以包括,但不限于规则模板意图识别、深度学习意图识别以及其他方式的意图识别。其中,规则模板意图识别又包括词表穷举法、规则模板解析法,词表穷举法通过词表直接匹配的方式来获取查询意图,同时,也可以加入比较简单并且查询模式较为集中的类别,规则模板解析法需要基于分词、词性标注、命名实体识别、依存句法分析、语义分析的前提下才能完成而且数据中使用的也是字典形式(Key Hash结构),查询速度较快;深度学习意图识别具体指机器学习和深度学习方法,将意图识别看作是一个分类问题,针对于垂直产品的特点,定义不同的查询意图类别,从而对于用户输入的查询请求(Query),根据统计分类模型计算出每一个意图的概率,最终给出查询的意图,深度学习意图识别用到的常见模型包括但不限于:基于卷积神经网络(ConvolutionalNeural Networks,CNN)的深度学习模型、基于长短期记忆神经网络(Long short-termMemory,LSTM)结合注意力机制的模型以及BERT(Bidirectional Encoder Representationfrom Transformers)语言模型。

需要强调的是,初步意图识别指的是基于通用的意图识别方式对请求指令进行意图识别,因此基于对请求指令进行初步意图识别所得到的初步意图往往是一种意图类别,例如:请求指令中包含核对信息的意图、请求指令中包含服务查询的意图,单一应用场景下(例如定车票、查消息)意图识别要求较低,经由通用的意图识别方法即可帮助智能设备理解请求指令的意图,然而较为复杂的具体应用场景下对于智能设备意图识别的准确率更是有着较高的要求,例如保险、金融等专业领域中相关业务的应用,用户往往不太了解专业领域的专业知识,如若智能设备不能准确地识别用户的意图,不仅可能导致沟通效率低下,还可能错误引导用户进行操作,以至于造成财物损失等严重后果。因此,本申请一些示例性的实施例中,在获取初步意图之后,会进一步根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,再基于词槽序列候选集与意图候选集对请求指令进行目标意图识别,得到与请求指令对应的目标意图。

参照图2,根据本申请一些实施例的步骤S103之前,意图识别方法还可以包括但不限于步骤S201至步骤S204:

步骤S201,获取词槽配置指令、多个预设意图与多组预设词槽序列;

步骤S202,基于词槽配置指令,在意图数据库中构建预设词槽序列和预设意图的映射关系;

步骤S203,基于多个预设意图,形成预设意图集;

步骤S204,基于映射关系,形成与预设意图集对应的预设词槽序列集。

在一些实施例的步骤S201中,词槽配置指令指的是用于配置各类业务需求的指令,预设意图指的是预先设置的指令意图,而预设词槽序列指的是预先设置的词槽序列。应理解,较为复杂的具体应用场景对于智能设备意图识别的准确率有着较高的要求,例如保险、金融等专业领域中相关业务的应用,用户往往不太了解专业领域的专业知识,如若智能设备不能准确地识别用户的意图,不仅可能导致沟通效率低下,还可能错误引导用户进行操作,以至于造成财物损失等严重后果。因此,本申请一些示例性的实施例中会预先获取词槽配置指令,再进一步基于词槽配置指令配置各类业务需求

在一些实施例的步骤S202中,在获取词槽配置指令、多个预设意图与多组预设词槽序列之后,可以基于词槽配置指令来对多个预设意图与多组预设词槽序列进行配置,构建预设词槽序列和预设意图之间的映射关系,以使得预设词槽序列和预设意图之间的映射关系能够对应上各类业务需求。应理解,词槽配置指令、多个预设意图与多组预设词槽序列可以包括,但不限于上述具体领域的实施例。

在一些较为具体的实施例中,保险领域基于其专业性质可以形成各种各样保险领域的预设意图,例如:保单核对、保险资质查询等,对应的,基于各种各样保险领域的预设意图也可以形成各种各样保险领域的预设词槽序列,例如{[保险人姓名],[保单号]}即可形成一组对应于保单核对业务的预设词槽序列,又例如{[保险人职业],[保险人身体状况],[保险人年龄]}即可形成一组对应于保险资质查询业务的预设词槽序列。因此,在获取词槽配置指令之后,即可将保单核对这一预设意图与{[保险人姓名],[保单号]}这一预设词槽序列对应、将保险资质查询这一预设意图与{[保险人职业],[保险人身体状况],[保险人年龄]}这一预设词槽序列对应,从而在意图数据库中构建预设词槽序列和预设意图的映射关系。

需要说明的是,由于意图数据库中存储有多个预设意图,以及与各个预设意图对应的各组预设词槽序列,因此在步骤S103中,即可根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集。需要指出,由于预设意图与预设词槽序列之间的映射关系是基于词槽配置指令在意图数据库中预先配置的,因此意图数据库中可以囊括有各种各样可能出现的具体业务需求,以至于初步意图能够匹配到与具体业务需求相关的候选意图与候选词槽序列。

需要说明的是,词槽配置指令的获取方式可以是通过输入设备获取(如键鼠、触摸屏、语音识别模块),也可以从预先设置的数据库中调用获取,还可以是通过网络实时通讯或者其他方式获取。应理解,词槽配置指令的呈现形式多种多样,可以包括,但不限于是文字形式、语音形式或者其他呈现形式的指令。

在本申请一些实施例的步骤S203至步骤S204中,基于多个预设意图,形成预设意图集,基于映射关系,形成与预设意图集对应的预设词槽序列集。需要说明的是,由于预设意图与预设词槽序列之间的映射关系是基于词槽配置指令在意图数据库中预先配置的,因此在基于多个预设意图形成预设意图集之后,即可进一步基于映射关系将各个预设意图所对应的各组预设词槽序列进行整合,从而形成预设意图集对应的预设词槽序列集。根据本申请一些较为具体的实施例,意图数据库的预设意图集中包括各种各样的预设意图类别,而多个预设意图则依照与预设意图类别之间的从属关系而纳入预设意图集,故而,当初步意图是一种意图类别时,步骤S103根据初步意图在预设的意图数据库中进行查询,即可匹配到与初步意图对应的预设意图类别,并将预设意图类别中的各个预设意图确定为候选意图,并形成意图候选集,而进一步基于映射关系,即可从意图数据库中获取与各个候选意图对应的各个候选词槽序列,并形成词槽序列候选集。

应理解,经由本申请一些实施例的步骤S201至步骤S204,先获取词槽配置指令、多个预设意图与多组预设词槽序列,再基于词槽配置指令,在意图数据库中构建预设词槽序列和预设意图的映射关系,进而基于多个预设意图,形成预设意图集,最终基于映射关系,形成与预设意图集对应的预设词槽序列集,对意图数据库中各类数据的对应关系进行了明确。因此本申请一些实施例的步骤S201至步骤S204,为步骤S103中根据初步意图在预设的意图数据库中进行查询提供了清晰的查询关系,以便于进一步基于意图候选集与词槽序列候选集对请求指令进行目标意图识别,得到明晰的目标意图。

在本申请一些实施例的步骤S103中,根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应。需要说明的是,预设的意图数据库中存储有多个预设意图与多组预设词槽序列,因此根据初步意图在预设的意图数据库中进行查询,能够查询到与初步意图匹配的预设意图以及预设词槽序列,故而进一步将与初步意图匹配成功的多个预设意图确定为多个候选意图,以及将与初步意图匹配成功的多组预设词槽序列确定为多组候选词槽序列,再进一步,即可基于多个候选意图生成意图候选集,并基于多组候选词槽序列生成词槽序列候选集。需要明确,由于意图候选集、词槽序列候选集与初步意图匹配,因此既可进一步以意图候选集与词槽序列候选集为参照,进一步对请求指令进行目标意图识别,从而得到与请求指令对应的目标意图,需要指出,目标意图识别是对初步意图进一步细化的过程,目标意图也更贴合请求指令中蕴含的真实意图。

参照图3,在一些实施例中,步骤S103可以包括但不限于步骤S301至步骤S302。

步骤S301,基于初步意图与意图预设集中的预设意图进行意图匹配,得到意图候选集,意图候选集包括多个候选意图,候选意图为与初步意图匹配成功的预设意图;

步骤S302,对每一候选意图和预设词槽序列预设集中的多组预设词槽序列进行匹配处理,得到词槽序列候选集,词槽序列候选集包含多个候选词槽序列,候选词槽序列为与候选意图匹配成功的预设词槽序列。

在本申请一些实施例的步骤S301中,基于初步意图与意图预设集中的预设意图进行意图匹配,得到意图候选集,意图候选集包括多个候选意图,候选意图为与初步意图匹配成功的预设意图。应理解,较为复杂的具体应用场景下对于智能设备意图识别的准确率更是有着较高的要求,例如保险、金融等专业领域中相关业务的应用,用户往往不太了解专业领域的专业知识,如若智能设备不能准确地识别用户的意图,不仅可能导致沟通效率低下,还可能错误引导用户进行操作,以至于造成财物损失等严重后果。一些较为具体的实施例中,保险领域基于其专业性质可以形成各种各样保险领域的预设意图,例如:保单核对、保险资质查询等,对应的,基于各种各样保险领域的预设意图也可以形成各种各样保险领域的预设词槽序列,例如{[保险人姓名],[保单号]}即可形成一组对应于保单核对业务的预设词槽序列,又例如{[保险人职业],[保险人身体状况],[保险人年龄]}即可形成一组对应于保险资质查询业务的预设词槽序列。因此,在获取词槽配置指令之后,即可将保单核对这一预设意图与{[保险人姓名],[保单号]}这一预设词槽序列对应、将保险资质查询这一预设意图与{[保险人职业],[保险人身体状况],[保险人年龄]}这一预设词槽序列对应,从而在意图数据库中构建预设词槽序列和预设意图的映射关系。需要明确,由于意图数据库中存储有多个预设意图,以及与各个预设意图对应的各组预设词槽序列,因此在步骤S301中,即可基于初步意图与意图预设集中的预设意图进行意图匹配,将意图预设集中与初步意图对应的多个预设意图确定为候选意图,从而得到意图候选集。应理解,意图预设集中可以预先按照各个预设意图的意图类别,将多个预设意图分入不同的预设数据组,然后以初步意图为依据匹配到与初步意图一致的意图类别,再进一步确定对应的预设数据组,即可将预设书记组中的各个预设意图确定为候选意图。需要指出,由于预设意图与预设词槽序列之间的映射关系是基于词槽配置指令在意图数据库中预先配置的,因此意图数据库中可以囊括有各种各样可能出现的具体业务需求,以至于初步意图能够匹配到与具体业务需求相关的候选意图。

在本申请一些实施例的步骤S302中,对每一候选意图和预设词槽序列预设集中的多组预设词槽序列进行匹配处理,得到词槽序列候选集,词槽序列候选集包含多个候选词槽序列,候选词槽序列为与候选意图匹配成功的预设词槽序列。需要说明的是,由于在获取词槽配置指令、多个预设意图与多组预设词槽序列之后,基于词槽配置指令对多个预设意图与多组预设词槽序列进行配置,构建了预设词槽序列和预设意图之间的映射关系,以使得预设词槽序列和预设意图之间的映射关系能够对应上各类业务需求。因此,基于意图候选集中的各个候选意图与意图数据库中存储的映射关系,即可将与各个候选意图匹配的各组预设词槽序列确定为候选词槽序列,从而形成词槽序列候选集。

应理解,经由本申请一些实施例的步骤S301至步骤S302,先基于初步意图与意图预设集中的预设意图进行意图匹配,得到意图候选集,再进一步对每一候选意图和预设词槽序列预设集中的多组预设词槽序列进行匹配处理,得到词槽序列候选集,对获取意图候选集与词槽序列候选集的执行步骤进行了明确。因此根据本申请一些实施例的步骤S301至步骤S302,利用意图数据库中预设的映射关系、多个预设意图、多个预设词槽序列,来应对各种各样可能出现的具体业务需求,以便于后续步骤中基于词槽序列候选集与意图候选集对请求指令进行目标意图识别,进一步在初步意图的基础上细化区分请求指令的真实意图,得到与请求指令对应的目标意图,提升意图识别过程中的准确度。

在本申请一些实施例的步骤S104中,基于词槽序列候选集与意图候选集对请求指令进行目标意图识别,得到与请求指令对应的目标意图。需要强调,目标意图识别是对初步意图进一步细化的过程,目标意图也更贴合请求指令中蕴含的真实意图。目标意图识别,具体是以词槽序列候选集与意图候选集为依据,对请求指令进一步意图识别的过程,需要明确,由于意图候选集中包含了多个与请求指令匹配的候选意图,并且词槽序列候选集中包含了多组与请求指令匹配的候选词槽序列,因此进一步将各组候选词槽序列的内容分别与请求指令中的内容进行比对,即可从更多组候选词槽序列中筛选出与请求指令更为匹配的目标词槽序列,从而更进一步,将目标词槽序列对应的候选意图确定为目标意图,即可完成对目标意图的识别。

参照图4,在一些实施例中,步骤S104可以包括但不限于步骤S401至步骤S402。

步骤S401,在词槽序列候选集内对请求指令进行词槽序列比对,得到目标词槽序列;

步骤S402,基于目标词槽序列在意图候选集内进行意图查询,得到目标意图。

本申请一些实施例的步骤S401中,在词槽序列候选集内对请求指令进行词槽序列比对,得到目标词槽序列。需要说明的是,目标词槽序列指的是多组候选词槽序列中与请求指令相似度最大的候选词槽序列,其中相似度计算的方式多种多样,可以包括但不限于通过计算请求指令与各组候选词槽序列之间的余弦相似度(Cosine Similarity)、计算请求指令与各组候选词槽序列之间的欧氏距离(Euclidean Distance)或者计算请求指令与各组候选词槽序列之间的曼哈顿距离(CityBlock Similarity)等多种类型的相似度计算方式,来得到多组候选词槽序列中与请求指令相似度最大的候选词槽序列,并将其作为目标词槽序列。

需要指出,在获取初步意图之后,根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,其中意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应。由于候选意图为与初步意图匹配成功的预设意图,而候选词槽序列为与候选意图匹配成功的预设词槽序列,并且目标意图识别是对初步意图进一步细化的过程,因此目标意图具体为意图候选集之中更贴合请求指令真实意图的候选意图。需要明确,在得到意图候选集与词槽序列候选集之后,词槽序列候选集的多组候选词槽序列可以提供词槽序列比对的参照基准,从请求指令中进一步获取能够用于进一步细化区分初步意图的目标词槽序列。

本申请一些实施例的步骤S402中,基于目标词槽序列在意图候选集内进行意图查询,得到目标意图。需要说明的是,由于候选意图与候选词槽序列一一对应,故而当经由词槽序列比对,得到目标词槽序列之后,即可依照候选意图与候选词槽序列一一对应的关系,确定多个候选意图中与目标词槽序列对应的目标意图。

根据本申请一些示例性的实施例,若请求指令中的内容为“ACDFGH”,那么对请求指令进行初步意图识别时,根据其中的[ADF]可以得到请求指令对应的初步意图,进一步根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,其中多组候选词槽序列包括[ABDF]、[ACDF]、[ADEF]等各种包含[ADF]的词槽序列,因此在词槽序列候选集内对请求指令进行词槽序列比对,即可得到目标词槽序列[ACDF],因此在候选意图与候选词槽序列一一对应基础上,进一步以目标词槽序列[ACDF]为线索在意图候选集内进行意图查询,可以得到与目标词槽序列[ACDF]相对应的目标意图。

根据本申请一些较为具体的实施例,若请求指令中的内容为“我想查询一下人身保险有哪些相关的保险业务”,那么对请求指令进行初步意图识别时,根据其中的[保险业务]可以得到请求指令对应的初步意图,即“目标用户想查询保险业务”,进一步根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,其中多组候选词槽序列包括[人身保险业务]、[财产保险业务]、[人寿保险业务]等各种包含[保险业务]的词槽序列,因此在词槽序列候选集内对请求指令进行词槽序列比对,即可得到目标词槽序列[人身保险业务],因此在候选意图与候选词槽序列一一对应基础上,进一步以目标词槽序列[人身保险业务]为线索在意图候选集内进行意图查询,可以得到与目标词槽序列[人身保险业务]相对应的目标意图,即“目标用户想查询人身保险业务”。

根据本申请另一些较为具体的实施例,若请求指令中的内容为“我想核对一下保险人X的保单信息,保单号是Y”,那么对请求指令进行初步意图识别时,根据其中的[核对]、[保单信息]可以得到请求指令对应的初步意图,即“目标用户想查询保单信息”,进一步根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,其中多组候选词槽序列包括[保险人姓名]、[保单号]等各种与核对保单对应的词槽序列,因此在词槽序列候选集内对请求指令进行词槽序列比对,即可得到目标词槽序列[保险人X]、[保单号Y],因此在候选意图与候选词槽序列一一对应基础上,进一步以目标词槽序列[保险人X]、[保单号Y]为线索在意图候选集内进行意图查询,可以得到与目标词槽序列[保险人X]、[保单号Y]相对应的目标意图,即“目标用户想核对保险人为X且保单号为Y的保单信息”。应理解,基于意图数据库预设的各类数据,本申请意图识别方法可以应用在各种各样较为复杂的具体应用场景,可以包括,但不限于上述举出的具体实施例。

应理解,基于意图数据库预设的各类数据,本申请意图识别方法可以应用在各种各样较为复杂的具体应用场景,可以包括,但不限于上述举出的具体实施例。

根据本申请实施例的步骤S401至步骤S402,先在词槽序列候选集内对请求指令进行词槽序列比对,得到目标词槽序列,再基于目标词槽序列在意图候选集内进行意图查询,得到目标意图。由于词槽的匹配主要是基于文本识别加以实现,因此先以词槽序列候选集对请求指令进行词槽序列比对,即可得到一个便于意图查询的线索,即目标词槽序列,因此进一步基于目标词槽序列在意图候选集内进行意图查询,得到目标意图,能够有效地提升意图识别过程的准确度。

参照图5,在一些实施例中,步骤S401可以包括,但不限于包括步骤S501至步骤S503:

步骤S501,获取词槽序列候选集内预设的多个关键字段;

步骤S502,基于多个关键字段在请求指令中进行查询,得到多个第一命中字段;

步骤S503,根据多个第一命中字段,形成目标词槽序列。

根据本申请实施例中的步骤S501,获取词槽序列候选集内预设的多个关键字段。需要说明的是,关键字段具体指多组候选词槽序列中用于区分对应候选意图的字段,例如若多组候选词槽序列包括[人身保险业务]、[财产保险业务]、[人寿保险业务]等各种包含[保险业务]的词槽序列,其中的[人身]、[财产]、[人寿]即为关键字段,用于区分各组候选词槽序列所对应的候选意图。应理解,由于意图数据库中的数据是预先设置的,因此针对不同的具体应用场景,可以对应配置有不同的关键字段,在此不一一赘述。

根据本申请实施例中的步骤S502至步骤S503,基于多个关键字段在请求指令中进行查询,得到多个第一命中字段,根据多个第一命中字段,形成目标词槽序列。需要说明的是,第一命中字段指的是基于多个关键字段在请求指令中进行查询得到的一类字段。例如若请求指令中的内容为“我想核对一下保险人X的保单信息,保单号是Y”,那么基于多个关键字段[保险人姓名]、[保单号]在请求指令中进行查询,得到多个第一命中字段[保险人X]、[保单号Y],再进一步基于多个第一命中字段[X]、[Y],形成目标词槽序列[保险人X]、[保单号Y]。

本申请实施例的步骤S501至步骤S503中,先获取词槽序列候选集内预设的多个关键字段,再基于多个关键字段在请求指令中进行查询,得到多个第一命中字段,进一步根据多个第一命中字段,形成目标词槽序列。由于关键字段指的是多组候选词槽序列中用于区分对应候选意图的字段,因此为了便于在词槽序列比对的过程中得到足以区分对应候选意图的目标词槽序列,一些较为优选的实施例中在候选词槽序列中预先配置有用于区分对应候选意图的关键字段,从而提升目标意图识别的准确率。

参照图6,在一些实施例中,步骤S401可以包括但不限于包括步骤S601至步骤S604:

步骤S601,当请求指令中无法查询到与关键字段匹配的第一命中字段时,从意图数据库中获取预设引导语句;

步骤S602,输出预设引导语句,以获取补充指令;

步骤S603,基于多个关键字段在补充指令中进行查询,得到多个第二命中字段;

步骤S604,根据多个第二命中字段,形成目标词槽序列。

本申请一些实施例的步骤S601至步骤S602中,当请求指令中无法查询到与关键字段匹配的第一命中字段时,从意图数据库中获取预设引导语句,输出预设引导语句,以获取补充指令。需要强调,请求指令为反映目标用户请求意图的指令,然而请求指令在一些情况下无法提供足以表面其真实意图的信息,此时虽然可以在初步意图识别过程中顺利得到初步意图,然而在进一步获取目标意图时则会遭遇障碍。本申请一些实施例中为了克服上述问题,会在意图数据库中预先给候选词槽序列配置预设引导语句,其中预设引导语句用于引导目标用户提供一些必要的词槽信息,即补充指令。应理解,补充指令的获取方式可以是通过输入设备获取(如键鼠、触摸屏、语音识别模块),也可以从预先设置的数据库中调用获取,还可以是通过网络实时通讯或者其他方式获取。应理解,补充指令的呈现形式多种多样,可以包括,但不限于是文字形式、语音形式或者其他呈现形式的指令。

本申请一些实施例的步骤S603至步骤S604中,基于多个关键字段在补充指令中进行查询,得到多个第二命中字段,根据多个第二命中字段,形成目标词槽序列。需要说明的是,第二命中字段是补充指令中用于区分对应候选意图的字段。

根据本申请一些较为具体的实施例,请求指令中虽然表明“我想核对一下保单信息”,可以根据[核对]、[保单信息]得出初步意图为“目标用户想核对保单信息”,可是却并未提供保险人姓名、保单号等一系列有区分度的信息,此时请求指令中无法查询到与关键字段匹配的第一命中字段,故而从意图数据库中获取预设引导语句“请提供与保单信息对应的保险人姓名、保单号”,进一步输出预设引导语句告知目标用户,当目标用户再次输入时即可获取补充指令,再进一步,基于多个关键字段在补充指令中进行查询,得到多个第二命中字段[保险人姓名]、[保单号],根据多个第二命中字段[保险人姓名]、[保单号],形成目标词槽序列。

需要明确,本申请实施例中的步骤S601至步骤S604当请求指令中无法查询到与关键字段匹配的第一命中字段时,从意图数据库中获取预设引导语句,并输出预设引导语句,以获取补充指令,进一步,基于多个关键字段在补充指令中进行查询,得到多个第二命中字段,再进一步,根据多个第二命中字段,形成目标词槽序列。基于意图数据库中配置给候选词槽序列的预设引导语句,可以进一步在请求指令缺失足量信息的基础上输出预设引导语句,从而进一步引导目标用户提供补充指令,以提升目标意图识别的准确率。

参照图7,在一些实施例中,步骤S601可以包括但不限于包括步骤S701至步骤S703:

步骤S701,当请求指令中无法查询到与关键字段匹配的第一命中字段时,获取请求指令对应的用户信息;

步骤S702,基于用户信息在预设的用户画像数据库中查询与关键字段匹配的第三命中字段;

步骤S703,当用户画像数据库中无法查询到与关键字段匹配的第三命中字段,从意图数据库中获取预设引导语句。

根据本申请实施例中的步骤S701至步骤S703,当请求指令中无法查询到与关键字段匹配的第一命中字段时,获取请求指令对应的用户信息,再基于用户信息在预设的用户画像数据库中查询与关键字段匹配的第三命中字段,进一步,当用户画像数据库中无法查询到与关键字段匹配的第三命中字段,从意图数据库中获取预设引导语句。需要说明的是,用户画像数据库指的是预先设置的、存储有目标用户画像数据的数据库,而第三命中字段指的是用户画像数据库的用户信息中与关键字段匹配的字段。应理解,用户画像数据库是在用户授权许可的情况下构建的数据库,存储有用户画像数据,也就是用户信息。需要指出,用户画像具体值得是根据用户的基础属性、社会属性、生活习惯等信息抽象出的一个标签化用户模型,而标签是通过对用户相关的各类信息进行分析高度精炼的特征符号。本申请一些较为优选的实施例中,在预设有用户画像数据库的情况下,若用户画像数据库中的用户信息能够与关键字段匹配,即可进一步得到第三命中字段。需要明确,由于用户画像数据库预先存储有用户信息,因此在用户授权许可的情况下,先从用户画像数据库中查询与关键字段匹配的第三命中字段,若用户画像数据库中无法查询到与关键字段匹配的第三命中字段,再从意图数据库中获取预设引导语句,可以进一步提升关键字段的获取效率,故而有利于本申请意图识别方法的实施效率。

根据本申请的第二方面实施例的人机交互方法,包括:

获取目标意图,目标意图根据本申请第一方面实施例中任一项的意图识别方法获取;

基于目标意图,执行与目标意图对应的应答动作。

根据本申请提供的一些实施例,单一的人机交互场景下(例如定车票、查消息)意图识别要求较低,通过通用的意图识别方法即可帮助智能设备理解请求指令的意图,然而较为复杂的人机交互场景下对于智能设备意图识别的准确率更是有着较高的要求,例如保险、金融等专业领域中相关业务的应用,用户往往不太了解专业领域的专业知识,如若智能设备不能准确地识别用户的意图,不仅可能导致沟通效率低下,还可能错误引导用户进行操作,以至于造成财物损失等严重后果。因此,本申请实施例中应用了第一方面实施例中任一项的意图识别方法获取目标意图,再进一步基于目标意图,执行与目标意图对应的应答动作,其中应答动作与具体的人机交互场景而对应。应理解,应答动作可以是输入一段语音,也可以是输出一段文字,还可以是显示一副画面或者各种类型的应答动作。应理解,通过本申请第二方面实施例的人机交互方法,可以在较为准确识别目标意图的基础上,应对较为复杂的人际交互场景,为目标用户提供了便利。

图8示出了本申请实施例提供的电子设备800。电子设备800包括:处理器801、存储器802及存储在存储器802上并可在处理器801上运行的计算机程序,计算机程序运行时用于执行上述的意图识别方法或者人机交互方法。

处理器801和存储器802可以通过总线或者其他方式连接。

存储器802作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序,如本申请实施例描述的意图识别方法或者人机交互方法。处理器801通过运行存储在存储器802中的非暂态软件程序以及指令,从而实现上述的意图识别方法或者人机交互方法。

存储器802可以包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需要的应用程序。存储数据区可存储执行上述的意图识别方法或者人机交互方法。此外,存储器802可以包括高速随机存取存储器802,还可以包括非暂态存储器802,例如至少一个储存设备存储器件、闪存器件或其他非暂态固态存储器件。在一些实施方式中,存储器802可选包括相对于处理器801远程设置的存储器802,这些远程存储器802可以通过网络连接至该电子设备800。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。

实现上述的意图识别方法或者人机交互方法所需的非暂态软件程序以及指令存储在存储器802中,当被一个或者多个处理器801执行时,执行上述的意图识别方法或者人机交互方法,例如,执行图1中的方法步骤S101至步骤S104、图2中的方法步骤S201至步骤S204、图3中的方法步骤S301至步骤S302、图4中的方法步骤S401至步骤S402、图5中的方法步骤S501至步骤S503、图6中的方法步骤S601至步骤S604、图7中的方法步骤S701至步骤S703。

本申请实施例还提供了计算机可读存储介质,存储有计算机可执行指令,计算机可执行指令用于执行上述的意图识别方法或者人机交互方法。

在一实施例中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个控制处理器执行,例如,执行图1中的方法步骤S101至步骤S104、图2中的方法步骤S201至步骤S204、图3中的方法步骤S301至步骤S302、图4中的方法步骤S401至步骤S402、图5中的方法步骤S501至步骤S503、图6中的方法步骤S601至步骤S604、图7中的方法步骤S701至步骤S703。

根据本申请实施例中的意图识别方法、人机交互方法、电子设备及存储介质,其通过获取请求指令,再对请求指令进行初步意图识别,得到与请求指令对应的初步意图,进一步,根据初步意图在预设的意图数据库中进行查询,得到意图候选集与词槽序列候选集,意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应,再进一步,基于词槽序列候选集与意图候选集对请求指令进行目标意图识别,得到与请求指令对应的目标意图。由于意图候选集包含多个候选意图,词槽序列候选集包含多组候选词槽序列,候选意图与候选词槽序列一一对应,因此基于词槽序列候选集与意图候选集,能够在初步意图的基础上进一步对请求指令进行目标意图识别,得到与请求指令对应的目标意图,从而提升意图识别准确率。基于上述意图识别方法所得到的目标意图,执行与目标意图对应的应答动作,可以在较为准确识别目标意图的基础上,应对较为复杂的人际交互场景,为目标用户提供了便利。

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

本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、储存设备存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包括计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。还应了解,本申请实施例提供的各种实施方式可以任意进行组合,以实现不同的技术效果。

以上是对本申请的较佳实施进行了具体说明,但本申请并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请精神的共享条件下还可作出种种等同的变形或替换,这些等同的变形或替换均包括在本申请权利要求所限定的范围内。

相关技术
  • 实体标注方法、意图识别方法及对应装置、计算机存储介质
  • 用户意图识别方法、设备及计算机可读存储介质
  • 用户意图识别方法、装置、终端及计算机可读存储介质
  • 语音识别方法、装置、电子设备及计算机可读存储介质
  • 票据识别方法及装置、电子设备及存储介质
  • 意图识别方法、意图识别装置、存储介质与电子设备
  • 文本意图分类模型训练方法、识别方法、装置、电子设备及存储介质
技术分类

06120115586799