语音交互方法及电子设备与流程

文档序号:33620461发布日期:2023-03-25 11:27阅读:45来源:国知局
语音交互方法及电子设备与流程

1.本技术实施例涉及人工智能(artificial interlligence,ai)领域,尤其涉及一种语音交互的方法及电子设备。


背景技术:

2.随着语音识别技术的发展,许多电子设备已具备语音交互功能,支持用户通过语音指令操控电子设备。上述电子设备中安装了语音助手(例如siri、小爱同学、小e等),用户可以通过触发语音助手实现打开目标应用、播放音乐和查询天气等操作。
3.语音助手提供的语音交互功能,需要语音助手对用户语音指令进行准确识别才能执行用户想要的操作。语音助手能识别的语音指令通常是其内部的语音识别算法或模型经过训练后所能支持的语音指令,但有时用户发出的语音指令可能不同于语音助手能识别的语音指令,容易导致语音交互失败,用户体验差。


技术实现要素:

4.本技术实施例公开了一种语音交互方法及电子设备,可以提高对语音指令识别的能力,提升用户使用体验。
5.第一方面,本技术实施例提供一种语音交互方法,该方法可以应用于语音助手也可以应用于电子设备,该方法包括接收第一语音指令,第一语音指令无法被有效识别,接收第二语音指令,并建立第二语音指令与第一语音指令的关联关系,第二语音指令对应第一响应,接收第三语音指令,其中,第三语音指令与第一语音指令的内容或发音相同,响应于第三语音指令,执行与第二语音指令相同的第一响应。
6.上述第一语音指令无法被有效识别包括无法识别第一语音指令的语义(如意图)。示例地,第一语音指令为“飚个歌吧”,电子设备上的语音助手无法识别到该第一语音指令的意图为“播放音乐”,则电子设备无法执行相应的操作。上述第一语音指令无法被有效识别还包括错误识别第一语音指令的语义(如意图)。示例性地,第一语音指令为“飚个歌吧”,其对应的意图为“播放音乐”,但电子设备上的语音助手错误识别该第一语音指令的意图为“开灯”,电子设备执行开灯操作。
7.上述第一响应即第一操作。示例性地,第一语音指令“飚个歌吧”,对应的意图为“播放音乐”,则其对应的第一响应为“播放音乐”。电子设备执行第一响应也即电子设备执行第一操作,具体可以包括,电子设备的语音助手对用户语音指令进行语音识别、语义理解等过程,确定出用户意图为播放音乐,并得到播放音乐的执行指令,电子设备响应该执行指令播音音乐。
8.基于上述方案,在语音助手或电子设备无法识别或无法正确识别用户输出的第一语音指令对应的用户意图时,语音助手或电子设备继续使用拾音设备(如麦克风)采集用户的语音,以接收用户输入的用于解释或复述第一语音指令的第二语音指令,该第二语音指令能被有效识别,即能正确识别出该第二语音指令的用户意图。在正确识别出第二语音指
令后,执行第二语音指令对应的第一响应。建立第二语音指令与第一语音指令的关联关系,根据该关联关系可以识别与第一语音指令的内容或发音相同的第三语音指令,执行与第二语音指令相同的第一响应。提高语音助手对语音指令识别的能力,提升用户使用体验,提供更懂用户的个性化的语音助手。
9.在第一方面的一种可能的实现方式中,接收第二语音指令包括:在无法生成第一语音指令的识别结果时,建立与第一语音指令相关联的学习会话;在学习会话期间,接收第二语音指令。相对于现有技术中的语音助手无法识别用户输出的第一语音指令时,就会结束对第一语音指令的处理,终止交互流程。现有技术中的语音助手对第一语音指令对应用户意图识别错误时,用户无法修正语音助手对第一语音指令的真实用户意图识别,本技术实施例提供的语音交互方法通过建立与第一语音指令相关联的学习会话,为用户提供一个解释流程,用户可以继续使用语音指令与电子设备进行语音交互,以通过另一语言表达内容向电子设备或语音助手再次表达上一条第一语音指令的内容,即用户换一种说法向电子设备或语音助手表达或解释上一第一语音指令的语义,以便语音助手能理解第一语音指令对应的用户意图。
10.在第一方面的一种可能的实现方式中,建立第一语音指令与第二语音指令的关联关系包括:检测到在学习会话期间接收到第二语音指令,建立第一语音指令与第二语音指令的关联关系。在建立学习会话期间,可以默认接收到的第二语音指令是用于解释第一语音指令的,则可以直接建立第一语音指令与第二语音指令的关联关系,提高语音交互效率。
11.在第一方面的一种可能的实现方式中,建立第一语音指令与第二语音指令的关联关系包括:检测触发指令;在检测到触发指令时,将在学习会话期间接收到的第二语音指令与第一语音指令建立关联关系。为了避免错误将与第一语音指令无关的语音指令作为对第一语音指令的解释,进而建立第一语音指令与第二语音指令的关系,则可以在接收到触发指令后才将第二语音指令与第一语音指令建立关联关系,提高关联的准确度。
12.在第一方面的一种可能的实现方式中,在学习会话期间,接收第二语音指令包括:在学习会话期间,接收语音输入,其中语音输入包括第二语音指令和用于解释第一语音指令的第一语音内容;则建立第一语音指令与第二语音指令的关联关系包括:在检测到第一语音内容时,建立第二语音指令与第一语音指令的关联关系。
13.上述第一语音内容可以为预设模板,如“我的意思是”或“我想表达的是”等。则语音助手在识别到“我的意思是”或“我想表达的是”,则认为该语音输入中包括用于解释第一语音指令的第二语音指令。通过可以将预设模板后的语音指令作为第二语音指令。
14.上述第一语音内容还可以为更灵活的语言表达,如“不是不是,应该是”或,“不是这个意思,是”等。即不需要根据模板匹配,语音助手可以通过识别第一语音内容的用户意图来确定该语音输入是否存在用于解释第一语音指令的第二语音指令。
15.基于上述方案,用户在语音交互的过程中即可以解释未被电子设备或语音助手有效识别的第一语音指令,提高了用户使用体验,更加智能化与人性化。
16.在第一方面的一种可能的实现方式中,在接收第二语音指令之前,还包括:输出反馈以引导用户继续输入语音指令。通过输出反馈引导用户继续交互,便于用户了解与使用本技术实施例提供的语音交互方法。
17.在第一方面的一种可能的实现方式中,在接收第二语音指令之前还包括:响应于
第一语音指令,执行第二响应,其中第二响应不同于第一响应。上述第二响应即语音助手错误识别用户意图后所执行的操作,通过电子设备执行第二响应,用户可以根据电子设备执行的第二响应了解到用户识别错误。该第二响应还可以包括执行完操作之后的输出反馈。如第一语音指令为“飚个歌吧”,其对应的意图为“播放音乐”,但电子设备上的语音助手错误识别该第一语音指令的意图为“开灯”,则第二响应包括电子设备把灯打开,向用户反馈“好的,已开灯”。
18.在第一方面的一种可能的实现方式中,建立第一语音指令与第二语音指令的关联关系包括:检测触发指令;在检测到触发指令时,建立第二语音指令与第一语音指令的关联关系。在语音助手识别错误后,用户主动去触发,告知语音助手识别错误,以建立第二语音指令与第一语音指令的关联关系,引导语音助手正确识别。
19.在第一方面的一种可能的实现方式中,接收第二语音指令包括:接收用户的语音输入,其中语音输入包括第二语音指令和用于指示第一语音指令的识别结果存在错误的第二语音内容。在第一方面的一种可能的实现方式中,建立第一语音指令与第二语音指令的关联关系包括:在检测到第二语音内容时,建立第二语音指令与第一语音指令的关联关系。
20.上述第二语音内容可以为预设模板,如“我的意思是”或“我想表达的是”等。则语音助手在识别到“我的意思是”或“我想表达的是”,则认为该语音输入中包括用于修正第一语音指令的第二语音指令。通过可以将预设模板后的语音指令作为第二语音指令。
21.上述第二语音内容还可以为更灵活的语言表达,如“不是不是,应该是”或,“不是这个意思,是”等。即不需要根据模板匹配,语音助手可以通过识别第一语音内容的用户意图来确定该语音输入是否存在用于修正第一语音指令的第二语音指令。
22.基于上述方案,用户在语音交互的过程中即可以修正被电子设备或语音助手有效识别的第一语音指令,提高了用户使用体验,更加智能化与人性化。
23.在第一方面的一种可能的实现方式中,建立第一语音指令与第二语音指令的关联关系包括:将第一语音指令等同于第二语音指令,或,将第二语音指令的第一响应与第一语音指令相关联。即直接将第一语音指令的内容如“飚个歌吧”等同于第二语音指令“播放音乐”,或,将第二语音指令的第一响应“播放音乐”与第一语音指令“飚个歌吧”关联。在下回接收到第三语音指令“飚个歌吧”,则可以直接将第三语音指令“飚个歌吧”等同于“播放音乐”,即对第三语音指令进行识别处理时,是以“播放音乐”进行处理。或,在下回接收到第三语音指令“飚个歌吧”,直接得到第三语音指令“飚个歌吧”的第一响应为“播放音乐”,电子设备直接执行“播放音乐”。
24.在第一方面的一种可能的实现方式中,语音交互方法还包括:根据关联关系生成训练数据集;将训练数据集用于训练语音助手的模型,以使得语音助手能处理适配用户语言习惯的语音指令。通过关联关系可以生成更多关于用户语言习惯表达的训练数据集,使用这些训练数据集训练语音助手,以使得语音助手能处理适配用户语言习惯的语音指令。
25.在第一方面的一种可能的实现方式中,根据关联关系生成训练数据集包括:将关联关系上传至云服务器;接收群体用户上传的关联关系,以生成适配群体用户语言习惯的训练数据集。通过关联关系可以生成更多符合群体用户语言习惯表达的训练数据集,使用这些训练数据集训练语音助手,以使得语音助手能处理适配群体用户语言习惯的语音指令。
26.在第一方面的一种可能的实现方式中,语音交互方法还包括:接收第四语音指令,其中第四语音指令与第一语音指令的内容或发音不完全相同,第四语音指令与第一语音指令的内容或发音的相似度在第一范围内,响应于第四语音指令,执行与第二语音指令相同的第一响应。
27.其中,第一范围可以为基于语音助手鲁棒性判定第四语音指令与第一语音指令为实质相同的语音指令的范围,也可以为语音助手判定第四语音指令与第一语音指令相似的相似度范围。如基于语义助手鲁棒性,可以将第四语音指令“飚首歌吧”识别为与第一语音指令“飚个歌吧”是实质相同的语音指令。
28.在其中一种可能实现方式中,在接收第二语音指令之后,可以接收到第三语音指令或第四语音指令。在其中一种可能实现方式中,在接收到第二语音指令后,可以接收到第三语音指令和第四语音指令,如先接收到第三语音指令后再接收第四语音指令,或先接收第四语音指令再接收第三语音指令。
29.第二方面,本技术实施例提供一种计算机可读存储介质,计算机可读存储介质包含用于执行上述任一项的方法的计算机可执行指令。
30.第三方面,本技术实施例提供一种系统,系统包括:第二方面提供的计算机可读存储介质;和能够执行计算机可执行指令的处理器。
31.第四方面,本技术实施例提供一种电子设备,包括:至少一个存储器,用于存储程序;和至少一个处理器,用于执行存储器存储的程序,当程序被处理器执行时,以使得电子设备执行如上任一的方法。
32.上述其他方面对应的有益效果,可以参见关于方法方面的有益效果的描述,此处不予赘述。
附图说明
33.图1为本技术实施例提供的一种电子设备的结构示意图。
34.图2为本技术实施例提供的一种语音助手的结构示意图。
35.图3为本技术实施例提供的一种语音交互方法的流程示意图。
36.图4为本技术实施例提供的一种语音助手唤醒场景示意图。
37.图5(a)-5(b)为本技术实施例提供的一种第一语音指令交互场景示意图。
38.图6(a)-6(d)为本技术实施例提供的一种对第一语音指令反馈的场景示意图。
39.图7(a)-7(c)为本技术实施例提供的一种第二语音指令交互场景示意图。
40.图8为本技术实施例提供的一种对第二语音指令反馈的场景示意图。
41.图9(a)-9(b)为本技术实施例提供的一种第三语音指令交互场景示意图。
42.图10为本技术实施例提供的一种关联表应用场景示意图。
43.图11为本技术实施例提供的另一种关联表应用场景示意图。
44.图12为本技术实施例提供的另一种关联表应用场景示意图。
45.图13为本技术实施例提供的另一种关联表应用场景示意图。
46.图14为本技术实施例提供的另一种关联表应用场景示意图。
具体实施方式
47.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行描述。其中,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
48.以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
49.在本技术实施例中,“示例性地”、“例如”或“在一些示例中”等词用于表示作例子、例证或说明。本技术实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”、“例如”或“在一些示例中”等词旨在以具体方式呈现相关概念。
50.如上述,用户发出的语音指令为语音助手不能识别的语音指令将导致差的用户体验。本技术实施例提供了一种语音交互方法,语音助手无法识别用户输出的语音指令时,用户可以使用语音助手能识别的语音指令对该无法识别语音指令进行解释,语音助手可根据该解释改善对该无法识别语音指令的识别,实现语音助手自动适配拓展语音指令的识别能力。
51.本技术实施例中的电子设备可以为便携式计算机(如手机)、笔记本电脑、个人计算机(personal computer,pc)、可穿戴电子设备(如智能手表)、平板电脑、智能家居设备、增强现实(augmented reality,ar)\虚拟现实(virtual reality,vr)设备、人工智能(artificial intelligence,ai)终端(例如智能机器人)、车载电脑等,以下实施例对电子设备的具体形式不做特殊限制。
52.示例性的,图1示出了电子设备的结构示意图。
53.电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,sim)卡接口195等。
54.可以理解的是,本技术实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
55.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器
(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
56.在本技术实施例中,dsp可以实时监测语音数据,当dsp监测到的语音数据与电子设备中注册的唤醒词的相似度满足预设条件时,便可以将该语音数据交给ap。由ap对上述语音数据进行文本校验和声纹校验。当ap确定该语音数据与用户注册的唤醒词匹配时,电子设备便可以开启语音助手。
57.控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
58.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
59.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
60.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141可接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。
61.电源管理模块141可用于监测电池容量,电池循环次数,电池充电电压,电池放电电压,电池健康状态(例如漏电,阻抗)等性能参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
62.电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
63.天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
64.移动通信模块150可以提供应用在电子设备100上的包括2g/3g/4g/5g等无线通信的解决方案。移动通信模块150可以包括一个或多个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,lna)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
65.调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解
调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170a,受话器170b等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
66.无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。
67.无线通信模块160可以是集成一个或多个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
68.在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,gsm),通用分组无线服务(general packet radio service,gprs),码分多址接入(code division multiple access,cdma),宽带码分多址(wideband code division multiple access,wcdma),时分码分多址(time-division code division multiple access,td-scdma),长期演进(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技术等。所述gnss可以包括全球卫星定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,glonass),北斗卫星导航系统(beidou navigation satellite system,bds),准天顶卫星系统(quasi-zenith satellite system,qzss)和/或星基增强系统(satellite based augmentation systems,sbas)。
69.电子设备100通过gpu,显示屏194,以及应用处理器等实现显示功能。gpu为图像处理的微处理器,连接显示屏194和应用处理器。gpu用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个gpu,其执行程序指令以生成或改变显示信息。
70.显示屏194用于显示图像,视频等。显示屏194包括显示面板。在一些实施例中,电子设备100可以包括1个或n个显示屏194,n为大于1的正整数。
71.电子设备100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
72.isp用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
73.摄像头193用于捕获静态图像或视频。在一些实施例中,手机100可以包括1个或n个摄像头,n为大于1的正整数。摄像头193可以是前置摄像头也可以是后置摄像头。
74.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,
例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
75.外部存储器接口120可以用于连接外部存储卡,例如micro sd卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
76.内部存储器121可以用于存储一个或多个计算机程序,该一个或多个计算机程序包括指令。处理器110可以通过运行存储在内部存储器121的上述指令,从而使得电子设备100执行本技术一些实施例中所提供的语音交互的方法,以及各种功能应用和数据处理等。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统;该存储程序区还可以存储一个或多个应用程序(比如语音识别、图库、联系人等)等。存储数据区可存储电子设备使用过程中所创建的数据等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。在另一些实施例中,处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,来使得电子设备100执行本技术实施例中所提供的语音交互的方法,以及各种功能应用和数据处理。
77.电子设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,以及应用处理器等实现音频功能。例如音乐播放,录音等。
78.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
79.扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170a收听音乐,或收听免提通话。
80.受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170b靠近人耳接听语音。
81.麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170c发声,将声音信号输入到麦克风170c。电子设备100可以设置一个或多个麦克风170c。在另一些实施例中,电子设备100可以设置两个麦克风170c,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170c,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
82.耳机接口170d用于连接有线耳机。
83.传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等,本技术实施例对此不做任何限制。
84.当然,本技术实施例提供的电子设备100还可以包括按键190、马达191、指示器192以及sim卡接口195等一项或多项器件,本技术实施例对此不做任何限制。
85.本技术实施例中涉及的“语音助手”,又可以称之为“数字助理”、“虚拟助理”、“智
能自动化助理”或“自动数字助理”等。“语音助手”可以理解为一种信息处理系统,其可以识别语音形式和/或文本形式的自然语言输入来推断用户意图并且基于推断出的用户意图来执行相应的动作。该系统可以通过可听(例如,语音)和/或可视形式来输出对用户的输入的响应。
86.示例地,用户可向语音助手提问,诸如“我现在在哪里?”基于用户的当前位置,语音助手可回答“您在中央公园西门附近。”用户还可请求执行任务,例如“打电话给麦克。”作为响应,语音助手可通过讲出“好的,马上”来确认请求,且语音助手执行拨打联系人“麦克”的电话的任务。除了提供语音响应并执行预置动作之外,语音助手还可提供其他视觉或音频形式(例如,作为文本、提示、音乐、视频、动画等)的响应。可以理解的,用户与语音助手还可以进行其他类型的交互,如聊天、游戏、知识问答等,且交互形式不限,本技术实施例对此不做限定。
87.请参阅图2,图2为本技术实施例提供的语音助手的功能架构图。下面对于语音助手中各个功能模块进行说明,如图2所示,语音助手包括前端处理模块21、asr模块22、nlu模块23、dm模块24、nlg模块25和tts模块26。
88.前端处理模块21用于将用户输入的语音指令,处理为后级算法所需的数据格式,如音频特征向量,供asr模块22使用。
89.示例性地,前端处理模块21获得用户输入的语音指令后,对该语音指令进行音频解码,解码成pcm格式的音频信号,然后利用声纹或其他特征对该音频信号进行分离、降噪、特征提取,并通过分帧、开窗、短时傅里叶变换等音频处理算法,得到梅尔频率倒谱分析(mel-frequency cepstral coefficients,mfcc)滤波器组(filter bank)的音频特征向量。前端处理模块21一般设置于终端侧。可以理解的是,语音助手也可以不包括独立的前端处理模块21,如前端处理模块21的功能可集成在语音识别模块22中。
90.语音识别(automatic speech recognition,asr)模块22用于获取前端处理模块21处理得到的音频特征向量,并将音频特征向量转换为文本,供自然语言理解模块23进行理解。
91.asr模块22,用于识别并输出文本识别结果。如asr模块22使用一个或多个语音识别模型来处理前端处理模块21所提取的音频特征向量以产生中间识别结果(例如,音素、音素串和子字词),并且最终产生文本识别结果(例如,字词、字词串、或符号序列)。
92.示例的,该一个或多个语音识别模型(例如,声学模型和/或语言模型),可以包括隐马尔可夫模型、高斯混合模型、深层神经网络模型、n元语法语言模型或其他统计模型。声学模型用于把声学特征分类对应到(解码)音素或字词,语言模型用于把音素或字词解码成一个完整的文本。
93.示例性地,声学模型和语言模型通过串联的方式对音频特征向量进行处理,通过声学模型将音频特征向量转换为中间识别结果(例如,音素、音素串和子字词),再通过语言模型将音素或字词转换为产生文本识别结果(例如,字词、字词串、或符号序列),输出用户语音指令对应的文本或符号序列。
94.自然语言理解(natural language understanding,nlu)模块23用于将用户语音指令对应的文本或符号序列进行语义识别,得到语义信息。即将用户语音对应的文本或符号序列转换为结构化信息,其中结构化信息包括技能、机器可执行的意图信息和可识别的
槽位信息。nlu模块23其目的是通过语法、语义和语用的分析,获取用户所输入的自然语言的语义表示。
95.具体地,nlu模块23可以将用户语音对应的文本或符号序列进行技能分类、意图分类以及槽位提取。一般情况下,语音助手可以集成有多个具体的技能,语音助手可以维护一个技能清单,技能清单包括如图2中技能a、技能b、技能n等,每个技能对应着一种类型的服务或者功能,例如:订餐服务、打车服务、查询天气等。每个技能下可以配置有一个或多个意图。例如“天气查询”技能下可以配置有:问答意图“查天气”。每个意图下可以配置有一个或多个槽位。例如问答意图“查天气”可以配置有时间槽位和城市槽位。
96.对技能、意图和槽位进行说明。
97.(1)技能
98.技能可以是一项服务或功能,例如天气查询服务、机票预定服务等等。技能可以由第三方应用(如“天气”)或第三方平台的开发者来配置。一个技能下可以配置有一个或多个意图。
99.(2)意图
100.一个意图可以是一个技能下更为细化的服务或功能。意图可以分为对话意图和问答意图。需要参数化的应该使用对话意图,比如订购火车票意图,里面需要车次,出发时间等参数,则应该使用对话意图。问答意图更偏好于解决常见问题解答(frequently asked questions,faq)类型的问题。比如退票费怎么收?一个意图下可以配置有一个或多个槽位。
101.(3)槽位
102.槽位为用户语句中用来表达用户意图的关键信息,例如,用户意图为对话意图“查天气”,那么nlu模块23需要从用户语音指令中提取的槽位为城市槽位和时间槽位。城市槽位用来表明查询“哪里”的天气,时间槽位用来表明查询“哪天”的天气。
103.对话管理(dialog management,dm)模块24用于根据nlu模块22输出的语义信息以及对话状态,输出下一步的动作,如包括判断应接入服务/平台、采取的反馈操作或回复的应答信息。
104.其中,dm模块24可用于维护和更新对话状态,并可用于根据对话状态和语义信息等,以决定下一步的动作。dm模块24可以由多个子模块组成。
105.具体地,dm模块24根据nlu模块23输出的语义,获得对应语音指令的任务,然后对接业务平台27以完成任务;或者,dm模块24根据语音指令对应的任务需要的信息,要求用户进一步输入更多的信息;或者,dm模块24获取语音指令所请求的信息返回给用户。
106.其中,dm模块24输出的不同技能可以对接不同的业务平台27,例如语义信息为听歌,则可以对接音乐播放平台,语义信息为看视频,则可以对接视频播放平台。
107.自然语言生成模块(natural language understanding,nlg)模块25用于将dm模块24输出的系统动作进行文本化,得到自然语言文本,并提供给tts模块26。
108.语音合成(text-to-speech,tts)模块26用于将nlg模块25生成的自然语言文本进一步转换为可播放的应答语音输出信号。
109.在本技术实施例中,电子设备可以根据dm模块24输出的指令,执行对应的操作。如果dm模块24输出的指令为用于指示输出语音的指令。此时,nlg模块25可以根据dm模块24输出的指令,生成语音信息,tts模块26输出该语音。例如,用户输入的语音信息为“播放一首
歌曲”,dm模块24输出用于指示输出语音的指令,nlg模块25根据用于指示输出语音的指令,生成输出语音文本“你要播放什么歌曲?”,tts模块26根据nlg模块25输出语音文本输出语音“你要播放什么歌曲?”,并由电子设备播放该语音。
110.如果dm模块24输出的指令是其他类型的指令,电子设备则响应于该指令,执行对应的操作。示例性地dm模块24的输出可以具体表现为执行指令,该执行指令用于指示下一步的动作。例如,用户的输入语音信息为“播放歌曲a”,dm模块24输出播放歌曲a的执行指令,电子设备响应于该执行指令,自动播放歌曲a。
111.下面以通过语音助手控制设备开灯为例,描述语音助手的处理流程。示例的,语音助手可以为一个应用,或一个服务,或集成在其他应用或服务中的功能模块(例如api接口)等,本发明实施例对此不做限定。
112.搭载语音助手的电子设备(如智能音箱),接收用户输入的语音指令(如“开灯”),语音助手调用asr模块22、nlu模块23和dm模块24,识别用户语音指令所对应的意图,并将其映射为对应的技能(如开灯技能),语音助手根据技能映射结果,通过对应的技能服务接口,将技能执行请求发送至相应的业务逻辑处理系统(如控制平台),业务逻辑处理系统按技能执行请求,控制对应的设备/平台(如电灯)执行对应服务(如开启电灯操作),电子设备向用户提供服务反馈(如语音播报“灯已打开”)。在一种可实现方式中,语音助手也可以直接控制灯的开关,可以不经过业务逻辑处理系统(如:控制平台)。本发明实施例对此不做具体限定。
113.在一些实施例中,语音助手的功能模块可以全部部署在电子设备上。该类电子设备可以包括智能机器人,也可以包括手机、车机、大屏等功能丰富的富设备。
114.在一些实施例中,语音助手的功能模块可以一部分部署在电子设备,一部分部署在服务器或其他设备上,例如前端处理模块21可部署于电子设备上。asr模块可以部署在电子设备上,也可以asr模块的一部分部署在电子设备上,一部分部署在服务器或其他设备上。nlu和dm模块的部署也可以类似前述的asr模块的部署,本发明实施例对此不做具体限定。为了有更丰富的功能和服务,上述提及的手机、车机、大屏等电子设备也可以属于采用该类架构部署,一些其他瘦设备也可以采用该类架构部署。
115.在另一些示例中,语音助手可跨多个电子设备分布,协同来实现语音交互功能。
116.可以理解,这里所列举的产品形态进行示例性说明,并不应对本技术构成任何限定。
117.应当指出,语音助手可具有比图示更多或更少的部件、可组合两个或更多个部件、或可具有部件的不同配置或布局。图2中所示的各种功能模块可在硬件、用于由一个或多个处理器执行的软件指令、包括一个或多个信号处理集成电路和/或专用集成电路的固件、或它们的组合中实现。
118.以下实施例中所涉及的技术方案均可以在上述电子设备中实现。以下结合附图和应用场景对本实施例提供的语音交互方法进行详细介绍。需要说明的是,以下实施例中,电子设备以手机为例,语音交互功能的实现以手机中的语音助手app为例。
119.请参阅图3,图3为本技术实施例提供的一种语音交互方法的流程示意图。该语音交互方法包括如下步骤:
120.步骤s301:用户启动手机上的语音助手。
121.在本技术实施例中,用户希望通过语音与手机进行交互时,用户可以先触发手机中的语音交互功能,如用户启动手机中的语音助手,使语音助手处于工作状态。
122.在一些示例中,步骤s301可以省略,如语音交互功能(如语音助手)可以免启动,用户可直接与语音助手进行语音交互。
123.启动语音助手可以包括但不限于如下几种方式:
124.方式一:用户可以通过语音启动(唤醒)语音助手。其中,唤醒语音助手的语音数据可以称为唤醒词(或唤醒语音)。该唤醒词可以预先注册在手机中,例如华为语音助手小艺的唤醒词为“小艺,小艺”。示例性的,搭载语音助手小艺的手机可将麦克风设置为常开状态(always on),进而,手机可通过麦克风实时检测用户输入的语音信号。当检测到用户输入唤醒词“小艺,小艺”的语音信号后,手机可唤醒安装于手机中的语音助手小艺,使语音助手小艺接收用户的语音指令。语音助手小艺被唤醒后,可应答用户输入的唤醒词“小艺,小艺”,输出“小艺在”的应答,并开始接收用户输入的语音指令。如图4所示,手机上可显示语音助手的对话界面501,对话界面501中可以实时显示用户与语音助手小艺的对话内容。
125.方式二:用户可以通过触控方式启动语音助手,例如通过长按home键、点击电源按键或手机界面上语音助手的应用图标,启动语音助手。
126.可以理解,对于搭载语音助手的车载设备,用户可以点击车载语音按键,对于搭载语音助手的智慧屏,用户可以点击遥控器按键。本技术实施例对此不作具体限定。
127.步骤s302:用户向手机发送第一语音指令。
128.在本技术实施例中,用户与手机交互的过程中,用户向手机发送语音指令1。
129.在一种示例中,若手机上的语音助手能准确识别语音指令1的语义,则手机执行对应的操作,和/或,控制其他设备执行对应的操作。
130.在另一种示例中,若语音助手不能识别语音指令1的语义,如不能识别语音指令1对应的用户意图,则手机无法执行相应的操作。在一些示例中,语音助手不能识别语音指令1的语义时,可以给用户一个提醒,如手机语音提示用户“我不知道你说的是什么意思”。
131.在另一种示例中,若语音助手不能识别语音指令1的语义,如将语音指令1对应的真实用户意图a识别为意图b,则语音助手根据该意图b输出执行指令c,手机响应该执行指令c执行操作。用户可根据手机执行的操作了解到语音助手错误地识别语音指令1的语义。
132.其中,第一语音指令可以为用户在语音交互过程中任一次输入的语音指令。
133.用户与手机进行交互的语音指令很多样,如下示例几种可能语音助手不能有效识别语音指令1语义的情形:
134.情形一:用户语音指令的内容比较口语化或个性化。日常交互场景下,用户可能不会采用书面化句式或标准语音指令,例如“播放音乐”,用户输入的语音指令可能如“飙个歌吧”或“music走起”等。
135.情形二:用户语音指令的关键词/对象表达不清晰。在特定时间点或事件背景下,用户可能不会在语音指令中采用完备或标准化的关键词描述。例如语音助手能识别语音指令“我要看《哈利波特2》”,而用户可能会偏向于采用简略或通俗化的关键词描述,例如“我要看哈2”。
136.情形三:用户语音指令模糊或歧义。用户发送的语音指令可能存在表意不清晰的问题,例如“我要看演员a做厨师的电影”,实际上标准语音指令为“我要看《电影b》(演员a主
演)”。或,用户发送的语音指令带有方言或口音,例如“打电伐给老汉”(四川方言),而实际上语音助手可识别的标准语音指令为“打电话给爸爸”(普通话)。
137.上述情形只是示例,语音助手不能有效识别语音指令1语义的情形并不限于上述示例情形。在上述情形中,若语音助手的标准语音指令集(可有效识别的语音指令集)未覆盖支持类似上述示例中的非标准句式、非标准关键词或模糊歧义的语音指令,则语音助手可能会不能识别用户发送的语音指令1的语义,无法识别用户所发送的语音指令1对应的用户意图。也即语音助手能识别的语音指令集未覆盖到上述情形中的语音指令,换句话说,上述情形中的语音指令为语音助手不能有效识别的语音指令。语音助手可有效识别的语音指令集未覆盖支持类似上述示例中的非标准句式、非标准关键词或模糊歧义的语音指令,可能是语音助手的asr模块和/或nlu模块不可有效识别上述非标准语音指令。
138.可以理解,循环神经网络(recurrent neural network,rnn)、长短期记忆网络(long short term memory,lstm)、transformer等深度学习模型,可应用于图3所示语音助手的asr模块和nlu模块中。在构建asr模块和nlu模块的训练数据集时,通常使用预先设置的标准语音指令,如“播放音乐”、“请开灯”等。即语音助手的asr模块和nlu模块有其内部的语音识别算法或模型经过训练后所能支持的语音指令集,语音助手可有效识别语音指令集中的指令,这些可被称之为标准语音指令,也即标准语音指令是能被语音助手直接有效识别其对应用户意图的语音指令。
139.若用户发送的第一语音指令属于上述三种情形中的一种或多种,或者说,用户发送的第一语音指令不同于语音助手能识别的标准语音指令,即第一语音指令为不同于标准语音指令的非标准语音指令,则语音助手可能会不能有效识别第一语音指令的语义。
140.需要说明的是,第一语音指令不限于上述三种情形,本技术实施例对此不作具体限定。
141.如图3所示,下述实施例以第一语音指令为“飚个歌吧”为例。在一种示例中,如图5(a)所示,语音助手接收到该第一语音指令后,可以在对话界面601上显示第一语音指令对应的文本内容。
142.在其中一种可能实现方式中,步骤s301和步骤s302可以合并为一个步骤,用户输入的语音信号,可以是以语音唤醒词开头的语音信号。例如,“小艺,小艺,飚个歌吧”、“小艺,小艺,请共享会议室的屏幕”、“小艺,小艺,我要结束会议”。则唤醒词后面的语音信号为用户输入的语音指令,如“飚个歌吧”、“请共享会议室的屏幕”以及“我要结束会议”为用户向语音助手发送的语音指令。语音助手检测到唤醒词后,接收语音指令,手机上显示语音助手的对话界面,如图5(b)所示,对话界面602上显示用户输入的语音信号“小艺,小艺,飚个歌吧”的文本内容。
143.步骤s303:手机识别第一语音指令对应的第一用户意图。
144.在一种示例中,手机可以使用语音交互功能来识别第一语音指令对应的第一用户意图,如识别第一语音指令对应的第一用户意图可以由语音助手完成。手机上的麦克风将采集到的用户语音信号(第一语言指令)转发给语音助手的前端处理模块21,由前端处理模块21对该语音信号进行预处理,得到预处理的语音信号,将预处理的语音信号输入至asr模块22。asr模块22将预处理的语音信号转化为对应的文本,得到第一文本。可选的,第一文本也可以是语音助手将转化的文本进行文本处理,如文本归一、纠错、书面化处理等,后得到
的文本。将第一文本输入nlu模块23。nlu模块23识别第一文本的语义,对第一文本分词、词性标注、关键词提取等处理操作,提取出第一语音指令对应的第一用户意图。其具体实现方式可以参考图2,在此不再赘述。
145.在另一种示例中,若用户所发送的第一语音指令属于非标准语音指令,语音助手可能无法识别第一语音指令对应的第一用户意图,如第一语音指令“飚个歌吧”对应的第一用户意图为“播放音乐”,但是语音助手可能识别不出来。或者,语音助手不能正确识别到第一语音指令对应的第一用户意图为“播放音乐”。又如第一语音指令“我要看哈2”对应的第一用户意图为“打开《哈利波特2》”,但是语音助手可能识别为其他视频。
146.步骤s304:在手机无法识别第一语音指令对应的第一用户意图时,手机输出无法识别反馈。在本技术实施例中,语音助手的asr模块22对第一语音指令的识别失败,或nlu模块23对第一语音指令的识别失败,则语音助手不能识别出第一语音指令的语义,语音助手无法理解第一语音指令对应的第一用户意图。语音助手通过手机向用户输出无法识别反馈,以向用户表达语音助手不能理解或不能识别第一语音指令所对应的第一用户意图的事实。
147.在其中一种可能实现方式中,无法识别反馈可以通过文本形式显示在对话界面上,如图6(a)所示,手机在对话界面701上显示无法识别反馈“我不清楚你的意思”的文本内容。
148.在其中一种可能实现方式中,手机可以通过语音形式向用户输出无法识别反馈,如向用户输出“我不清楚你的意思”的语音。
149.在本技术实施例中,该无法识别反馈还可以为“我听不懂你的意思”或“小艺无法理解你的意思”等,本技术实施例对此不作具体限定。
150.在其中一种可能实现方式中,步骤s304可以为:在手机无法识别第一语音指令对应的第一用户意图时,手机输出用于引导用户继续进行后续交互的引导信息。
151.在本技术实施例中,在语音助手无法识别第一语音指令对应的语义时,语音助手还可以输出用于引导用户继续进行后续交互的引导信息,并由手机向用户输出该引导信息。
152.其中,该引导信息可以为请求用户继续进行交互的信息,如“请再说一遍”、“请您慢点说”或“请您用普通话再说一遍”,也可以为对用户发送的语音指令的疑问,如“您刚刚是什么意思”或“您刚刚说了什么”。本技术实施例对此不作具体限定。
153.在其中一种可能实现方式中,该引导信息也可以通过文本形式显示在对话界面上。示例性地,如图6(b)所示,手机在对话界面702上显示引导信息“请你再说一遍。”的文本内容。
154.在其中一种可能实现方式中,手机可以通过语音形式向用户输出引导信息,如手机向用户输出“请再说一遍”的语音。
155.在其中一种可能实现方式中,步骤s304可以为:在手机无法识别第一语音指令对应的第一用户意图时,手机输出无法识别反馈和用于引导用户继续进行后续交互的引导信息。
156.其中,无法识别反馈和引导信息可以采用上述文本形式或语音形式输出。如可以同时以文本形式输出无法识别反馈和引导信息的内容,或同时以语音形式输出无法识别反
馈和引导信息的内容,或,无法识别反馈和引导信息各自采用不同形式输出,本技术实施例对此不作具体限定。
157.示例性地,如图6(c)所示,手机在对话界面703上显示无法识别反馈和引导信息的文本内容“我不清楚你的意思,请你再说一遍。”。
158.可以理解,手机还可以通过其他形式输出无法识别反馈或引导信息,如手机振动或手机以不同振动频率振动、指示灯亮灯。不同的电子设备也可以有不同的指示形式,如智能音箱可以控制led灯亮,或灯亮的频率来指示。本技术实施例对此不作具体限定。
159.在其中一种可能实现方式中,步骤s304可以为:手机根据识别到的第一语音指令的用户意图执行操作。
160.在本技术实施例中,步骤s303手机识别到的第一语音指令对应的第一用户意图为错误的,手机不能正确识别第一语音指令对应的第一用户意图,将第一语音指令对应的第一用户意图识别为其他错误意图,则步骤s304手机根据错误意图执行错误操作。
161.示例性地,用户输入第一语音指令“飚个歌吧”,语音助手将该第一语音指令的用户意图识别为“开灯”。如图6(d)所示,在对话界面704上显示语音助手执行操作后的反馈,如“好的,已开灯”。用户可以通过手机执行操作后的反馈了解到语音助手对其真实意图识别错误。
162.步骤s305:用户向手机发送第二语音指令。
163.现有技术中的语音助手无法识别用户输出的第一语音指令时,就会结束对第一语音指令的处理,终止交互流程。如用户通过语音指令与手机进行交互时,若手机的语音交互功能(语音助手)无法识别用户的语音指令,则会结束对话。现有技术中的语音助手对第一语音指令对应用户意图识别错误时,用户无法修正语音助手对第一语音指令的真实用户意图识别。而执行本技术实施例提供的语音交互方法的语音助手可以提供解释功能:在语音助手无法识别或无法正确识别用户输出的第一语音指令对应的第一用户意图时,语音助手继续使用拾音设备(如麦克风)采集用户的语音,以接收用户输入的用于解释或复述第一语音指令的第二语音指令。可以理解为,执行本技术实施例提供的语音交互方法的语音助手提供一个解释流程,用户可以继续使用语音指令与语音助手进行语音交互,以通过另一语言表达内容向语音助手再次表达上一条第一语音指令的内容,即用户换一种说法向语音助手表达或解释上一第一语音指令的语义,以便语音助手能理解第一语音指令对应的用户意图。则语音助手可以根据用户输入的语音指令得知第一语音指令对应的用户意图,或修正对第一语音指令对应的用户意图的识别结果。
164.在本技术实施例中,语音助手无法识别用户输出的第一语音指令时,用户可以发送第二语音指令,通过第二语音指令来解释第一语音指令,从而使语音助手可以有效执行第一语音指令对应的响应,丰富用户与电子设备的语音交互。如图3所示,用户输入第二语音指令“播放音乐”,其中第二语音指令“播放音乐”为语音助手可以有效识别的语音指令。
165.在本技术实施例中,在语音助手无法识别第一语音指令时,即语音助手无法生成第一语音指令的识别结果(如用户意图),语音助手可以建立与所述第一语音指令相关联的学习会话,以在该学习会话期间可以继续接收用户输入的第二语音指令。
166.在其中一种可能实现方式中,在语音助手生成第一语音指令的识别结果后,语音助手还可以建立与第一语音指令相关联的学习会话,以在该学习会话期间可以继续接收用
户输入的语音指令。
167.在其中一种可能实现方式中,在语音助手生成第一语音指令的识别结果后,语音助手可以继续接收用户输入的第二语音指令,检测到该第二语音指令为用于解释第一语音指令时,如该第二语音指令为使用下述第二种方式或第三种方式发送的语音指令时,则语音助手可以选择建立与第一语音指令相关联的学习会话,或不建立与第一语音指令相关联的学习会话。
168.在本技术实施例中,用户发送第二语音指令的方式可以包括如下:
169.第一种方式,用户直接向手机发送第二语音指令。第一种方式是在语音助手或手机无法识别第一语音指令对应的第一用户意图的场景下使用。即在语音助手无法识别第一语音指令的语义时,手机接收到第二语音指令用于解释或复述第一语音指令。语音助手默认再接收到的用户发送的第二语音指令是用于解释或复述第一语音指令;或者,语音助手在无法识别第一语音指令时,在预设时间内接收到的第二语音指令为用于解释或复述第一语音指令;等。
170.具体地,在步骤s303中语音助手无法识别第一语音指令对应的第一用户意图,在步骤s304中语音助手通过手机输出无法识别反馈或引导信息或无法识别反馈和引导信息后,用户了解到语音助手无法识别第一语音指令对应的用户意图,用户继续向手机发送第二语音指令如“播放音乐”。手机将接收到的第二语音指令转发至语音助手,语音助手默认该第二语音指令“播放音乐”是对上一无法识别的第一语音指令“飚个歌吧”的复述,或为对上一无法识别的第一语音指令“飚个歌吧”的解释。
171.第二种方式,用户可以采用预设模板向手机发送第二语音指令,即用户输入的语音包括预设模板和第二语言指令。该预设模板用于表征当前采用预设模板发送的第二语音指令,是用于对上一第一语音指令的复述或解释。当语音助手检测到该预设模板时,语音助手认为采用该预设模板所发送的第二语音指令即为用于对上一条第一语音指令进行解释或复述的语音指令。预设模板可以是包含解释性内容的指令形式,本发明实施例对预设模板的形式不做具体限定。
172.示例性地,该预设模板可以为固定句式,如“我的意思是”、“我上一句的意思是”或“我刚才说的是”等。即,在用户使用第二种方式向手机发送第二语音指令时,所输入的语音为“我的意思是播放音乐”、“我上一句的意思是播放音乐”或“我刚才说的是播放音乐”等。该预设模板还可以为一个预设词语,如“解释”、“复述”或“修正”等。即,在用户向手机发送第二语音指令时,所输入的语音为“解释,播放音乐”、“复述,播放音乐”或“修正,播放音乐”等。
173.第三种方式,用户可以进行触发操作后或进行触发操作时向手机发送第二语音指令。该触发操作所对应的触发指令用于表征手机接收到的第二语音指令是用于对上一条第一语音指令的复述或解释。示例性地,触发操作可以为对ui虚拟按键的触发操作,语音助手的对话界面上可以呈现ui虚拟按键,如语音助手可在无法有效识别第一语音指令时显示改ui虚拟按键,也可以一直显示该ui虚拟按键。该ui虚拟按键触发后,用户可以继续向手机输入语音指令用于复述或解释上一条语音指令。以ui虚拟按键为例,用户点击手机上所显示的ui虚拟按键,并同时输入语音指令“播放音乐”,语音助手检测到用户点击对话界面上ui虚拟按键的触发操作,语音助手接收到该触发操作对应的触发指令后,将手机接收到的语
音指令“播放音乐”作为对第一语音指令“飚个歌吧”的复述,或作为对第一语音指令“飚个歌吧”的解释。
174.可以理解,触发操作还可以为对物理按键的触发操作,物理按键可以为手机上的home键、电源按键、车载语音按键或智慧屏的遥控器按键。触发操作还可以为预设的手势等。本技术实施例对此不作具体限定。
175.需要说明的是,在第三种方式中,可以通过对语音用户界面(voice user interface,vui)的开发,为用户提供更多可用于进行触发操作的选项,本技术实施例对此不作具体限定。
176.在上述第一种方式中,语音助手在无法识别第一语音指令时,语音助手默认在第一语音指令之后接收到的语音指令为用于对第一语音指令进行解释或复述的。用户可以直接与语音助手进行解释,无须像第二种方式中需要采用预设模板发送第二语音指令,也无须像第三种方式中需要进行触发操作,节省用户操作流程,用户与手机的交互更智能化更人性化。
177.上述第二种方式可以在语音助手无法识别第一语音指令对应的第一用户意图时使用,即可以在语音助手不能识别输出第一语音指令对应的第一用户意图,或,语音助手无法正确识别第一语音助手对应的第一用户意图使用。示例地,用户了解到语音助手无法识别输出第一语音指令对应的第一用户意图,手机输出无法识别反馈后。用户采用预设模板向手机发送第二语音指令,如向手机输入语音“我的意思是播放音乐”。语音助手检测到该语音输入中包括预设模板“我的意思是”,则将第二语音指令“播放音乐”作为对第一语音指令“飚个歌吧”的复述,或作为对第一语音指令“飚个歌吧”的解释。或,用户了解到语音助手对第一语音指令对应的第一用户意图识别错误,如图6(d),语音助手将第一语音指令“飚个歌吧”的用户意图“播放音乐”识别为“开灯”,用户采用预设模板向手机手发送第二语音指令,如向手机输入语音“我的意思是播放音乐”。语音助手检测到该语音输入中包括预设模板“我的意思是”,语音助手识别到当前输入的语音是用于对上一第一语音指令“飙个歌吧”的解释,将第二语音指令“播放音乐”作为对第一语音指令“飚个歌吧”的解释。则语音助手可以将“飚个歌吧”的用户意图由“开灯”修正为“飚个歌吧”。
178.第二种方式相对于第一种方式,用户可以根据自己的需求对第一语音指令进行解释或复述,不受语音助手引导流程限制。即在第二种方式中,不限定语音助手在无法识别第一语音指令时,默认在第一语音指令之后接收到的语音指令为用于对第一语音指令进行解释或复述的。用户可以在第一语音指令之后输入与第一语音指令无关的语音指令,而语音助手也不会把该无关的语音指令作为对第一语音指令的解释,仅在语音助手检测到用户采用了预设模板,才认为采用预设模板的语音指令为对上一条未识别的语音指令的复述或解释。且第二种方式还可以在了解到语音助手识别错误时候对语音助手的识别进行修正。第二种方式相对于第三种方式,第二种方式通过语音交互即可以完成对第一语音指令的解释或复述,提高用户的使用体验。
179.上述第三种方式与第二种方式相似,可以在语音助手不能识别输出第一语音指令对应的第一用户意图,或,语音助手无法正确识别第一语音助手对应的第一用户意图时使用,具体原理可以参照上述描述,在此不再赘述。在上述第三种方式与第二种方式的区别在于,可以为用户提供额外的交互体验,用户可以通过对物理按键、ui虚拟按键或使用预设手
势进行触发操作,进而可以在触发操作时或触发操作之后发送第二语音指令,语音助手或手机在检测到触发操作对应的触发指令后,将第二语音指令作为对上一条第一语音指令的复述或解释。
180.需要说明的是,本技术实施例不限于在单轮语音交互还是多轮语音交互。在单轮交互场景下,语音助手使用本技术实施例的语音交互方法,可以在无法识别第一语音指令对应的用户意图时,语音助手继续使用拾音设备(如麦克风)采集用户的语音,在接收到用户输入的语音指令,或接收到用户采用预设模板发送的语音指令或监测到触发指令时,将单轮交互转化为多轮交互。
181.在其中一种可能实现方式中,若用户在语音助手对第一语音指令识别失败后,继续输出语音指令2,该语音指令2可能并非是标准语音指令,语音助手仍无法识别该语音指令2或无法正确识别该语音指令2,可设置预设的交互次数或时长阈值,若在预设的交互次数或时长阈值内,语音助手均无法识别用户继续输入的语音指令2,则语音助手将交互过程所涉及的数据(包括但不限于语音指令数据、程序日志等),上传至云服务器,以由人工进行识别,由人工将语音指令2与第一语音指令关联。
182.在其中一种可能实现方式中,在预设的时间范围内,如接收到用户输入的语音指令,或接收到用户采用预设模板发送的语音指令或监测到触发指令,则继续下述步骤,若超出该预设的时间范围,未接收到用户输入的语音指令,或未接收到用户采用预设模板发送的语音指令或未监测到触发指令,则结束交互流程。
183.步骤s306:手机识别第二语音指令,并执行所述第二语音指令对应的第一操作。
184.手机语音助手可识别第二语音指令对应的第二用户意图,并根据所述第二用户意图执行与所述第二意图对应的第一操作。
185.在本技术实施例中,手机可以使用语音交互功能来识别第二语音指令对应的第二用户意图,如语音助手识别第二语音指令对应的第二用户意图。具体流程可以参考步骤s303,在此不再赘述。
186.在本技术实施例中,s303在使用预设模板发送第二语音指令时,手机接收到的语音输入包括了第二语音指令如“播放音乐”以及预设模板如“我的意思是”,语音助手识别出该语音输入中预设模板“我的意思是”,将语音输入除预设模板“我的意思是”外的内容识别为第二语音指令,得到第二语音指令“播放音乐”,识别第二语音指令“播放音乐”对应的第二用户意图的具体实现方式可以参考步骤s303,在此不再赘述。
187.以步骤s304中手机输出无法识别反馈与引导信息“我不清楚你的意思,请你再说一遍”,为例。
188.在用户采用第一种方式发送第二语音指令时,用户直接向手机输入第二语音指令“播放音乐”,语音助手接收到第二语音指令“播放音乐”后,如图7(a)所示,在对话界面801上显示第二语音指令的文本内容。
189.在用户采用第二种方式发送第二语音指令时,语音助手接收到的语音输入为“我的意思是播放音乐”后,如图7(b)所示,在对话界面802上显示该语音的文本内容。
190.在用户采用第三种方式发送第二语音指令时,如图7(c)所示,手机上呈现的对话界面803上显示有ui虚拟按键804,用户点击ui虚拟按键804,并向手机输入第二语音指令“播放音乐”。手机在对话界面803上显示第二语音指令的文本内容。
191.在本技术实施例中,手机识别到第二语音指令“播放音乐”对应的第二用户意图为“播放音乐”(示例如intent:play music)。
192.示例的,若第二指令为“播放音乐”,手机执行的第一操作为音乐播放的操作,如打开音乐播放app或音乐播放服务,向用户播放歌曲。
193.在一种示例中,如果用户的语音指令中没有歌曲名称实体,手机可以根据预设推荐规则,确定出推荐歌曲,然后播放给用户。例如,手机可以根据用户的历史播放记录,将最近7天内播放最多的歌曲作为推荐歌曲。手机响应于播放音乐的执行指令,自动播放确定出的推荐歌曲,并显示于对话界面。示例性地,在如图7(c)所示的交互基础上,语音助手识别出第二语音指令的第二用户意图,手机上播放歌曲,如图8所示,手机输出反馈,如播报“好的,开始播放音乐”,并在对话界面901上显示针对用户语音指令的应答语句文本内容以及音乐控件902。此时,音乐控件902内显示正在播放的歌曲为手机正在播放的歌曲。
194.步骤s307:手机建立第一语音指令与第二语音指令的关联关系。
195.在本技术实施例中,可以将第一语音指令与第二语音指令的关联关系存储在手机本地,也可以存储至云服务器,本技术实施例对此不作具体限定。对于关联关系的形式,本技术实施例也不做具体限定。
196.其中,步骤s307可以由手机上的语音助手来完成。
197.在本技术实施例中,语音助手检测到用于复述或解释未被识别的第一语音指令的第二语音指令,建立第一语音指令与第二语音指令的关联关系。或者说,语音助手在检测到用户是使用上述三种方式中的任一方式发送第二语音指令时,建立第一语音指令与第二语音指令的关联关系。
198.其中,步骤s307在用户执行步骤s305后执行。语音助手识别到第二语音指令为对第一语音指令进行解释或复述的语音指令时或之后,语音助手可在任意一个时间执行步骤s307。即,步骤s307可以在步骤s306之前或之后或同时执行,步骤s307还可以在当前语音交互流程结束后执行,即允许语音助手离线执行步骤s307。比如说,在语音助手退出运行,或手机关机充电的时候语音助手可以执行步骤s307。
199.在本技术实施例中,语音助手检测到用于复述或解释未被识别第一语音指令的第二语音指令,可以包括如下方式:
200.1)语音助手默认在语音助手无法识别第一语音指令对应的第一用户意图时,语音助手再接收到的语音指令即为用于复述或解释未被识别第一语音指令的第二语音指令。即,默认用户在手机输出无法识别反馈、引导信息或无法识别反馈与引导信息后,用户再向手机所输出的语音指令为用于复述或解释未被识别第一语音指令的第二语音指令。
201.2)在检测到用户输入的语音输入中包括预设模板,则该语音输入中包括用于复述或解释未被识别第一语音指令的第二语音指令。即语音助手在语音交互过程中,检测用户输入的语音输入是否有预设模板,若有,则语音助手检测该语音输入中是否包括除了预设模板之外的语音指令,若有,则该语音指令为包括用于复述或解释未被识别第一语音指令的第二语音指令。
202.3)在检测到用户进行触发操作之后的触发指令时或后,手机再接收到的语音指令为第二语音指令。即临近产生触发指令时刻(如产生触发指令时或之后),语音助手再接收到的语音指令作为第二语音指令。
203.在本技术实施例中,建立第一语音指令与第二语音指令的关联关系,可以理解为将第一语音指令映射为第二语音指令,即认为第一语音指令对应的第一用户意图与第二语音指令对应的第二用户意图相似或一致。在识别第一语音指令对应的第一用户意图时,可以将第二语音指令对应的第二用户意图作为第一语音指令对应的第一用户意图。
204.在其中一种可能实现方式中,建立第一语音指令与第二语音指令的关联关系,可以为将第一语音指令等同于第二语音指令。在将第一语音指令等同于第二语音指令后,后续再接收到与第一语音指令的定义或发音相同的第三语音指令时,将第三语音指令替换为第二语音指令,对第二语音指令进行识别处理得到第二用户意图,将第二用户意图作为第三语音指令对应的用户意图输出。
205.在其中一种可能实现方式中,建立第一语音指令与第二语音指令的关联关系,可以将第二语音指令的第二用户意图与第一语音指令相关联,即将第二用户意图作为第一语音指令的用户意图。则在将第二语音指令的第二用户意图与第一语音指令相关联后,后续再接收到与第一语音指令的定义或发音相同的第三语音指令时,无须识别第三语音指令,直接获取第二用户意图并输出。
206.在本技术实施例中,在语音助手建立了第一语音指令与第二语音指令的关联关系后,可以得到关联表。语音助手可以根据该关联关系(或关联表)拓展其意图理解能力,使得语音助手由原来的不能识别第一语音指令对应的第一用户意图,变为可以识别第一语音指令对应的第一用户意图。即,当用户采用语音助手的asr模块和/或nlu模块的标准语音指令集未覆盖的非标准句式或非标准关键词,或带有模糊歧义的语音指令,即采用非标准语音指令与手机进行交互时,若语音助手识别该非标准语音指令的用户意图失败,则使用执行本技术实施例的语音交互方法的语音助手或手机可以通过输出无法识别反馈或引导信息来引导用户对第一语音指令进行解释或复述,接收用户输入的用于复述或解释未被识别第一语音指令的第二语音指令,建立第一语音指令与第二语音指令的关联关系,语音助手根据该关联关系自学习或自更新其模型或关联表,拓展语音助手支持非标准句式或非标准关键词,或带有模糊歧义的语音指令的意图理解能力。换句话说,语音助手提供解释功能,用户利用该解释功能,通过标准语音指令与其进行交互,引导语音助手拓展意图理解能力,从而使得语音助手快速支持用户自定义的非标准句式/非标准关键词、和/或歧义指令的非标准语音指令,解决语音助手无法识别非标准语音指令,无法识别口语化、个性化语音指令的问题,丰富用户与电子设备的语音交互。
207.下文将详细描述如何根据第一语音指令与第二语音指令的关联关系,改善语音助手对第一语音指令的识别,以拓展语音助手的意图理解能力,支持上述非标准句式或非标准关键词,或带有模糊歧义的非标准语音指令。
208.步骤s308:用户向手机发送第三语音指令。
209.在语音助手建立第一语音指令与第二语音指令的关联关系后,拓展了语音助手的识别能力后,语音助手可以有效识别第一语音指令。用户可以在下一次语音交互时使用与第一语音指令语音内容相同或相似的第三语音指令如“飚个歌吧”与手机进行交互,如图3所示,用户第n次向手机发送第一语音指令“飚个歌吧”,其中,n为大于1的整数。
210.在一种示例中,用户向手机发送第三语音指令时,用户向手机输入语音“飚个歌吧”,无论asr模块将该语音“飚个歌吧”识别为“飚个歌吧”还是“飚个个吧”,基于asr模块内
的纠错功能,也会将最终输出的文本纠正为“飚个歌吧”。又或者,用户向手机输入语音“飚各个吧”,asr模块识别出该语音对应的文本为“飚各个吧”,基于asr模块内的纠错功能,也会将最终输出的文本纠正为“飚个歌吧”。则该第三语音指令是与第一语音指令的语音内容相似的语音指令。语音助手将第三语音指令认为是在语音识别结果上与第一语音指令强关联的语音指令,进而将第三语音指令与第一语音指令关联,由此可以认为第三语音指令对应的第三用户意图即第一语音指令对应的第一用户意图。
211.步骤s309:手机根据第三语音指令执行第一操作。
212.在本技术实施例中,语音助手在识别出第三语音指令是与第一语音指令在语音识别结果上认为是基于相同的语音指令,如识别出的第三语音指令与第一语音指令的内容或发音相同,基于第一语音指令与第二语音指令关联,手机执行与所述第二语音指令的响应相同的第一操作。具体内容可以参考步骤s306,在此不再赘述。
213.可以理解,nlu模块在识别语音指令对应的用户意图时,nlu模块被设计为有一定的鲁棒性或纠错能力,即使nlu模块接收到asr模块传输的文本与标准文本有细微的差别,例如nlu模块接收到文本“播放一个音乐吧”,而非标准文本“播放一首音乐”,其也能够正确识别出对应用户意图为“播放音乐”。又如,nlu模块接收到文本“飚首歌吧”,而非标准文本“飚个歌吧”,其也能正确识别出对应用户意图为“播放音乐”。可以理解的是,此处示例的nlu鲁棒性或纠错能力范围内的不同语音指令,属于基本相同的语音指令。可以理解的是,内容或发音不完全相同的两个语音指令可以属于基本相同的语音指令。
214.在其中一种可能的实现方式中,语音交互方法还包括:接收第四语音指令,其中第四语音指令与第一语音指令的内容或发音不完全相同,第四语音指令与第一语音指令的内容或发音的相似度在第一范围内,响应于第四语音指令,执行与第二语音指令相同的第一响应。
215.第四语音指令可以为基于语音助手鲁棒性判定第四语音指令与第一语音指令为实质相同的语音指令,也可以为语音助手判定与第一语音指令相似度在第一范围内的语音指令。如基于语义助手鲁棒性,可以将第四语音指令“飚首歌吧”识别为与第一语音指令“飚个歌吧”是实质相同的语音指令。或,语音助手判定第四语音指令“飚首歌吧”与第一语音指令“飚个歌吧”相似的相似度为95%,第一范围为90%至99%。
216.在其中一种可能实现方式中,在接收第二语音指令之后,可以接收到第三语音指令或第四语音指令。在其中一种可能实现方式中,在接收到第二语音指令后,可以接收到第三语音指令和第四语音指令,如先接收到第三语音指令后再接收第四语音指令,或先接收第四语音指令再接收第三语音指令。
217.示例性地,以语音助手在检测到第二语音指令之后,就建立第一语音指令与第二语音指令的关联关系,拓展其对第一语音指令意图理解能力,用户在第一次使用第一语音指令进行交互的交互流程中继续以第三语音指令“飚个歌吧”与手机进行交互为例,手机在步骤s306执行第一操作“播放音乐”后,手机输出反馈。用户继续向手机发送第三语音指令“飚个歌吧”,如图9(a),手机在对话界面101上显示包括用户输出第三语音指令时对应的语音文本内容、针对用户语音的回答语句文本内容“好的,开始播放音乐”,以及音乐控件102。此时,音乐控件102内显示手机正在播放的歌曲。
218.用户发送第三语音指令不限于其第一次使用第一语音指令进行交互的交互流程
中,也可以在该交互流程结束后。示例性地,在星期一,用户使用第一语音指令“飚个歌吧”与手机进行交互,语音助手或手机基于上述步骤已拓展了语音助手对第一语音指令意图理解能力。在星期二,如图9(b),用户向手机输入语音“小艺,小艺,飚个歌吧”,用户唤醒手机上的语音助手,语音助手识别第三语音指令“飚个歌吧”的语义,根据第一语音指令与第二语音指令之间的关联关系,然后根据第三语音指令的用户意图执行第一操作。如图9(b),手机在对话界面103上显示对话历史、当前输入的第三语音指令的文本内容“飚个歌”,以及语音助手针对用户语音的回答语句文本内容“好的,开始播放音乐”,以及音乐控件104。此时,音乐控件104内显示手机正在播放的歌曲。
219.在其中一种可能实现方式中,在第一语音指令与第二语音指令关联之后,用户在下回使用第一语音指令与手机进行交互,不限于使用语音方式,可以通过文本形式也可以通过语音形式与手机进行交互。如,语音助手将“播放音乐”与“music走起”关联,则下回用户操作手机,在语音助手的对话界面上向语音助手发送文本内容“music走起”,语音助手均能识别该文本内容“music走起”对应的用户意图为“播放音乐”。
220.在其中一种可能实现方式中,本技术实施例提供的语音交互方法可以在上述对话界面上实现,也可以在设置界面上实现。执行本技术实施例提供的语音交互方法的电子设备可以提供一设置界面,该设置界面可以供用户进行语音指令设置。用户可在该设置界面上进行语音指令关联设置。如用户向设置界面输入第一语音指令,后续再向设置界面输入第二语音指令,语音助手将第一语音指令与第二语音指令关联。
221.可以理解,在设置界面上输入第一语音指令或第二语音指令可以通过语音输入或文本输入,本技术对此不作具体限定。
222.可以理解,本技术实施例提供的语音交互方法,不限于语音助手未能识别语音指令场景。本技术实施例提供的语音交互方法还可以根据用户个人需求应用于各种场景,如:
223.场景一:将本技术实施例提供的语音交互方法应用于对语音助手个性化语音指令的设置。用户可以根据个人语言习惯或需求去调整语音助手对语音指令的语义识别。例如用户习惯使用“music走起”,但语音助手不能识别出“music走起”对应的用户意图为“播放音乐”,则用户可以主动使用第二语音指令“播放音乐”解释“music走起”。手机执行上述步骤将“播放音乐”与“music走起”关联。则下回用户再以指令“music走起”(语音形式或文本形式)与手机进行交互的时候,语音助手即可以识别出“music走起”对应的用户意图为“播放音乐”。
224.场景二:将本技术实施例提供的语音交互方法应用于特殊人群特殊语音指令的设置。特殊人群如外国人、老人或小孩等无法输出标准语音指令。例如小孩可能会把“播放音乐”说成“波放乐”,则在小孩向手机输出第一语音指令“波放乐”后,大人可以向手机发送第二语音指令“播放音乐”。语音助手可以将第一语音指令“波放乐”与第二语音指令“播放音乐”关联。在小孩再向手机发送语音指令“波放乐”,语音助手会根据第一语音指令“波放乐”与第二语音指令“播放音乐”的关联,得到第一语音指令“波放乐”对应的用户意图为第二语音指令“播放音乐”对应的用户意图“播放音乐”,手机播放音乐。
225.上述场景一和场景二可以对话过程中实现,也可以在特定的对话界面或设置界面上实现,本技术实施例对此不作具体限定。
226.在本技术实施例中,对语音助手意图理解能力拓展不涉及通过繁琐的ui界面操作
新增自定义语义,也不涉及通过api(application programming interface)设计/调用扩充语义接口,而是直接通过人机语音交互完成。用户使用执行本技术实施例提供的语音交互方法的语音助手,使用过程无技术门槛,用户交互体验更为自然。同时,在拓展语音助手意图理解能力的过程,不涉及人工运营,开发维护成本更低,迭代周期短。
227.可以理解,本技术实施例提供的语音交互方法,不限于单电子设备的语音交互,在第一电子设备将第一语音指令与第二语音指令建立关联后,第一电子设备可以将关联关系同步给其他电子设备。
228.下面将描述如何根据第二语音指令(标准语音指令)与第一语音指令(非标准语音指令)之间的关联关系改善语音助手对非标准语音指令的识别。
229.在本技术实施例中,标准语音指令与非标准语音指令的关联关系可以为标准语音指令与非标准语音指令的等同关系。其中,标准语音指令与非标准语音指令之间的等同关系可以如下表1所示。
230.非标准语音指令标准语音指令飚个歌吧播放音乐movie走起播放电影打开pyq打开朋友圈
231.表1
232.在其中一种可能实现方式中,标准语音指令与非标准语音指令的关联关系可以为标准语音指令对应的识别结果(如用户意图)与非标准语音指令的关联关系。其中标准语音指令对应的识别结果(如用户意图)与非标准语音指令的关联关系可以如下表2所示。
233.非标准语音指令标准语音指令的用户意图飚个歌吧播放音乐movie走起播放电影打开pyq打开朋友圈
234.表2
235.方式1,语音助手根据标准语音指令与非标准语音指令之间的关联关系更新关联表,并根据更新后的关联表改善语音助手对非标准语音指令的识别。
236.在本技术实施例中,可以构建一个数据库,该数据库存储关联表。由语音助手维护该关联表,该关联表描述非标准语音指令(包含非标准句式/关键词、和/或歧义指令)与标准语音指令之间的关联关系,即非标准语音指令与标准指令之间等效映射关系。该关联表可以为上述表1。
237.如图10所示,在语音助手的asr模块22内挂载关联表,由asr模块22更新并使用该关联表。在图3步骤s307中,电子设备的语音助手建立第一语音指令与第二语音指令的关联关系后,语音助手根据第一语音指令与第二语音指令的关联关系更新非标准语音指令与标准语音指令的关联表,即在关联表中非标准语音指令内填入第一语音指令“飚个歌吧”,在关联表的标准语音指令处对应于第一语音指令“飚个歌吧”填入第二语音指令“播放音乐”,如表1,非标准语音指令“飚个歌吧”其映射为标准语音指令“播放音乐”。
238.在语音助手更新完关联表后,用户再次向电子设备发送第一语音指令“飚个歌吧”,电子设备接收到第一语音指令“飚个歌吧”后,语音助手的asr模块22识别第一语音指
令“飚个歌吧”,asr模块22的语言模型输出第一语音指令文本“飚个歌吧”,并在语言模型处理阶段,语音模型可查阅关联表,根据关联表将第一语音指令“飚个歌吧”替换为关联的第二语音指令“播放音乐”,输出第二语音指令文本“播放音乐”给nlu模块23。nlu模块23对第二语音指令“播放音乐”进行处理。即在asr模块22根据关联表将第一语音指令替换为第二语音指令之后,后续语音助手的nlu模块23和dm模块等处理流程则对第二语音指令“播放音乐”进行处理,而非对第一语音指令“飚个歌吧”处理。
239.可选的,上述关联表可以挂载在nlu模块23内,在nlu模块23对非标语音指令进行处理过程中,nlu模块23根据关联表将非标准语音指令替换为对应的标准语音指令。即将关联表从asr模块22直接平移到nlu模块23前端,将即将输入到nlu模块23进行处理的非标准语音指令文本,替换为标准语音指令文本,具体实现方式同asr模块22,在此不再赘述。
240.可选的,上述关联表也可以关联到dm模块24。例如,将关联表作为一个技能,或者置于一个特定的技能里,若语音助手的模块无法识别某一语音指令时,dm模块会调用该技能,确认该语音指令是否与其他语音指令关联,或者该语音指令是否已关联特定的操作,若是,dm模块再根据关联的语音指令对应的响应执行操作,或者直接执行匹配到的已关联的特定操作。
241.可选的,上述语音指令替换的处理流程,也可以在其它语音识别算法或流程中进行,本技术实施例对此不作具体限定。
242.以关联表挂载在asr模块22为例,语音助手更新关联表可以通过以下方式:
243.第一方式:
244.请参阅图11,语音助手维护的技能清单中包括关联技能。关联技能用于将当前处理的语音指令与上一条语音指令进行关联。具体地,在上述图3的步骤s305中,用户使用第二种方式发送第二语音指令,即用户向电子设备输入语音“我的意思是播放音乐”,asr模块22将该语音输入转换为文本“我的意思是播放音乐”,并将其输入到nlu模块23。nlu模块23从该语音对应的文本中提取用户意图,从文本“播放音乐”提取出用户意图1(即“播放音乐”),从文本“我的意思是”提取出用户意图2(即对第一语音指令进行解释),并将所提取的意图数据传递给dm模块24。dm模块24根据用户意图1和用户意图2,分别调用其所对应的技能。即根据用户意图1调用音乐播放控制技能,根据用户意图2调用关联技能。音乐播放控制技能和关联技能分别通过调用所对应的服务接口,执行对应的操作。如音乐播放控制技能调用播控服务,语音助手输出执行指令给电子设备,电子设备根据该执行指令播放音乐。关联技能调用关联服务,语音助手记录第一语音指令“飚个歌吧”和第二语音指令“播放音乐”,在关联表中非标准语音指令内填入第一语音指令“飚个歌吧”,在关联表的标准语音指令处对应于第一语音指令“飚个歌吧”填入第二语音指令“播放音乐”,由此实现标准语音指令(第二语音指令)与非标准语音指令(第一语音指令)之间的关联。
245.在本技术实施例中,在该关联表为上述表2时,则该关联表可以挂载在nlu模块23,在nlu模块23工作时,从关联表中找到该第一语音指令“飚个歌吧”的用户意图为“播放音乐”,则nlu模块23输出第一语音指令“飚个歌吧”的用户意图为“播放音乐”。
246.第二方式:
247.请参阅图12,asr模块22包括一检测模块。检测模块用于检测用户输入的语音是否包括预设模板,若包括预设模板,从该语音输入中提取出用于解释或复述未识别语音指令
的标准语音指令,并将其传输给nlu模块23。检测模块还用于将提取出的标准语音指令与非标准语音指令进行关联。
248.具体地,在上述图3的步骤s305中,用户使用第二种方式发送第二语音指令,即用户向电子设备输入语音“我的意思是播放音乐”,asr模块22可正确将该语音输入转换为文本“我的意思是播放音乐”。语言模型将文本“我的意思是播放音乐”输入到检测模块。检测模块通过检测或匹配预设模板“我的意思是”,以识别当前语音输入是否包括预设模板“我的意思是”。若检测到该语音输入中存在预设模板,则检测模块可以确定当前语音输入涉及复述或解释第一语音指令“飚个歌吧”,则检测模块从文本“我的意思是播放音乐”中提取用于复述或解释第一语音指令的第二语音指令“播放音乐”,即语音输入文本中预设模板“我的意思是”后面的文本。检测模块将所提取的第二语音指令传递给后续nlu模块23和dm模块24,以识别第二语音指令对应的用户意图“播放音乐”,调用“音乐播放控制技能”,音乐播放控制技能调用播控服务,语音助手输出执行指令给电子设备,电子设备根据该执行指令播放音乐。检测模块更新关联表,在关联表中非标准语音指令内填入第一语音指令“飚个歌吧”,在关联表的标准语音指令处对应于第一语音指令“飚个歌吧”填入第二语音指令“播放音乐”,由此实现标准语音指令(第二语音指令)与非标准语音指令(第一语音指令)之间的关联。
249.需要说明的是,检测模块可以作为asr模块22的一部分,也可以部署在asr模块22外部,也可以置于asr模块22之后,不限定检测模块的部署位置和形式。
250.可选地,在用户使用第一种方式发送第二语音指令时,语音助手也可以默认第一语音指令“飚个歌吧”和第二语音指令“播放音乐”关联,在关联表中非标准语音指令内填入第一语音指令“飚个歌吧”,在关联表的标准语音指令处对应于第一语音指令“飚个歌吧”填入第二语音指令“播放音乐”。
251.可选地,在用户使用第三种方式发送第二语音指令时,电子设备接收到触发指令,将该触发指令发送给语音助手,语音助手根据该触发指令关联第一语音指令“飚个歌吧”和第二语音指令“播放音乐”,在关联表中非标准语音指令内填入第一语音指令“飚个歌吧”,在关联表的标准语音指令处对应于第一语音指令“飚个歌吧”填入第二语音指令“播放音乐”。
252.方式2,语音助手根据标准语音指令与非标准语音指令之间的关联关系构建训练数据,根据训练数据训练语音助手。
253.在本技术实施例中,可以构建一个数据库,该数据库存储关联表,该关联表可以为上述表2,根据该关联表编制训练数据,对语音助手的asr模块22和/或nlu模块23进行训练,如增量学习训练,使得训练后的asr模块22和nlu模块23能够支持识别非标准语音指令。即将非标准语音指令添加到训练样本中,重新训练asr模块22和/或nlu模块23对应的网络模型。
254.可以理解,方式2并不要求积累一定数量的数据再进行训练,只需要根据标准语音指令与非标准语音指令的关联关系,提取非标准语音指令关联的标准语音指令所对应的用户意图,构建训练数据包括非标语音指令与其对应的用户意图,并将其新增到训练数据中,就可以完成上述增量学习。
255.请参阅图13,根据用户自定义的非标准语音指令“飚个歌吧”和标准语音指令“播
放音乐”之间的关联关系,构造包含用户自定义的非标准语音指令(采用非标准句式、非标准关键词或模糊歧义的语音指令)及其对应意图、词槽、垂域等信息的训练数据集。即根据关联表构建训练集,例如原来有1000条语音指令-意图的训练数据用于训练nlu模块23,该1000条训练数据未覆盖非标准语音指令“飚个歌吧”,根据非标准语音指令“飙个歌吧”对应的标准语音指令为“播放音乐”,得到其对应的用户意图为“播放音乐”。现在新增一条训练数据“指令:飙个歌吧,意图:播放音乐,词槽:null”。使用新增的训练数据对nlu模块23进行重训练或增量训练,在训练完成后,nlu模块23就能够支持识别非标准语音指令“飚个歌吧”。由此可拓展语音助手意图理解能力。
256.在一种可能实现方式中,可进一步采用少样本学习、增量学习等端侧学习技术,挖掘用户语言习惯,更深入地增量训练语音助手asr模块22和nlu模块23中的一种或多种,进一步提升语音助手意图理解能力和交互自然性。
257.以基于增量学习和生成式对抗网络(generative adversarial networks,gan)训练更新nlu模块23为例。
258.若语音助手记录的用户自定义的非标准语音指令数量较少,不足以支撑nlu模块23的增量学习,可采用gan网络批量生成与已记录用户自定义的非标准语音指令风格相同的用户自定义非标准语音指令。
259.请参阅图14,可首先使用少量标注数据(包括已记录的用户自定义的非标准语音指令及其对应的等效标准语音指令)调优生成网络和分类网络,使其挖掘学习用户语言习惯。然后,将标准语音指令输入至生成网络,批量生成对应的用户自定义的非标准语音指令,得到标准语音指令与非标语音指令的标注的数据对,使其覆盖各种场景且符合用户语音习惯。最后将所生成的标注数据用于nlu模块的增量学习。
260.可选的,所述生成网络可基于bert、gpt-3等预训练模型构建,本技术实施例对此不作具体限定。
261.可以理解,也可以采用少样本学习技术训练语音助手,具体实现原理参照上述,对此不再赘述。
262.在本技术实施例中,采用少样本学习、增量学习等端侧学习技术,可使得语音助手进一步拓展支持用户未“解释”过或无记录历史的非标准句式/关键词、和/或歧义指令。即不仅可以支持用户“解释”过的非标准句式/关键词、和/或歧义指令,还可以通过生成训练数据集或少样本学习,支持用户未使用或“解释”过的非标准句式/关键词、和/或歧义指令,使得语音助手由机械地拓展支持用户自定义的非标准语音指令,变为挖掘学习用户语音指令中隐含的语言习惯。
263.示例性地,用户未使用非标准语音指令“打开pyq”与手机交互过,基于增量学习和生成式对抗网络(generative adversarial networks,gan)训练更新nlu模块23后,语音助手根据用户的非标准语音指令“飚个歌”挖掘出用户的语言习惯,语音助手可以识别非标准语音指令“打开pyq”对应的用户意图为“打开朋友圈”。
264.在本技术实施例中,除对本地语音助手的功能模块进行训练更新外,还可采用联邦学习、数据众包等技术挖掘并学习群体用户的非标准语音指令信息,从而使得语音助手能够更快地适配热词、流行事件等。
265.在一种可能实现方式中,用户主动或被动上传自定义的非标准语音指令及其对应
等效标准语音指令信息,和/或其特征信息,和/或其关联的算法模型训练更新信息至云服务器。云服务器在获取上述信息中的一种或多种后,可通过提取其中的共性信息,训练更新语音助手的公共asr模块22和nlu模块23,即所有用户默认搭载的asr算法和nlu算法。云服务器下发训练更新后的asr和/或nlu算法至用户端,可以通过更新版本方式,将训练更新后的语音助手app下发至群体用户。
266.在本技术实施例中,不仅可以学习适配个体用户的非标准语音指令,还可以挖掘适配群体用户的非标准语音指令,从而进一步提升语音助手的运营适配效率。
267.本技术实施例提供一种计算机可读存储介质,计算机可读存储介质包含用于执行上述任一项的方法的计算机可执行指令。
268.本技术实施例提供一种系统,系统包括:第二方面提供的计算机可读存储介质;和能够执行计算机可执行指令的处理器。
269.本技术实施例提供一种电子设备,包括:至少一个存储器,用于存储程序;和至少一个处理器,用于执行存储器存储的程序,当程序被处理器执行时,以使得电子设备执行如上任一的方法。
270.虽然已经示出并描述了本发明构思的一些示例实施例,但是本领域普通技术人员之一将理解,在不脱离由所附权利要求限定的精神和范围的情况下,可对其作出各种形式和细节上的修改。因此,以上公开的主题内容应该理解为示出性而非限制性的,并且所附权利要求旨在覆盖落入本发明构思的实质精神和范围内的所有这种修改、改进和其它实施例。因此,在法律允许的最大程度内,通过对所附权利要求及其等同物的允许的最宽解释确定本发明构思的范围,并且所述范围不应由以上具体实施方式限制或局限。
271.上述各个附图对应的流程的描述各有侧重,某个流程中没有详述的部分,可以参见其他流程的相关描述。
272.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。实现车牌号码识别的计算机程序产品包括一个或多个进行车牌号码识别的计算机指令,在计算机上加载和执行这些计算机程序指令时,全部或部分地产生按照本技术实施例图3的流程或功能。
273.所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如:同轴电缆、光纤、数据用户线(digital subscriber line,dsl))或无线(例如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如:软盘、硬盘、磁带)、光介质(例如:数字通用光盘(digital versatile disc,dvd))、或者半导体介质(例如:固态硬盘(solid state disk,ssd))等。
274.本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
275.以上所述为本技术提供的实施例,并不用以限制本技术,凡在本技术的精神和原
则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1