一种解耦对话假设并执行的方法、装置及语音交互系统转让专利

申请号 : CN201811584406.3

文献号 : CN109712619B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 张瀚

申请人 : 出门问问信息科技有限公司

摘要 :

本发明实施例涉及语音识别技术领域,具体公开了一种解耦对话假设并执行的方法、装置及语音交互系统,该方法包括:接收用户输入的语音操作指令;对语音操作指令进行预处理,获取语音操作指令中包含的至少一个语义帧;分别根据每一个语义帧,生成一个对话假设;分别确定每一个对话假设对应的资源是否存在;当确定资源存在时,执行资源存在的对话假设,并为用户显示执行结果。通过该种方式,可以避免多个对话假设执行效果之间的冲突,而且还能够尽量保证对话假设具有较高的执行效率。避免语音交互系统再给用户带来便利同时,所造成的不必要的困扰。

权利要求 :

1.一种解耦对话假设并执行的方法,其特征在于,所述方法包括:接收用户输入的语音操作指令;

对所述语音操作指令进行预处理,获取所述语音操作指令中包含的至少一个语义帧;

分别根据每一个语义帧,生成一个对话假设;

分别确定每一个对话假设对应的资源是否存在;

当确定所述资源存在时,执行所述资源存在的对话假设,并为所述用户显示执行结果;

其中,所述分别确定每一个对话假设对应的资源是否存在,具体包括:分别根据每一个语义帧,从预建立的数据库中匹配与之对应的资源请求参数和资源询问对象;

向所述资源询问对象发送询问请求,所述询问请求中携带资源请求参数;

接收所述资源询问对象反馈的响应信息,所述响应信息用于指示与所述资源请求参数对应的资源是否存在。

2.根据权利要求1所述的方法,其特征在于,所述对所述语音操作指令进行预处理,获取所述语音操作指令中包含的至少一个语义帧,具体包括:对所述语音操作指令进行语音识别,获取文本数据;

对所述文本数据进行语义理解,提取所述文本数据中包含的至少一个语义帧。

3.根据权利要求1所述的方法,其特征在于,所述当确定所述资源存在时,执行所述资源存在的对话假设,并为所述用户显示执行结果,具体包括:当确定所述资源存在时,向所述资源询问对象请求所述资源;

接收所述资源询问对象反馈的资源后,根据所述资源执行对话假设,并为所述用户显示执行结果。

4.根据权利要求1所述的方法,其特征在于,当确定所述资源不存在时,放弃执行资源不存在的对话假设。

5.一种解耦对话假设并执行的装置,其特征在于,所述装置包括:接收单元,用于接收用户输入的语音操作指令;

处理单元,用于对所述语音操作指令进行预处理,获取所述语音操作指令中包含的至少一个语义帧;分别根据每一个语义帧,生成一个对话假设;分别确定每一个对话假设对应的资源是否存在;所述处理单元,具体用于:分别根据每一个语义帧,从预建立的数据库中匹配与之对应的资源请求参数和资源询问对象;向所述资源询问对象发送询问请求,所述询问请求中携带资源请求参数;接收所述资源询问对象反馈的响应信息,所述响应信息用于指示与所述资源请求参数对应的资源是否存在;

执行单元,用于当确定所述资源存在时,执行所述资源存在的对话假设;所述执行单元具体用于,当所述处理单元确定所述资源存在时,向所述资源询问对象请求所述资源;接收所述资源询问对象反馈的资源后,根据所述资源执行对话假设;

显示单元,用于为所述用户显示执行结果。

6.一种语音交互系统,其特征在于,所述系统包括:语音采集器、处理器、存储器和显示器;

所述语音采集器,用于接收用户输入的语音操作指令;

所述存储器,用于存储一个或多个程序指令;

所述一个或多个程序指令被所述处理器运行,用以执行如权利要求1-4任一项所述的方法;

显示器,用于为所述用户显示执行结果。

7.一种计算机存储介质,其特征在于,所述计算机存储介质中包含一个或多个程序指令,所述一个或多个程序指令用于被一种语音交互系统执行如权利要求1-4任一项所述的方法。

说明书 :

一种解耦对话假设并执行的方法、装置及语音交互系统

技术领域

[0001] 本发明实施例涉及语音识别技术领域,具体涉及一种解耦对话假设并执行的方法、装置及语音交互系统。

背景技术

[0002] 随着科学技术的不断发展,智能设备越来越普及。智能语音交互设备也随之进入人们的生活中。用户可以语音输入操作指令,语音交互设备就可以执行相应的操作指令。如此一来,给用户的生活带来了很大便利。但是,随着语音交互设备给用户带来的便捷同时,也给用户造成了困扰。
[0003] 智能语音设备对用户的语音输入有时候会存在误识别的情况,比如用户说:“设置个提醒”,语音交互系统会反问用户:“请问您需要设置的提醒内容是什么呢?”。而用户可能因为其他事情而耽搁,并没有直接回复该问题。过了很久之后,用户又说了一句“去附近的餐厅”。语音交互系统此时则会做两种操作,第一种为用户导航去附近的餐厅,另一种则是语音交互系统设置了一个以“去附近的餐厅”为内容的提醒。当用户后续打开设置提醒时,会很奇怪怎么突然有这么一个提醒呢?
[0004] 这仅仅是一个简单的例子,实际上语音交互系统可能还会给用户造成其他的困扰。那么,如何才能够避免这种困扰的发生,则成为本申请亟待解决的技术问题。

发明内容

[0005] 为此,本发明实施例提供一种解耦对话假设并执行的方法、装置及语音交互系统,以解决现有技术中语音交互系统在执行用户输入的语音操作指令,为用户带来便利的同时,还可能给用户造成不必要困扰的问题。
[0006] 为了实现上述目的,本发明的实施方式提供如下技术方案:
[0007] 在本发明的实施方式的第一方面中,提供了一种解耦对话假设并执行的方法,包括:
[0008] 接收用户输入的语音操作指令;
[0009] 对语音操作指令进行预处理,获取语音操作指令中包含的至少一个语义帧;
[0010] 分别根据每一个语义帧,生成一个对话假设;
[0011] 分别确定每一个对话假设对应的资源是否存在;
[0012] 当确定资源存在时,执行资源存在的对话假设,并为用户显示执行结果。
[0013] 在本发明的一个实施例中,对语音操作指令进行预处理,获取语音操作指令中包含的至少一个语义帧,具体包括:
[0014] 对语音操作指令进行语音识别,获取文本数据;
[0015] 对文本数据进行语义理解,提取文本数据中包含的至少一个语义帧。
[0016] 在本发明的另一实施例中,分别确定每一个对话假设对应的资源是否存在,具体包括:
[0017] 分别根据每一个语义帧,从预建立的数据库中匹配与之对应的资源请求参数和资源询问对象;
[0018] 向资源询问对象发送询问请求,询问请求中携带资源请求参数;
[0019] 接收资源询问对象反馈的响应信息,响应信息用于指示与资源请求参数对应的资源是否存在。
[0020] 在本发明的又一个实施例中,当确定资源存在时,执行资源存在的对话假设,并为用户显示执行结果,具体包括:
[0021] 当确定资源存在时,向资源询问对象请求资源;
[0022] 接收资源询问对象反馈的资源后,根据资源执行对话假设,并为用户显示执行结果。
[0023] 在本发明的又一个实施例中,当确定资源不存在时,放弃执行资源不存在的对话假设。
[0024] 在本发明的实施方式的第二方面中,提供了一种解耦对话假设并执行的装置,包括:接收单元,用于接收用户输入的语音操作指令;
[0025] 处理单元,用于对语音操作指令进行预处理,获取语音操作指令中包含的至少一个语义帧;分别根据每一个语义帧,生成一个对话假设;分别确定每一个对话假设对应的资源是否存在;
[0026] 执行单元,用于当确定资源存在时,执行资源存在的对话假设;
[0027] 显示单元,用于为用户显示执行结果。
[0028] 在本发明的一个实施例中,处理单元,具体用于:对语音操作指令进行语音识别,获取文本数据;
[0029] 对文本数据进行语义理解,提取文本数据中包含的至少一个语义帧。
[0030] 在本发明的另一实施例中,处理单元,具体用于:
[0031] 分别根据每一个语义帧,从预建立的数据库中匹配与之对应的资源请求参数和资源询问对象;
[0032] 向资源询问对象发送询问请求,询问请求中携带资源请求参数;
[0033] 接收资源询问对象反馈的响应信息,响应信息用于指示与资源请求参数对应的资源是否存在。
[0034] 在本发明的又一个实施例中,执行单元具体用于,当处理单元确定资源存在时,向资源询问对象请求资源;
[0035] 接收资源询问对象反馈的资源后,根据资源执行对话假设。
[0036] 在本发明的一个实施例中,所述执行单元还用于,当处理单元确定资源不存在时,放弃执行资源不存在的对话假设。
[0037] 在本发明的实施方式的第三方面中,提供了一种语音交互系统,包括:
[0038] 语音采集器、处理器、存储器和显示器;
[0039] 语音采集器,用于接收用户输入的语音操作指令;
[0040] 存储器,用于存储一个或多个程序指令;
[0041] 一个或多个程序指令被处理器运行,用以执行如上所述的一种解耦对话假设并执行的方法中任一项方法步骤;
[0042] 显示器,用于为用户显示执行结果。
[0043] 在本发明的实施方式的第四方面中,提供了一种计算机存储介质,计算机存储介质中包含一个或多个程序指令,一个或多个程序指令用于被一种语音交互系统执行如上一种解耦对话假设并执行的方法中的任一方法步骤。
[0044] 根据本发明的实施方式,具有如下优点:在接收到用户输入的语音操作指令后,对语音操作指令进行预处理生成语义帧;根据语义帧生成对话假设后,并非直接执行所有的对话假设,而是将对话生成和对话执行之间进行解耦,事先确定与对话假设对应的资源是否存在。只有资源存在的情况下才会执行对话假设,并展示执行结果给用户。通过该种方式,可以避免多个对话假设执行效果之间的冲突,而且还能够尽量保证对话假设具有较高的执行效率。避免语音交互系统再给用户带来便利同时,所造成的不必要的困扰。

附图说明

[0045] 为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
[0046] 图1为本发明的一实施例提供的一种解耦对话假设并执行的方法流程示意图;
[0047] 图2为本发明的另一实施例提供的解耦对话假设并执行的装置结构示意图;
[0048] 图3为本发明的另一实施例提供的语音交互系统结构示意图。

具体实施方式

[0049] 以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0050] 本发明实施例1提供了一种解耦对话假设并执行的方法,该方法主要应用于用户和智能语音交互设备进行交互的应用场景,具体如图1所示,该方法可以包括:
[0051] 步骤110,接收用户输入的语音操作指令。
[0052] 步骤120,对语音操作指令进行预处理,获取语音操作指令中包含的至少一个语义帧。
[0053] 具体的,对语音操作指令进行预处理可以包括对语音操作指令进行语音识别,获取文本数据。
[0054] 然后,对文本数据进行语义理解,提取文本数据中包含的至少一个语义帧。
[0055] 具体的,语义理解实际就是在文本数据中提取出用户的意图及语义槽。获取用户意图可以通过机器学习算法-逻辑回归算法来实现。而语义槽则可以通过机器学习算法中的条件随机场算法模型获取。利用这两种算法分别获取用户意图和语义槽的过程均属于现有比较成熟的技术,且不是本申请所要研究的重点,因此这里将不做过多赘述。
[0056] 这里对用户意图做一个解释说明,用户意图:也即是用户想要语音交互系统完成的任务。例如,用户通过语音输入“今天北京的天气怎么样?”,那么用户的意图就是“查天气”。而语义槽则是意图对应的一些参数。例如查天气的任务中就包含参数“时间和地点”。在上一个例子中,语义槽则可以是“时间:今天;地点:北京”。
[0057] 语义帧是语义理解的结果。意图和与之对应的语义槽共同构成了语义帧。在用户输入的语音操作指令中,可以包括一个或多个语义帧。
[0058] 步骤130,分别根据每一个语义帧,生成一个对话假设。
[0059] 具体的,对话假设,也就是一个语义帧对应的一个假设任务。即,从理论上而言可以执行的一个任务。对话假设由语音交互系统结合一个语义帧生成。例如用户说的是“设置一个提醒,查一下今天北京的天气”。
[0060] 那么,这里面包括两个意图,一个是设置一个提醒,对应的语义帧是:查一下今天北京的天气;一个意图是查天气。语义帧是:今天、北京。
[0061] 那么,将会出现两个对话假设,一个对话假设是设置一个提醒。一个对话假设是查一下今天的天气。
[0062] 既然存在两个对话假设,为了避免执行效果的冲突。系统将不会将这两个对话假设都去执行一遍。而是要看哪一个对话假设的资源存在,则执行哪一个对话假设。也即如步骤140即将说明的内容。
[0063] 步骤140,分别确定每一个对话假设对应的资源是否存在。
[0064] 步骤150,当确定资源存在时,执行资源存在的对话假设,并为用户显示执行结果。
[0065] 资源,也即是一个对话假设所必须的外部条件。例如,买车票,需要有相应的库存。查天气,需要有数据库里对应的天气信息。而这里的车票库存、天气信息都是相应的资源。
[0066] 如上文所介绍的,既然生成了两个对话假设,则需要分别确定每一个对话假设对应的资源是否存在。
[0067] 而具体确定的过程则是:分别根据每一个语义帧,从预建立的数据库中匹配与之对应的资源请求参数和资源询问对象。其中,预建立的数据库中包含对话假设模板,也就是工作人员预先定义好的对话假设模板,该对话假设模板中包含语音帧的种类、所需要的资源请求参数以及资源询问对象。例如查今天北京的天气,那么语义帧就是查天气,所需要的资源请求参数包括:地点和时间。资源询问对象则是可以获取天气信息的应用程序,例如墨迹天气APP。可选的,还可以包括资源的数量,例如该例子中资源的数量则是2个(地点和时间)。
[0068] 然后,向资源询问对象发送询问请求,该询问请求中携带资源请求参数。如果还包括资源数量的话,一并在询问请求中携带。
[0069] 接收资源询问对象反馈的响应信息,该响应信息用于指示与资源请求参数的对应的资源是否存在。
[0070] 资源询问对象可以在接收到询问请求后,首先验证询问请求的合法性。即,验证询问请求是否符合常规逻辑。例如,如果用户通过天气查询软件查询“今天月球的天气如何?”,那么很明显,不符合常规逻辑。可能是语音交互系统在识别用户语音时出现了误识别。
[0071] 只有在询问请求合乎常规逻辑时,例如,上文说的例子,查今天北京的天气时,资源包括地点和时间,资源是全的,而且是符合常规逻辑的。那么,查天气的应用程序就可以根据这两个参数获取当天北京的天气信息,也即是满足资源查询条件,则可以反馈确认响应信息。
[0072] 而如果是设置提醒的对话假设,用户只说了设置提醒,但是并没有说明什么时候提醒用户。也即是,缺乏资源。那么,设置提醒的APP将反馈一个否定的响应信息。
[0073] 如此一来,语音交互系统就可以确定设置提醒的对话假设资源不存在,无法执行,则放弃执行资源不存在的对话假设。而查天气的资源存在,可以执行查天气的对话假设。则继续执行,包括:
[0074] 当语音交互系统确定资源存在时,向资源询问对象请求资源。
[0075] 接收资源询问对象反馈的资源后,根据资源执行对话假设,并为用户显示执行结果。
[0076] 本发明实施例提供的一种解耦对话假设并执行的方法,在接收到用户输入的语音操作指令后,对语音操作指令进行预处理生成语义帧;根据语义帧生成对话假设后,并非直接执行所有的对话假设,而是将对话生成和对话执行之间进行解耦,事先确定与对话假设对应的资源是否存在。只有资源存在的情况下才会执行对话假设,并展示执行结果给用户。通过该种方式,可以避免多个对话假设执行效果之间的冲突,而且还能够尽量保证对话假设具有较高的执行效率。避免语音交互系统再给用户带来便利同时,所造成的不必要的困扰。
[0077] 与上述实施例1对应的,本发明实施例2还提供了一种解耦对话假设并执行的装置,具体如图2所示,该装置包括:接收单元201、处理单元202、执行单元203和显示单元204。
[0078] 接收单元201,用于接收用户输入的语音操作指令;
[0079] 处理单元202,用于对语音操作指令进行预处理,获取语音操作指令中包含的至少一个语义帧;分别根据每一个语义帧,生成一个对话假设;分别确定每一个对话假设对应的资源是否存在;
[0080] 执行单元203,用于当确定资源存在时,执行资源存在的对话假设;
[0081] 显示单元204,用于为用户显示执行结果。
[0082] 可选的,处理单元202,具体用于:对语音操作指令进行语音识别,获取文本数据;
[0083] 对文本数据进行语义理解,提取文本数据中包含的至少一个语义帧。
[0084] 可选的,处理单元202,具体用于:分别根据每一个语义帧,从预建立的数据库中匹配与之对应的资源请求参数和资源询问对象;
[0085] 向资源询问对象发送询问请求,询问请求中携带资源请求参数;
[0086] 接收资源询问对象反馈的响应信息,响应信息用于指示与资源请求参数对应的资源是否存在。
[0087] 可选的,执行单元203具体用于,当处理单元202确定资源存在时,向资源询问对象请求资源;
[0088] 接收资源询问对象反馈的资源后,根据资源执行对话假设。
[0089] 可选的,执行单元203还用于,当处理单元202确定资源不存在时,放弃执行资源不存在的对话假设。
[0090] 本发明实施例提供的一种解耦对话假设并执行的装置中各部件所执行的功能均已在上述实施例一种解耦对话假设并执行的方法流程中做了详细介绍,因此这里不做过多赘述。
[0091] 本发明实施例提供的一种解耦对话假设并执行的装置,在接收到用户输入的语音操作指令后,对语音操作指令进行预处理生成语义帧;根据语义帧生成对话假设后,并非直接执行所有的对话假设,而是将对话生成和对话执行之间进行解耦,事先确定与对话假设对应的资源是否存在。只有资源存在的情况下才会执行对话假设,并展示执行结果给用户。通过该种方式,可以避免多个对话假设执行效果之间的冲突,而且还能够尽量保证对话假设具有较高的执行效率。避免语音交互系统再给用户带来便利同时,所造成的不必要的困扰。
[0092] 与上述实施例相对应的,本发明实施例3还提供了一种语音交互系统,具体如图3所示,该系统包括:语音采集器301、处理器302、显示器303以及存储器304。
[0093] 语音采集器301,用于接收用户输入的语音操作指令;
[0094] 存储器304,用于存储一个或多个程序指令;
[0095] 一个或多个程序指令被处理器302运行,用以执行如上实施例所述的一种解耦对话假设并执行的方法中任一项方法步骤;
[0096] 显示器303,用于为用户显示执行结果。
[0097] 可选的,该系统还包括:通信接口305,用于建立语音交互系统和资源询问对象之间的通信连接。
[0098] 本发明实施例提供的一种解耦对话假设并执行的系统中各部件所执行的功能均已在上述实施例一种解耦对话假设并执行的方法流程中做了详细介绍,因此这里不做过多赘述。
[0099] 本发明实施例提供的一种解耦对话假设并执行的系统,在接收到用户输入的语音操作指令后,对语音操作指令进行预处理生成语义帧;根据语义帧生成对话假设后,并非直接执行所有的对话假设,而是将对话生成和对话执行之间进行解耦,事先确定与对话假设对应的资源是否存在。只有资源存在的情况下才会执行对话假设,并展示执行结果给用户。通过该种方式,可以避免多个对话假设执行效果之间的冲突,而且还能够尽量保证对话假设具有较高的执行效率。避免语音交互系统再给用户带来便利同时,所造成的不必要的困扰。
[0100] 与上述实施例相对应的,本发明实施例还提供了一种计算机存储介质,该计算机存储介质中包含一个或多个程序指令。其中,一个或多个程序指令用于被一种语音交互系统执行如上所介绍的一种解耦对话假设并执行的方法。
[0101] 虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。