语音处理方法、装置及系统

文档序号:197419 发布日期:2021-11-02 浏览:36次 >En<

阅读说明:本技术 语音处理方法、装置及系统 (Voice processing method, device and system ) 是由 王科涛 聂为然 于 2021-06-22 设计创作,主要内容包括:本申请涉及智能车辆技术领域,提供一种语音处理方法、装置及系统,其中获取用户的输入语音信息;根据输入语音信息,确定输入语音信息对应的多个第一置信度,多个第一置信度分别对应于多个语种;根据用户的用户特征修正多个第一置信度为多个第二置信度;根据多个第二置信度,确定输入语音信息的语种。采用如上所述的语音处理方法,在考虑了用户特征的基础上确定用户的输入语音信息的语种,因此,能够提高语种识别精度,提高语音识别能力。(The application relates to the technical field of intelligent vehicles, and provides a voice processing method, a voice processing device and a voice processing system, wherein input voice information of a user is acquired; determining a plurality of first confidence degrees corresponding to the input voice information according to the input voice information, wherein the plurality of first confidence degrees respectively correspond to a plurality of languages; correcting the plurality of first confidence degrees into a plurality of second confidence degrees according to the user characteristics of the user; and determining the language of the input voice information according to the plurality of second confidence degrees. By adopting the voice processing method, the language of the input voice information of the user is determined on the basis of considering the characteristics of the user, so that the language identification precision and the voice identification capability can be improved.)

语音处理方法、装置及系统

技术领域

本申请涉及人工智能技术领域,特别涉及一种语音处理方法、装置及系统。

背景技术

随着计算机技术的发展,语音识别技术已得到了越来越广泛的应用。另外,随着全球化的加深,经常会出现使用不同语种的人混合办公和生活的场景。例如,在国际航班上,乘员往往是来自不同的国家或地区的人,他们所使用的语言并不相同。或者,例如在新加坡这样的国家,英语是大多数当地人的第一外语,同时,由于华人、华裔较多,他们通常会以汉语为日常交流语言。由此,英语和汉语都可能出现在交流中。因此,为了应对这种情况,出现了一种能够识别不同语种语音(例如,既能够识别汉语语音,又能够识别英语语音)的技术。

但是目前该技术的识别结果有时会产生波动,即对语音的识别能力较低,在这方面还存在改进的余地。

发明内容

本申请提供一种能够提高语音识别能力的语音处理方法、装置及系统等,用于提升语音识别的准确性。

本申请第一方面涉及一种语音处理方法,包括如下内容:获取用户的输入语音信息;根据输入语音信息,确定输入语音信息对应的多个第一置信度,多个第一置信度分别对应于多个语种;根据用户的用户特征修正多个第一置信度为多个第二置信度;根据多个第二置信度,确定输入语音信息的语种。

采用如上所述的语音处理方法,根据用户的用户特征修正多个第一置信度为多个第二置信度,根据多个第二置信度确定输入语音信息的语种,即在考虑了用户特征的基础上确定用户的输入语音信息的语种,因此,能够提高语种识别精度,提高语音识别能力。

作为本申请第一方面的一个可能的实现方式,根据用户的用户特征修正多个第一置信度为多个第二置信度,具体可以包括:在多个第一置信度小于第一阈值时,根据用户特征修正多个第一置信度为多个第二置信度。

多个第一置信度小于第一阈值时难以根据第一置信度来确定输入语音信息的语种。在此时根据用户特征修正多个第一置信度为多个第二置信度的话,根据第二置信度确定输入语音信息的语种,能够提高语种的识别精度,提高语音识别能力。

用户特征可以包括历史语种记录、用户指定语种中的一个或多个。

采用该方式,根据用户的历史语种记录和/或用户指定语种来修正第一识别置信度,在此基础上确定输入语音的语种,从而,能够提高语种识别能力。

这里的用户的历史语种记录是指在输入上述输入语音之前该用户输入的语音所属的语种的记录。这里的用户指定语种是指用户设定的系统语言的种类,可能仅存在一个用户指定语种,也可能存在多个用户指定语种(即用户曾经设定过的系统语言有多种)。

作为本申请第一方面的一个可能的实现方式,历史语种记录与用户指定语种是根据输入语音信息的声纹特征查询得到的。

采用如上方式,根据输入语音信息的声纹来查询历史语种记录或用户指定语种,例如与根据人脸信息、虹膜等来查询的方式相比,能够避免对用户(说话者)的误识别(将非说话者识别为说话者)造成语种误识别。另外,采用如上方式,根据输入语音信息即可得到声纹,而根据人脸信息、虹膜等来查询的方式还需要获得用户图像,因而,根据声纹进行查询的方式所需的设备更少、处理更迅速。

作为本申请第一方面的一个可能的实现方式,多个第一置信度由多个初始置信度和多个预设权重确定。语音处理方法还可以包括如下内容:根据多个第二置信度,更新多个预设权重。

如此,可以提高以后的处理周期中的语种识别精度。

作为本申请第一方面的一个可能的实现方式,根据多个第二置信度,更新多个预设权重,具体包括:在多个第二置信度中存在大于第一阈值的第二置信度时,根据多个第二置信度,更新多个预设权重。

如此,由于在多个第二置信度中存在大于第一阈值的第二置信度时,本次处理周期的结果可靠性更好,因此,在此时根据多个第二置信度更新多个预设权重,从而能够更加可靠地提高以后的处理周期中的语种识别精度。

作为本申请第一方面的一个可能的实现方式,还包括:根据输入语音信息与输入语音信息的语种确定输入语音信息的语义。

采用如上方式,能够提高语种识别精度,提高语义理解精度。

作为本申请第一方面的一个可能的实现方式,多个语种是预先设定的。

作为本申请第一方面的一个可能的实现方式,多个第一置信度由多个初始置信度和多个预设权重确定;语音处理方法还包括:在获取用户的输入语音信息之前,根据场景特征设定多个预设权重。

采用如上方式,根据场景特征设定预设权重,从而,能够适应不同场景,以尽可能最适合场景的预设权重来得到语种识别结果,提高了语种识别能力,提高了语音识别能力。

作为本申请第一方面的一个可能的实现方式,场景特征包括环境特征和/或音频采集器特征。

作为本申请第一方面的一个可能的实现方式,环境特征包括环境信噪比、电源直流交流电信息或环境振动幅度中的一个或多个,音频采集器特征包括麦克风排布信息。

环境信噪比、电源直流交流电信息、环境振动幅度、麦克风排布信息这些事项都有可能影响语种置信度,因此,根据这些信息来调整预设权重,在此基础上进行语种识别,从而能够提高语种识别能力。

作为本申请第一方面的一个可能的实现方式,根据场景特征设定多个预设权重,具体包括:获取预先采集的第一语音数据与第一语音数据的预先记录的第一语种信息;根据第一语音数据与场景特征确定第二语音数据;根据第二语音数据确定第二语音数据的第二语种信息;根据第一语种信息与第二语种信息设定多个预设权重。

作为本申请第一方面的一个可能的实现方式,根据第二语音数据确定第二语音数据的第二语种信息,具体包括:获取多个测试权重组,多个测试权重组中的任一个包括多个测试权重;根据第二语音数据与多个测试权重组确定多个第二语种信息,多个第二语种信息与多个测试权重组分别对应;根据第一语种信息与第二语种信息设定多个预设权重,具体包括:根据第一语种信息与多个第二语种信息确定多个第二语种信息的多个准确率;根据准确率最高的第二语种信息对应的测试权重组设定多个预设权重。

作为本申请第一方面的一个可能的实现方式,设定多个预设权重,具体包括:在权重范围内设定多个预设权重。

作为本申请第一方面的一个可能的实现方式,更新多个预设权重,具体包括:在权重范围内更新多个预设权重。

预设权重超出权重范围的话,识别结果将不可靠,因此,在权重范围内设定或更新能够尽量保证识别结果的精度。

作为本申请第一方面的一个可能的实现方式,权重范围是按照如下方式确定的:

获取预先采集的多个测试语音数据组与多个测试语音数据组的预先记录的第一语种信息,多个测试语音数据组中的任一个包括多个测试语音数据;获取多个测试权重组,多个测试权重组中的任一个包括多个测试权重;根据多个测试语音数据组、第一语音信息与多个测试权重组确定权重范围。

采用如上方式,通过大量的语音数据组进行测试,来设定多语种的预设权重集合的权重范围,也就是规定了语种识别模型的鲁棒性范围,使语种识别模型在此范围内工作,从而保证了语种识别结果的可靠性。

本申请第二方面提供一种语音处理方法,包括如下内容:获取用户的输入语音信息;根据输入语音信息,确定输入语音信息对应的多个第三置信度,多个第三置信度分别对应于多个语种;根据场景特征修正多个第三置信度为多个第四置信度;根据多个第四置信度,确定输入语音信息的语种。

采用如上所述的语音处理方法,根据场景特征修正多个第一置信度为多个第二置信度,根据多个第二置信度确定输入语音信息的语种,即在考虑了场景特征的基础上确定用户的输入语音信息的语种,从而能够使语音处理方法尽可能适应实际的场景,能够提高语种识别精度,提高语音识别能力。

这里,场景特征可以包括环境特征和/或音频采集器特征。

作为本申请第二方面的一个可能的实现方式,环境特征包括环境信噪比、电源直流交流电信息或环境振动幅度中的一个或多个,音频采集器特征包括麦克风排布信息。

作为本申请第二方面的一个可能的实现方式,根据场景特征修正多个第三置信度为多个第四置信度,具体包括:根据场景特征设定多个预设权重;根据多个预设权重修正多个第三置信度为多个第四置信度。

作为本申请第二方面的一个可能的实现方式,根据场景特征设定多个预设权重,具体包括:获取预先采集的第一语音数据与第一语音数据的预先记录的第一语种信息;根据第一语音数据与场景特征确定第二语音数据;根据第二语音数据确定第二语音数据的第二语种信息;根据第一语种信息与第二语种信息设定多个预设权重。

作为本申请第二方面的一个可能的实现方式,根据第二语音数据确定第二语音数据的第二语种信息,具体包括:获取多个测试权重组,测试权重组包括多个测试权重;根据第二语音数据与多个测试权重组确定多个第二语种信息,多个第二语种信息与多个测试权重组分别对应;根据第一语种信息与第二语种信息设定多个预设权重,具体包括:根据第一语种信息与多个第二语种信息确定多个第二语种信息的多个准确率;根据准确率最高的第二语种信息对应的测试权重组设定多个预设权重。

本申请第二方面的具体特征可以与第一方面相同或相似,因此其技术效果也基本相同,这里不再重复描述。

本申请第三方面提供一种语音处理装置,包括处理模块与收发模块,收发模块用于获取用户的输入语音信息;处理模块用于,根据输入语音信息,确定输入语音信息对应的多个第一置信度,多个第一置信度分别对应于多个语种。处理模块还用于,根据用户的用户特征修正多个第一置信度为多个第二置信度,根据多个第二置信度,确定输入语音信息的语种。

作为本申请第三方面的一个可能的实现方式,处理模块具体用于,在多个第一置信度小于第一阈值时,根据用户特征修正多个第一置信度为多个第二置信度。

作为本申请第三方面的一个可能的实现方式,用户特征包括历史语种记录、用户指定语种中的一个或多个。

作为本申请第三方面的一个可能的实现方式,历史语种记录与用户指定语种是根据输入语音信息的声纹特征查询得到的。

作为本申请第三方面的一个可能的实现方式,多个第一置信度由多个初始置信度和多个预设权重确定;处理模块还用于,根据多个第二置信度,更新多个预设权重。

作为本申请第三方面的一个可能的实现方式,处理模块具体用于,在多个第二置信度中存在大于第一阈值的第二置信度时,根据多个第二置信度,更新多个预设权重。

作为本申请第三方面的一个可能的实现方式,处理模块还用于,根据输入语音信息与输入语音信息的语种确定输入语音信息的语义。

多个语种可以是预先设定的。

作为本申请第三方面的一个可能的实现方式,多个第一置信度由多个初始置信度和多个预设权重确定;处理模块还用于,在获取用户的输入语音信息之前,根据场景特征设定多个预设权重。

场景特征可以包括环境特征和/或音频采集器特征。环境特征可以包括环境信噪比、电源直流交流电信息或环境振动幅度中的一个或多个,音频采集器特征可以包括麦克风排布信息。

作为本申请第三方面的一个可能的实现方式,处理模块具体用于,获取预先采集的第一语音数据与第一语音数据的预先记录的第一语种信息,根据第一语音数据与场景特征确定第二语音数据,根据第二语音数据确定第二语音数据的第二语种信息,根据第一语种信息与第二语种信息设定多个预设权重。

作为本申请第三方面的一个可能的实现方式,处理模块具体用于,获取多个测试权重组,多个测试权重组中的任一个包括多个测试权重,根据第二语音数据与多个测试权重组确定多个第二语种信息,多个第二语种信息与多个测试权重组分别对应,根据第一语种信息与多个第二语种信息确定多个第二语种信息的多个准确率,根据准确率最高的第二语种信息对应的测试权重组设定多个预设权重。

作为本申请第三方面的一个可能的实现方式,处理模块具体用于,在权重范围内设定多个预设权重。

作为本申请第三方面的一个可能的实现方式,处理模块具体用于,在权重范围内设定多个预设权重。

作为本申请第三方面的一个可能的实现方式,权重范围是按照如下方式确定的:

获取预先采集的多个测试语音数据组与多个测试语音数据组的预先记录的第一语种信息,多个测试语音数据组中的任一个包括多个测试语音数据;获取多个测试权重组,多个测试权重组中的任一个包括多个测试权重;根据多个测试语音数据组、第一语音信息与多个测试权重组确定权重范围。

第三方面的语音处理装置,可以获得与第一方面的语音处理方法相同的技术效果,在这里不再重复进行描述。

本申请第四方面提供一种语音处理装置,包括处理模块与收发模块,收发模块用于获取用户的输入语音信息;处理模块用于,根据输入语音信息,确定输入语音信息对应的多个第三置信度,多个第三置信度分别对应于多个语种,处理模块还用于,根据场景特征修正多个第三置信度为多个第四置信度,根据多个第四置信度,确定输入语音信息的语种。

场景特征可以包括环境特征和/或音频采集器特征。

环境特征可以包括环境信噪比、电源直流交流电信息或环境振动幅度中的一个或多个,音频采集器特征可以包括麦克风排布信息。

作为第四方面的一个可能的实现方式,处理模块具体用于,根据场景特征设定多个预设权重,根据多个预设权重修正多个第三置信度为多个第四置信度。

作为第四方面的一个可能的实现方式,处理模块具体用于,获取预先采集的第一语音数据与第一语音数据的预先记录的第一语种信息,根据第一语音数据与场景特征确定第二语音数据,根据第二语音数据确定第二语音数据的第二语种信息,根据第一语种信息与第二语种信息设定多个预设权重。

作为第四方面的一个可能的实现方式,处理模块具体用于,获取多个测试权重组,测试权重组包括多个测试权重,根据第二语音数据与多个测试权重组确定多个第二语种信息,多个第二语种信息与多个测试权重组分别对应,根据第一语种信息与多个第二语种信息确定多个第二语种信息的多个准确率,根据准确率最高的第二语种信息对应的测试权重组设定多个预设权重。

采用第四方面的语音处理装置,可以获得与第二方面的语音处理方法相同的技术效果,这里不再重复描述。

本申请第五方面提供一种计算设备,其包括处理器与存储器,存储器存储有计算机程序指令,计算机程序指令当被处理器执行时使得处理器执行第一方面或第二方面中描述的任一方法。

本申请第六方面提供一种计算机可读存储介质,其存储有计算机程序指令,计算机程序指令当被计算机执行时使计算机执行第一方面或第二方面中描述的任一方法。

本申请第七方面提供一种计算机程序产品,其包括计算机程序指令,计算机程序指令当被计算机执行时使计算机执行第一方面或第二方面中描述的任一方法。

本申请第八方面提供一种系统,其包括第三方面至第四方面任一方面或任一可能的实施方式所提供的语音处理装置。

附图说明

图1是本申请实施例提供的语音处理方案的一个应用场景例的示意说明图;

图2是本申请实施例提供的语音处理方案所应用的一个语音处理系统的示意说明图;

图3是本申请一个实施例提供的语音处理方法的流程图;

图4是本申请一个实施例提供的语音处理方法的流程图;

图5为本申请一个实施例提供的语音处理装置的示意性结构说明图;

图6是是用于示意性地说明本申请一个实施例提供的语种识别方法的流程图;

图7所示为本申请一个实施例提供的语种识别装置的结构示意图;

图8用于示意性地说明本申请一个实施例提供的语音交互方法的流程图;

图9所示为本申请一个实施例提供的语音交互系统的结构示意图;

图10所示为权重范围的一种设定方法的示意说明图;

图11为本申请一个实施例涉及的语音交互系统的示意说明图;

图12为用于说明一个实施例中涉及的语音交互方法的其中一个流程的流程图;

图13为本申请一个实施例中提供的一种预设权重集合的初始化方法的示意说明图;

图14为本申请一个实施例中提供的一种语音交互过程的一部分流程的示意说明图;

图15为本申请一个实施例中提供的一种置信度修正方式的示意说明图;

图16为本申请一个实施例中提供的又一种置信度修正方式的示意说明图;

图17为本申请一个实施例中提供的一种电子控制单元的示意说明图。

应理解,上述结构示意图中,各框图的尺寸和形态仅供参考,不应构成对本发明实施例的排他性的解读。结构示意图所呈现的各框图间的相对位置和包含关系,仅为示意性地表示各框图间的结构关联,而非限制本发明实施例的物理连接方式。

具体实施方式

下面结合附图并举实施例,对本申请提供的技术方案作进一步说明。应理解,本申请实施例中提供的系统结构和业务场景主要是为了说明本申请的技术方案的可能的实施方式,不应被解读为对本申请的技术方案的唯一限定。本领域普通技术人员可知,随着系统结构的演进和新业务场景的出现,本申请提供的技术方案对类似技术问题同样适用。

应理解,本申请实施例提供的语音处理方案,包括语音处理方法、装置及系统。由于这些技术方案解决问题的原理相同或相似,在如下具体实施例的介绍中,某些重复之处可能不再赘述,但应视为这些具体实施例之间已有相互引用,可以相互结合。

首先参照图1描述本申请实施例提供的语音处理方案的一个应用场景例。在图1中例示的是应用在车辆上的场景,具体而言,如图1所示,车辆200的车机系统具有语音交互功能,可以通过中控显示屏210上的麦克风212(本示例中为麦克风阵列)接收驾驶员300等乘员的语音指令,按照该语音指令执行相应的控制(例如播放音乐、打开车窗、开启空调、进行导航等),同时,还可以针对该语音指令做出回应(反馈),例如通过中控显示屏210发出显示信息或者通过中控显示屏210上的扬声器(未图示)发出语音信息。

例如由于车辆200被不同的乘员乘坐,他们可能会发出不同语种的语音指令,或者即便是同一个乘员也可能会发出不同语种的语音指令,为此,车机系统具有能够应对不同语种的语音指令的功能。然而,受限于语种识别能力,有时,车机系统可能会得到错误的语种识别结果而造成无法识别或错误地识别该语音指令的语义,进而无法正确地做出响应。

具体而言,作为语种识别方案,存在一种利用机器学习模型进行分类识别的技术,然而,机器学习模型可能会学习一些与任务无关的信息,比如环境信噪比、音频采集器(声音传感器、麦克风)特征等,这会导致当实际应用中这些信息发生改变时,机器学习模型的预测结果就可能产生错误。

例如,在图1所示的场景下,车辆200是敞篷汽车,此时的环境噪声相对较大(例如为中噪环境),因而对于驾驶员300发出的英文语音指令“请播放音乐”,车机系统可能得到错误的语种识别结果从而不能正确地识别该语音指令进而无法做出正确的响应。另外,假如机器学习模型的训练样本数据对应的麦克风阵列类型与车机系统的麦克风212不同,那么也有可能造成车机系统产生错误的语种识别结果而不能正确地识别驾驶员的语音指令。

为此,本申请实施例提供一种语音处理方法、装置及系统等,能够提高多语种语音处理方案的语音识别能力。

下面描述本申请实施例提供的语音处理方法、装置及系统所应用的一种系统架构。图2是本申请实施例提供的语音处理方案所应用的一个语音处理系统的架构的示意说明图。如图2所示,该语音处理系统180包括语音处理装置182、声音传感器(麦克风)184、扬声器186与显示装置188等。

该语音处理系统180可以作为车机系统应用于智能车辆,另外,还可以应用于智能家居、智能办公、智能机器人、智能语音问答、智能语音分析、实时语音监控分析等场景。

声音传感器184用于获取用户的输入语音,语音处理装置182根据该声音传感器184的传感器数据得到用户的输入语音信息,对该输入语音信息进行处理,而得到该输入语音信息的语义。并且,语音处理装置182根据该语义执行相应的控制,例如控制扬声器186或显示装置188的输出。另外,除了扬声器186与显示装置188之外,语音处理装置182还可以与其他装置、机构连接,例如,语音处理系统180应用在车机系统中时,语音处理装置182还可以与车窗升降系统、空调系统等连接,以能够实现对车窗、空调系统等的控制。

下面参照图3对本申请一个实施例提供的语音处理方法进行描述。

图3是本申请一个实施例提供的语音处理方法的流程图。该语音处理方法可以由车辆、车载装置、车机、车载电脑等执行,也可以由车辆或车载装置中的部件例如芯片或处理器等执行。另外,除了应用于在车辆上以外,该语音处理方法还可以应用于智能家居或智能办公等其他场景中。此时,该语音处理方法可由这些场景中涉及的相关装置例如控制装置、处理器等执行。

如图3所示,该语音处理方法包括如下内容:

S1,获取用户的输入语音信息。用户的输入语音信息可以根据声音传感器采集的传感器数据得到,可以直接使用传感器数据,也可以是对传感器数据进行处理后得到的信息。另外,该输入语音信息的时间长度没有特别限定,可以对应用户的一段话,也可以对应一句话。再者,在进行语音处理时,可以将用户讲出的内容进行切分而形成多个输入语音信息,对多个输入语音信息分别执行后述S2-S4的处理。

S2,根据输入语音信息,确定输入语音信息对应的多个第一置信度,多个第一置信度分别对应于多个语种。这里,多个语种可以是预先设定的。另外,语种的置信度的含义是指输入语音信息属于该语种的概率。例如,得到的多个第一识别置信度为{汉语:0.6;英语:0.4;韩语:0;德语:0;日语:0}时,表示输入语音信息的语种是汉语的概率为0.6,是英语的概率为0.4,是韩语、德语、日语的概率是0。

另外,不同语种可以是指不同语系,例如汉语和英语属于不同语种,也可以是指同一语系下的不同小语种,例如汉语的普通话和粤语也属于不同语种。

S3,根据用户的用户特征修正多个第一置信度为多个第二置信度。这里的用户特征例如是历史语种记录或用户指定语种。历史语种记录是在当前处理周期之前识别并记录的用户的输入语音信息的识别语种。这里的识别语种的含义是对输入语音信息进行识别而确定的该输入语音信息的所属语种。用户指定语种是指用户例如根据自身常用语言设定的系统语言的种类。

S4,根据多个第二置信度,确定输入语音信息的语种。

采用如上的语音处理方法,根据用户特征来修正第一置信度,根据修正后得到的第二置信度来确定输入语音信息的语种,从而能够更加准确地确定输入语音信息的语种,能够提高语音识别能力。

关于具体的修正方法,例如,以根据历史语种记录来进行修正为例:假设历史语种记录中汉语的记录数较多,那么将本次处理周期中得到的多个第一置信度中汉语的置信度增大,如此来得到第二置信度,例如,根据历史语种记录,将上述多个第一置信度{汉语:0.6;英语:0.4;韩语:0;德语:0;日语:0},修正为{汉语:0.8;英语:0.2;韩语:0;德语:0;日语:0}。

可选地,可以在多个第一置信度小于第一阈值时,根据用户特征修正多个第一置信度为多个第二置信度。多个第一置信度小于第一阈值时难以根据第一置信度来确定输入语音信息的语种。在此时根据用户特征修正多个第一置信度为多个第二置信度的话,根据第二置信度确定输入语音信息的语种,能够提高语种的识别精度,提高语音识别能力。

可选地,历史语种记录与用户指定语种可以根据输入语音信息的声纹特征查询得到。如此,可容易地获得历史语种记录与用户指定语种。

可选地,多个第一置信度可由多个初始置信度和多个预设权重确定,此时,可以根据多个第二置信度,更新多个预设权重。

如此,根据本次处理周期的处理结果,更新预设权重,从而能够提高之后的处理周期的语种识别精度。

作为具体的更新方法,可以在多个第二置信度中存在大于第一阈值的第二置信度时,执行更新。

当多个第二置信度中存在大于第一阈值的第二置信度时,根据多个第二置信度得到的语种识别结果的可信度更高,在此时根据多个第二置信度来更新预设权重能够更加可靠地提高之后的处理周期的语种识别精度。

可选地,在确定输入语音信息的语种后,可以根据输入语音信息与输入语音信息的语种来确定输入语音信息的语义。

采用如上方式,由于能够更加准确地确定输入语音信息的语种,因而能够提高输入语音信息的语义的识别精度。

可选地,可以在获取用户的输入语音信息之前,根据场景特征设定上述多个预设权重。

由于在获取用户的输入语音信息之前,根据场景特征设定上述多个预设权重,因此能够提高语种识别精度。

这里的场景特征例如可以包括环境特征和/或音频采集器特征。

通过根据环境特征和/或音频采集器特征来设定多个预设权重,能够提高语种识别精度。

这里的环境特征可以包括环境信噪比、电源直流交流电信息或环境振动幅度中的一个或多个,音频采集器特征可以包括麦克风排布信息。

作为设定多个预设权重的具体方式,可以采用如下方式:获取预先采集的第一语音数据与第一语音数据的预先记录的第一语种信息;根据第一语音数据与场景特征确定第二语音数据;根据第二语音数据确定第二语音数据的第二语种信息;根据第一语种信息与第二语种信息设定多个预设权重。

更进一步地,根据第二语音数据确定第二语音数据的第二语种信息的具体方式可以为:获取多个测试权重组,多个测试权重组中的任一个包括多个测试权重;根据第二语音数据与多个测试权重组确定多个第二语种信息,多个第二语种信息与多个测试权重组分别对应;根据第一语种信息与多个第二语种信息确定多个第二语种信息的多个准确率;根据准确率最高的第二语种信息对应的测试权重组设定多个预设权重。

另外,可以对多个预设权重设定可调节的范围即权重范围,在权重范围内设定或更新多个预设权重。如果预设权重超出权重范围,则识别结果将不可信。因此,通过设定可调节的范围即权重范围,能够提高语种识别结果的精度。

这里,权重范围可以按照如下方式确定:获取预先采集的多个测试语音数据组与多个测试语音数据组的预先记录的第一语种信息,多个测试语音数据组中的任一个包括多个测试语音数据;获取多个测试权重组,多个测试权重组中的任一个包括多个测试权重;根据多个测试语音数据组、第一语音信息与多个测试权重组确定权重范围。

下面参照图4描述本申请另一个实施例提供的语音处理方法。图4是本申请一个实施例提供的语音处理方法的流程图。与上述实施例类似,该实施例的语音处理方法可由车辆、车载装置、车机、车载电脑等执行,也可以由车辆或车载装置中的部件例如芯片或处理器等执行。另外,本实施例中的部分内容与上述实施例相同,因而对于这些内容不再重复描述。

如图4所示,该语音处理方法包括如下内容:

S6,获取用户的输入语音信息。

S7,根据输入语音信息,确定输入语音信息对应的多个第三置信度,多个第三置信度分别对应于多个语种。

S8,根据场景特征修正多个第三置信度为多个第四置信度。

S9,根据多个第四置信度,确定输入语音信息的语种。

采用如上的语音处理方法,根据用户特征来修正第三置信度,根据修正后得到的第四置信度来确定输入语音信息的语种,从而能够更加准确地确定输入语音信息的语种,能够提高语音识别能力。这里,第三置信度的获得方式可以与上述第一置信度相同,也可以不同,第四置信度的获得方式可以与上述第二置信度相同,也可以不同。根据场景特征进行修正的具体方式可以和上述实施例中的根据用户特征进行修正的具体方式相同,也可以不同。

本实施例中的修正处理和上述实施例中描述的修正处理可以结合使用,即根据用户特征和场景特征两方来对语种置信度进行修正,从而能够更加准确地确定输入语音信息的语种。

在本实施例中,可选地,可以根据场景特征设定多个预设权重;根据多个预设权重修正多个第三置信度为多个第四置信度。

另外,可选地,多个预设权重的设定方式具体可以是:获取预先采集的第一语音数据与第一语音数据的预先记录的第一语种信息;根据第一语音数据与场景特征确定第二语音数据;根据第二语音数据确定第二语音数据的第二语种信息;根据第一语种信息与第二语种信息设定多个预设权重。

可选地,作为一个具体的实现方式,获取多个测试权重组,测试权重组包括多个测试权重;根据第二语音数据与多个测试权重组确定多个第二语种信息,多个第二语种信息与多个测试权重组分别对应;根据所述第一语种信息与所述多个第二语种信息确定所述多个第二语种信息的多个准确率;根据准确率最高的第二语种信息对应的测试权重组设定多个预设权重。

下面参照图5对本申请一个实施例提供的一种语音处理装置进行描述。图5为本申请一个实施例提供的语音处理装置的示意性结构说明图。该语音处理装置190用于执行参照图3描述的实施例中的语音处理方法或者参照图4描述的实施例中的语音处理方法,其结构根据上面的描述可以获知,因此这里仅作简要描述。如图5所示,该语音处理装置190包括处理模块192与收发模块194。处理模块192可以用于执行上述S2-S4或者S7-S9中的内容,收发模块194可以用于执行上述S1或者S6中的内容。另外,该语音处理装置190可以由硬件构成,也可以由软件构成,或者由软硬件结合构成。采用本实施例的语音处理装置190,能够获得与上面描述的语音处理方法相同的技术效果,因而这里省略对技术效果的重复描述。

下面参照图6对本申请一个实施例提供的一种语种识别方法进行描述。

图6是用于示意性地说明本申请一个实施例提供的一种语种识别方法的流程图。该语种识别方法可以由车辆、车载装置、车机、车载电脑、芯片、处理器等执行。如图6所示,在本实施例的语种识别方法中,首先,在步骤S10中,获取用户的输入语音信息。例如获取麦克风接收到的用户的输入语音数据作为输入语音信息,或者对麦克风的输入语音数据进行预处理而得到输入语音信息。在步骤S12中,对输入语音进行识别而得到多语种的第一识别置信度集合,第一识别置信度集合中的多个第一识别置信度与多个语种分别对应。例如,多语种的第一识别置信度集合为{汉语:0.9;英语:0.1;韩语:0;德语:0;日语:0}。即,输入语音信息的语种是汉语的概率是0.9,是英语的概率是0.1,是韩语、德语、日语的概率是0。

在步骤S14中,判断多语种的第一识别置信度集合中是否存在大于阈值的第一识别置信度。这里的阈值例如可以设定为0.8。当判断结果为“是”时,即存在大于阈值的第一识别置信度(例如汉语的第一识别置信度0.9)时,根据该第一识别置信度集合生成识别结果并输出。这里的识别结果可以是指示识别语种(例如汉语)的结果,也可以是第一识别置信度集合本身。另外,作为其他实施例,也可以省略该S14,直接进行后述的步骤S18。

另外,当步骤S14中的判断结果为“否”时,即不存在大于阈值的第一识别置信度,在步骤S18中,根据用户的用户特征对第一识别置信度集合进行修正计算而得到第二识别置信度集合。

作为用户特征的例子,可以举出用户的历史语种记录和用户指定语种等。

历史语种记录是指在输入上述输入语音之前该用户输入的语音的识别语种的记录。用户指定语种是指用户设定的系统语言(例如语音交互系统的系统语言、应用在手机上时手机操作系统的系统语言等)的种类。另外,用户指定语种可能是一个,也可能是多个(即用户曾经设定的系统语言有多种)。历史语种记录可以通过输入语音的声纹在数据库中进行查询得到,还可以通过用户的人脸信息、虹膜信息等进行查询得到。即,根据声纹、人脸信息、虹膜信息等能够确定用户的身份,由此,可以从数据库中得到用户的历史语种记录。根据输入语音的声纹来查询历史语种记录与用户指定语种,例如与根据人脸信息、虹膜等来查询的方式相比,能够避免对用户(说话者)的误识别(将非说话者识别为说话者)造成语种误识别。此外,根据输入语音信息即可获得声纹,而根据人脸信息、虹膜等来查询的方式还需要获得用户图像,因而,根据声纹进行查询的方式所需的设备更少、处理更迅速。

另外,或许需要说明的是,例如通过声纹来得到用户指定语种这一方式的基础是,在用户对系统语言进行设定时采集用户的声纹,将声纹(或者说用户身份)与用户设定的系统语言相关联地存储在用户指定语种数据库中。这里所说的数据库可以存储在本地,也可以存储在具有公信力的平台上。

在根据用户特征修正第一识别置信度集合得到第二识别置信度集合后,在步骤S20中,根据第二识别置信度集合生成语种识别结果。例如可以直接将第二识别置信度集合作为识别结果输出,或者,在第二识别置信度集合中存在大于阈值的第二识别置信度时,输出第二识别置信度集合或指示识别语种的信息,在第二识别置信度集合中不存在大于阈值的第二识别置信度时,将第一识别置信度集合作为识别结果输出。

采用如上方法,根据用户特征对第一识别置信度进行计算而得到第二识别置信度,根据该第二识别置信度确定语种识别结果,如此,能够提高语种识别能力。

可选地,在本实施例的语种识别方法中还包括:在第二识别置信度集合中的多个第二识别置信度小于阈值时,根据对输入语音进行自动语音识别得到的自动语音识别置信度或者对输入语音进行自然语言理解(Natural Language Understanding,NLU)得到的自然语言理解置信度生成语种识别结果。

采用如上方式,在根据第二识别置信度难以识别输入语音的语种时,根据自动语音识别置信度或自然语言理解置信度来确定输入语音的语种,从而,能够提高语种识别能力。作为具体的实现方式,例如将自动语音识别置信度超过阈值的语种作为输入语音的识别语种。

可选地,在本实施例中,第一识别置信度集合可以通过如下方式得到:对输入语音进行识别而得到初始置信度集合;将初始置信度集合中的多个初始置信度与预设权重集合中的多个预设权重分别相乘,而得到第一识别置信度集合。

此时,当第二识别置信度集合中存在大于阈值的第二识别置信度时,可以更新预设权重集合,而使多个语种中第二识别置信度大于阈值的识别语种的预设权重相对于其他语种的预设权重增大。

采用如上技术手段,当第二识别置信度集合中存在大于阈值的第二识别置信度时,也就是可以确定输入语音的语种时,按照如上方式更新预设权重集合,如此,在对之后的输入语音进行处理时,使用更新后的预设权重集合,从而能够提高语种识别的精度,提高语种识别能力。

更新预设权重集合的具体方式可以为:对预设权重集合进行修正计算而得到修正权重集合;在修正权重集合中的多个修正权重在权重范围内时,用多个修正权重的值更新预设权重集合。

如果预设权重超出权重范围外的话,根据预设权重得到语种识别的结果的可信度是比较低的,因而,采用如上方式,在权重范围内修正预设权重,能够抑制语种的误识别率。

另外,在本实施例中,可以根据场景特征预先设定预设权重集合。从而,能够适应不同场景,以尽可能最适合场景的预设权重来得到语种识别结果,提高了语种识别能力。

场景特征可以包括环境特征和/或音频采集器特征。环境特征可以包括环境信噪比、电源直流交流电信息或环境振动幅度,音频采集器特征可以包括麦克风排布信息。麦克风排布信息是指,是单麦克风还是麦克风阵列,或者在是麦克风阵列时是线性阵列、平面阵列还是立体阵列。

环境信噪比、电源直流交流电信息、环境振动幅度、麦克风排布信息这些事项都有可能影响语种置信度,因此,根据这些信息来调整预设权重,在此基础上进行语种识别,从而能够提高语种识别能力。

述设定预设权重集合的具体方式可以是:获取多个测试权重集合;将拟环境数据集输入语种识别模型,拟环境数据集是根据场景特征和无噪声数据集得到的;根据语种识别模型输出的初始置信度集合,得到多个测试权重集合情况下的多个第一识别置信度集合;根据拟环境数据集的语种信息,计算出多个第一识别置信度集合的预测准确率;将多个测试权重集合中预测准确率最高的第一识别置信度集合对应的测试权重集合确定为最优测试权重集合;用最优测试权重集合中的多个测试权重的值设定预设权重集合。

可选地,当设定的预设权重在权重范围内时使设定生效,当设定的预设权重不在权重范围内时,取消设定。或者,当设定的预设权重不在权重范围内时,依然使设定生效,但是优先采用其他方式来得到语种识别结果,例如根据用户指定语种来确定输入语音的识别语种,或者,通过将本次的输入语音与历史语种记录中的输入语音进行比较,得到特征性相似度,如果特征相似度大于相似度阈值,则将历史语种记录中的输入语音的语种确定为本次的输入语音的识别语种。

权重范围可以按照如下方式设定:获取多个测试数据集;获取多个测试权重集合;将测试数据集输入语种识别模型;根据语种识别模型输出的初始置信度集合与多个测试权重集合,得到多个测试权重集合情况下的多个第一识别置信度集合;根据测试数据集的语种信息,计算出多个第一识别置信度集合的预测准确率;将多个测试权重集合中预测准确率最高的第一识别置信度集合对应的测试权重集合确定为最优测试权重集合;得到多个测试数据集的最优测试权重集合;根据多个测试数据集的最优测试权重集合得到多个语种的权重范围。

其中,测试数据集可以是预先采集的语音数据集,其语种信息是已知的。

采用如上方式,通过大量的语种数据集对语种识别模型进行测试,来设定多语种的预设权重集合的权重范围,也就是规定了语种识别模型的鲁棒性范围,使语种识别模型在此范围内工作,从而保证了语种识别结果的可靠性。

图7所示为本申请一个实施例提供的语种识别装置的结构示意图。如图7所示,本申请一个实施例提供一种语种识别装置,该语种识别装置用于执行图6中所示的语种识别方法,其结构可以从上面对图6中的语种识别方法的描述中获知,因而这里仅相对简略地对该语种识别装置10进行描述。

如图7所示,该语种识别装置10包括:输入语音获取模块17,用于获取用户的输入语音;语种识别模块12,用于对输入语音进行识别而得到第一识别置信度集合,第一识别置信度集合中的多个第一识别置信度与多个语种分别对应;语种置信度修正模块16,用于根据用户的用户特征对第一识别置信度集合进行修正计算而得到第二识别置信度集合;识别结果生成模块18,用于根据第二识别置信度集合生成语种识别结果。

采用如上装置,根据用户特征对第一识别置信度进行计算而得到第二识别置信度,根据该第二识别置信度确定语种识别结果,如此,能够提高语种识别能力。

可选地,语种置信度修正模块16可以当多个第一识别置信度小于阈值时,根据用户的用户特征对第一识别置信度集合进行修正计算而得到第二识别置信度集合。

可选地,用户特征包括历史语种记录。

采用该方式,在根据第一识别置信度难以识别输入语音的语种时,根据用户的历史语种记录来修正第一识别置信度,在此基础上确定输入语音的语种,从而,能够提高语种识别能力。这里的用户的历史语种记录是指在输入上述输入语音之前该用户输入的语音所属的语种的记录。

可选地,历史语种记录是根据输入语音的声纹查询得到。

采用如上方式,根据输入语音的声纹来查询历史语种记录,例如与根据人脸信息、虹膜等来查询的方式相比,能够避免对用户(说话者)的误识别(将非说话者识别为说话者)造成语种误识别。

可选地,用户特征包括用户指定语种。

采用如上方式,在根据第一识别置信度难以识别输入语音的语种时,根据用户指定语种来修正第一识别置信度,在此基础上确定输入语音的语种,从而,能够提高语种识别能力。

可选地,用户指定语种是根据输入语音的声纹查询得到。

采用如上方式,根据输入语音的声纹来查询用户指定语种,例如与根据人脸信息、虹膜等来查询的方式相比,能够避免对用户(说话者)的误识别(将非说话者识别为说话者)造成语种误识别。

可选地,识别结果生成模块还用于:在第二识别置信度集合中的多个第二识别置信度小于阈值时,根据对输入语音进行自动语音识别(Automatic Speech Recognition,ASR)得到的自动语音识别置信度生成语种识别结果。

采用如上方式,在根据第二识别置信度难以识别输入语音的语种时,根据自动语音识别置信度来确定输入语音的语种,从而,能够提高语种识别能力。作为具体的实现方式,例如将自动语音识别置信度超过阈值的语种作为输入语音的识别语种。

可选地,识别结果生成模块还用于:在第二识别置信度集合中的多个第二识别置信度小于阈值时,根据对输入语音进行自然语言理解得到的自然语言理解置信度生成语种识别结果。

采用如上方式,在根据第二识别置信度难以识别输入语音的语种时,根据自动语音识别置信度来确定输入语音的语种,从而,能够提高语种识别能力。作为具体的实现方式,例如将自动语音识别置信度超过阈值的语种作为输入语音的识别语种。

可选地,语种识别模块还用于:对输入语音进行识别而得到初始置信度集合;将初始置信度集合中的多个初始置信度与预设权重集合中的多个预设权重分别相乘,而得到第一识别置信度集合;语种置信度修正模块还用于:当第二识别置信度集合中存在大于阈值的第二识别置信度时更新预设权重集合,而使多个语种中第二识别置信度大于阈值的识别语种的预设权重相对于其他语种的预设权重增大。

采用如上方式,当第二识别置信度集合中存在大于阈值的第二识别置信度时,也就是可以确定输入语音的语种时,按照如上方式更新预设权重集合,如此,在对之后的输入语音进行处理时,使用更新后的预设权重集合,从而能够提高语种识别的精度,提高语种识别能力。

可选地,语种置信度修正模块还用于:对预设权重集合进行修正计算而得到修正权重集合;在修正权重集合中的多个修正权重在权重范围内时,用多个修正权重的值更新预设权重集合。

预设权重超出权重范围外的话,根据预设权重得到语种识别的结果的可信度是比较低的,因而,采用如上方式,在权重范围内修正预设权重,能够抑制语种的误识别率。

可选地,语种识别模块还用于:对输入语音进行识别而得到初始置信度集合;将初始置信度集合中的多个初始置信度与预设权重集合中的多个预设权重分别相乘,而得到第一识别置信度集合;语种置信度修正模块还用于根据场景特征设定预设权重集合。

采用如上方式,根据场景特征设定预设权重集合,从而,能够适应不同场景,以尽可能最适合场景的预设权重来得到语种识别结果,提高了语种识别能力。

可选地,场景特征包括环境特征和/或音频采集器特征。

可选地,环境特征包括环境信噪比、电源直流交流电信息或环境振动幅度,音频采集器特征包括麦克风排布信息。麦克风排布信息是指,是单麦克风还是麦克风阵列,或者在是麦克风阵列时是线性阵列、平面阵列还是立体阵列。

环境信噪比、电源直流交流电信息、环境振动幅度、麦克风排布信息这些事项都有可能影响语种置信度,因此,根据这些信息来调整预设权重,在此基础上进行语种识别,从而能够提高语种识别能力。

可选地,语种置信度修正模块还用于:获取多个测试权重集合;将拟环境数据集输入语种识别模型,拟环境数据集是根据场景特征和无噪声数据集得到的;根据语种识别模型输出的初始置信度集合,得到多个测试权重集合情况下的多个第一识别置信度集合;根据拟环境数据集的语种信息,计算出多个第一识别置信度集合的预测准确率;将多个测试权重集合中预测准确率最高的第一识别置信度集合对应的测试权重集合确定为最优测试权重集合;用最优测试权重集合中的多个测试权重的值设定预设权重集合。由此,可以说,语种置信度修正模块具有预设权重设定模块。

可选地,语种置信度修正模块还用于在权重范围内设定多个预设权重。

可选地,权重范围是按照如下方式设定的:获取多个测试数据集;获取多个测试权重集合;将测试数据集输入语种识别模型;根据语种识别模型输出的初始置信度集合与多个测试权重集合,得到多个测试权重集合情况下的多个第一识别置信度集合;根据测试数据集的语种信息,计算出多个第一识别置信度集合的预测准确率;将多个测试权重集合中预测准确率最高的第一识别置信度集合对应的测试权重集合确定为最优测试权重集合;得到多个测试数据集的最优测试权重集合;根据多个测试数据集的最优测试权重集合得到多个语种的权重范围。权重范围设定的功能可以由语种识别装置10来实现,此时,可以说语种识别装置10具有权重范围设定模块,也可以由对语种识别装置10进行测试的测试装置来实现。

采用如上方式,通过大量的语种数据集对语种识别模型进行测试,来设定多语种的预设权重集合的权重范围,也就是规定了语种识别模型的鲁棒性范围,使语种识别模型在此范围内工作,从而保证了语种识别结果的可靠性。

本申请一个实施例提供一种计算设备,其包括处理器与存储器,存储器存储有程序指令,程序指令当被处理器执行时使得处理器执行上述语音处理方法、语种识别方法。该计算设备可以从后面结合图17进行的说明中得到更多了解。

本申请一个实施例提供一种计算机可读存储介质,其存储有程序指令,其特征在于,程序指令当被计算机执行时使得计算机执行上述语音处理方法、语种识别方法。

本申请一个实施例提供一种计算机程序,计算机程序当被计算机执行时使得计算机执行上述语音处理方法、语种识别方法。

图8用于示意性地说明本申请一个实施例提供的语音交互方法的流程图。该语音交互方法中的部分步骤与上述语种识别方法相同,在这里,对于相同的内容,使用相同的附图标记进行标注,并简略化其说明。

如图8所示,在该语音交互方法中,首先,在步骤S10中,获取用户的输入语音信息。例如获取麦克风接收到的用户的输入语音信息。此时,一方面,在步骤S40中,对该输入语音利用语音识别模型进行自动语音识别,另一方面,在步骤S12中,对该输入语音利用语种识别模型进行语种识别。作为其他实施例,自动语音识别与语种识别也可以先后进行。

另外,在步骤S40中,为了能够识别多个语种的输入语音,利用多个不同语种(本实施例中为汉语、英语、韩语、德语和日语五个语种)的语音识别模型对该输入语音进行语音内容识别处理,得到多个不同语种的文本Ti。

之后,在步骤S42中,多个文本Ti被输入文本翻译模型,文本翻译模型对这些文本Ti进行翻译处理,将这些文本Ti转换成目标语言(例如汉语)的文本Ai。

之后,在步骤S44中,将多个文本Ai依次输入语义理解模型,语义理解模型对这些文本Ai进行语义理解处理,从而得到对应的多个候选命令Oi。候选命令的意思是指尚未被确认为要执行。

另外,在步骤S12中,对输入语音进行识别而得到多语种的第一识别置信度集合,第一识别置信度集合中的多个第一识别置信度与多个语种分别对应。例如,多语种的第一识别置信度集合为{汉语:0.9;英语:0.1;韩语:0;德语:0;日语:0}。

在步骤S14中,判断多语种的第一识别置信度集合中是否存在大于阈值的第一识别置信度。这里的阈值例如可以设定为0.8。当判断结果为“是”时,即存在大于阈值的第一识别置信度(例如汉语的第一识别置信度0.9)时,在步骤S16中,作为识别结果,将第一识别置信度大于阈值的语种(例如汉语)确定为输入语音的识别语种。

之后,在步骤S26中,根据识别语种(例如汉语)从步骤S44中得到的多个候选命令Oi中选择与识别语种(例如汉语)对应的候选命令作为要执行的目标命令,之后,进行使该目标命令得以执行的处理。例如,当目标命令是“打开空调”时,执行相应的控制而使空调打开。

另外,当步骤S14中的判断结果为“否”,即不存在大于阈值的第一识别置信度,或者,多个第一识别置信度小于阈值时,在步骤S18中,根据用户特征对第一识别置信度进行修正。该修正的具体内容由于在上面已经进行了详细描述,因而这里不再展开描述。

之后,在步骤S22中,判断是否存在大于阈值的第二识别置信度,当判断结果为“是”时,在步骤S24中,将第二识别置信度大于阈值的语种确定为输入语音的识别语种,之后,执行步骤S26中的处理。

另外,当步骤S22中的判断结果为“是”时,即不存在大于阈值的第二识别置信度,或者多个第二识别置信度小于阈值时,在步骤S28中,判断是否存在大于阈值的ASR置信度。在判断结果为“是”时,在步骤S30中,将ASR置信度大于阈值的语种确定为识别语种,之后,执行步骤S26中的处理。

当步骤S28中的判断结果为“否”时,即不存在大于阈值的ASR置信度,或者多个ASR置信度小于阈值时,在步骤S32中,判断是否存在大于阈值的NLU置信度。在判断结果为“是”时,在步骤S34中,将NLU置信度大于阈值的语种确定为识别语种,之后,执行步骤S26中的处理。

当步骤S32中的判断结果为“否”时,可以输出表示语音内容识别失败的信息,结束处理。

采用如上的语音交互方法,在语种识别中,根据用户特征对第一识别置信度进行计算而得到第二识别置信度,根据该第二识别置信度确定语种识别结果,如此,能够提高语种识别能力,进而提高语音交互能力。

图9所示为本申请一个实施例提供的语音交互系统的结构示意图。如图9所示,该语音交互系统(或语音交互装置)20具有语音识别模块110、语种识别模块12、文本翻译模块130、语义理解模块140、输入语音获取模块17、语种置信度修正模块16与控制模块170。该语音交互装置用于执行参照图8所说明的语音交互方法,因此,对于具体的处理流程,在这里省略了对其的描述。另外,该语音交互系统20与上述语种识别装置10同样,具有语种识别模块12、输入语音获取模块17与语种置信度修正模块16,这里使用相同的附图标记进行标注,并省略了对其的详细说明。另外,该语音交互系统还可以包括执行装置,例如扬声器、显示装置等。

下面对该语音交互系统20与上述语音交互方法的步骤的对应关系进行简要的说明。

语音识别模块110执行图8中的步骤S40。语种识别模块12执行图8中的步骤S12。文本翻译模块130执行图8中的步骤S42。语义理解模块140执行图8中的步骤S44。输入语音获取模块17执行图8中的步骤S10。语种置信度修正模块16执行图8中的步骤S18。控制模块170执行图8中的步骤S14、步骤S16、步骤S22、步骤S24、步骤S28、步骤S30、步骤S32、步骤S34。此外,步骤S14、步骤S16、步骤S22、步骤S24还可以由语种置信度修正模块16执行。

另外,由上面的描述可知,参照图8所说明的语音交互方法中实质上包含了多语种的语音识别方法,能够对多个语种的输入语音进行识别;参照图9所说明的语音交互装置也包含了执行该多语种的语音识别方法的语音识别装置。因为重复的内容较多,这里不再就语音识别方法与语音识别装置给出单独的实施例来描述。

下面参照图11-图17对本申请一个实施例涉及的语音交互系统100以及由其执行的语音交互方法进行描述。

在本实施例中,以语音交互系统100应用在汽车上而构成车载语音交互系统为例进行说明,然而,本申请并不限于此,还可以应用在其他场景,例如智能家居、智能机器人、智能语音问答、智能语音分析、实时语音监控分析等。另外,车载语音交互系统还构成车辆控制装置。另外,可以理解,通过上面描述的语音交互方法及本实施例描述的语音交互系统,本申请的实施例中提供了一种语音处理方法、装置及系统。

<系统架构>

本实施例的语音交互系统100可以接收用户(即说话者)的输入语音,响应于该输入语音的内容而执行相应的处理,例如打开空调、打开车窗等处理。而且,该语音交互系统100可以针对多个不同语种的语音作出响应,例如,在本实施例中可以针对汉语、英语、韩语、德语、日语这5种语言的语音作出响应。

这里所谓的不同语种的语音既包括不同语系的语音,例如汉语和英语属于不同语种,也包括同一语系下的不同小语种的语音,例如汉语的普通话和粤语也属于不同语种。

图11为本申请一个实施例涉及的语音交互系统的示意说明图。该语音交互系统100具有语音识别模块110、语种识别模块120、文本翻译模块130、语义理解模块140、命令解析与执行模块150、语种置信度修正模块160,此外,语音交互系统100还可以具有麦克风、扬声器、摄像头或显示器等。

图12为用于说明一个实施例中涉及的语音交互方法的其中一个流程的流程图。下面参照图12,对语音交互系统100的一个处理流程进行描述,以概略性地说明语音交互系统100的架构。

如图12所示,当用户发出一段语音S时,语音交互系统100通过麦克风获取到该语音(称其为输入语音),一方面,①该输入语音被输入语音识别模块110,语音识别模块110调用多个不同语种(本实施例中为汉语、英语、韩语、德语和日语五个语种,不言而喻,还可以是其他数量的语种)的语音识别子模块对该输入语音进行语音内容识别处理,得到多个不同语种的文本Ti。②多个文本Ti被输入文本翻译模块130,文本翻译模块130对这些文本Ti进行翻译处理,将这些文本Ti转换成目标语言(例如汉语)的文本Ai。③将多个文本Ai依次输入语义理解模块140,语义理解模块140对这些文本Ai进行语义理解处理,从而得到对应的多个候选命令Oi。

另一方面,④用户的输入语音还被输入语种识别模块120,语种识别模块120对输入语音进行语种识别处理,生成多个语种的初始置信度,并对各初始置信度乘以对应的预设权重,得到多个语种的识别置信度。

⑤在多个语种的识别置信度中存在大于阈值λ的识别置信度时,可以认为输入语音的语种是识别置信度大于阈值λ的语种,命令解析与执行模块150将多个候选命令Oi中识别置信度大于阈值λ的语种所对应的候选命令Oi确定为要执行的目标命令,并且,根据该目标命令的内容进行相应的处理。

另外,在多个语种的识别置信度中不存在大于阈值λ的识别置信度时,语种置信度修正模块160根据用户特征等对多个语种的识别置信度进行修正,其具体内容将在后面进行详细描述。

下面对语音交互系统100的各个构成要素的结构进行描述。

<结构>

在本实施例中,语音识别模块110、语种识别模块120、文本翻译模块130与语义理解模块140分别包括算法模型即语音识别模型、语种识别模型、文本翻译模型与语义理解模型,由这些模型来分别执行语音识别处理、语种识别处理、文本翻译处理与语义理解处理。

语音识别模块110用于将人的语音即待识别语音转换为对应语言的文本,也可以说是对语音的内容进行预测或者进行自动语音识别(Automatic Speech Recognition,ASR)。在这里,语音识别模块110具有多个语音识别子模块,各语音识别子模块分别对应一种语言,用于将语音转换为对应语言的文本Ti,例如,在本实施例中,具有汉语、英语、韩语、德语与日语5个语言的语音识别子模块,分别用于将输入的语音转换为汉语文本T1、英语文本T2、韩语文本T3、德语文本T4与日语文本T5。在完成识别后,这些子模块输出作为预测结果的文本Ti以及该文本Ti的置信度,该置信度称为ASR置信度,该ASR置信度表示子模块预测的文本的预测概率,或者说是对语音内容的预测概率。

文本翻译模块130用于将一种自然语言(源语言)的文本转换为另一种自然语言(目标语言)的文本,例如将英文文本转换为中文文本。这里,文本翻译模块130具有多个文本翻译子模块,各文本翻译子模块分别对应一种语言,例如,在本实施例中,以汉语为目标语言,因而,具有英语、韩语、德语、日语4个语言的文本翻译子模块,分别用于将英语文本、韩语文本、德语文本与日语文本翻译成汉语文本Ai。另外,在将汉语文本输入文本翻译模块130时,由于这里汉语是翻译的目标语言,因而文本翻译模块130可以不对输入的汉语文本进行处理,原样将输入的汉语文本输出。最终文本翻译模块130输出5个汉语文本Ai。

语义理解模块140用于对目标语言的文本进行自然语言理解(Natural LanguageUnderstanding,NLU),也可以说是对文本的意图进行预测,生成能够被机器理解的命令。例如,文本为“请播放《XX》歌曲”,经过语义理解模块140,即可让机器得到“请播放《XX》歌曲”这个意图。在生成命令的同时,语义理解模块140还生成NLU置信度,该NLU置信度表示语义理解模块140对文本的意图的预测概率。另外,由于语音识别模块110会输出5个语言文本,因此语义理解模块140最终也会生成对应5个语言的命令与5个NLU置信度。再者,语义理解模块140输出的这些命令尚未被确定要执行,因此将其称之为候选命令。

语种识别(Language Identification,LID)模块用于识别用户的输入语音即待识别语音的语种,也可以说是预测用户的输入语音属于多个语种中的哪一个,例如,在本实施例中,语种识别模块120识别输入语音属于汉语、英语、韩语、德语与日语中的哪一个语种,作为识别结果输出多个语种的识别置信度的集合,该识别置信度表示语种识别模块120对输入语音属于哪一语种的预测概率。另外,在本实施例的语种识别模型中,对输入语音进行算法识别,得到多个语种的置信度(将此置信度称之为初始置信度),对多个语种的初始置信度分别乘以对应的预设权重值,得到多个语种的识别置信度,语种识别模块120将该识别置信度作为预测结果输出。对初始置信度乘以预设权重值这一计算可以由语种识别模型来执行,也可以并非由语种识别模型来执行。

命令解析与执行模块150用于根据语种识别模块120的输出从语义理解模块140输出的候选命令中选择要执行的目标命令。在本实施例中,在语种识别模块120输出的多个语种的识别置信度中存在大于阈值λ(例如设定在0.8以上)的识别置信度时,命令解析与执行模块150将识别置信度大于阈值λ的语种确定为用户的上述输入语音的语种,将该语种所对应的候选命令确定为要执行的目标命令。例如,语种识别模块120输出的多个语种的置信度为{汉语:0.9;英语:0.1;韩语:0;德语:0;日语:0}时,将汉语确定为用户的上述输入语音的语种,将语义理解模块140输出的5个语言的候选命令中与汉语对应的候选命令确定为要执行的目标命令。

在确定要执行的目标命令后,命令解析与执行模块150执行用于使该目标命令得以执行的控制,例如,当确定的要执行的目标命令是“请播放《XX》歌曲”,并且,语音交互系统100具有音乐播放模块时,命令解析与执行模块150控制音乐播放模块播放《XX》歌曲。而如果音乐播放模块在权属上不属于语音交互系统100,不受命令解析与执行模块150控制,此时,可以将确定的要执行的目标命令发送给语音交互系统100与音乐播放模块共同的上位控制器,由该上位控制器向音乐播放模块的控制器发送命令,以实现播放《XX》歌曲。

另外,在确定要执行的目标命令后,命令解析与执行模块150可以通过扬声器或者显示器对用户进行回应,例如,当确定的要执行的目标命令是“请播放《XX》歌曲”时,命令解析与执行模块150控制扬声器发出“好的,即将为您播放”的声音,以对用户进行回应。

另一方面,在本实施例中,在语种识别模块120输出的多个语种的识别置信度集合中不存在大于阈值λ(例如0.8)的识别置信度时,命令解析与执行模块150按照其他方式确定要执行的目标命令,下面对这些方式进行举例说明。

方式一

命令解析与执行模块150对上述多个语种的识别置信度(对应本申请中的“第一识别置信度”)进行修正计算,命令解析与执行模块150根据语种置信度修正模块160的输出进行相应处理。例如可以根据用户特征进行修正,这里的用户特征包括用户的历史语种记录和用户指定语种等。历史语种记录和用户指定语种可以根据音频特征(即声纹)确定用户身份,根据用户身份在语音交互系统100具有的历史语种记录数据库和用户指定语种数据库中查询得到。这些修正的具体内容将在后面予以详细描述。在得到修正后的识别置信度后,命令解析与执行模块150根据修正后的识别置信度确定输入语音的语种,执行相应的处理。例如在修正后的多个语种的识别置信度中存在大于阈值λ的识别置信度时,将识别置信度大于阈值λ的语种确定为用户输入语音的语种,将与确定的该语种对应的候选命令确定为要执行的目标命令。

作为方式一中的对识别置信度进行修正计算的具体实现方式,可以直接对识别置信度的数值进行修正,也可以对预设权重进行修正计算,然后根据初始置信度集合与修正后的预设权重集合再次计算识别置信度。

在本实施例中,语种置信度修正模块160具有基于音频特征调整模块162、基于视频特征调整模块163与综合调整模块164,这些调整模块用于以不同的方式对语种置信度进行修正。

方式二

命令解析与执行模块150根据语音识别模块110输出的ASR置信度或语义理解模块140输出的NLU置信度确定要执行的目标命令。例如,当存在大于ASR置信度阈值(可以与上述阈值λ设定为相同值,例如0.8)的ASR置信度时,将该ASR置信度对应的语种确定为输入语音的语种,将该语种所对应的候选命令确定为要执行的目标命令。或者,当存在大于NLU置信度阈值(可以与上述阈值λ设定为相同值,例如0.8)的NLU置信度时,将该NLU置信度对应的语种确定为输入语音的语种,将该语种所对应的候选命令确定为要执行的目标命令。

方式二的执行时机可以自由设定,可选地,例如可以在执行方式一后仍不能确定输入语音的语种时(即根据用户特征等修正的识别置信度中依然不存在大于阈值λ的识别置信度时)执行,也可以在执行方式一之前执行,或者,还可以在方式一的描述中列举的多个方式间执行。

方式三

命令解析与执行模块150通过特征相似度来确定输入语音的语种。例如,将此本次的输入语音与历史记录中的历史输入语音的音频数据进行比较,通过余弦相似度、线性回归或深度学习等方式得到二者的特征相似度,在特征相似度超过阈值时,可以历史输入语音的识别语种确定为本次输入语音的语种。

方式三的执行时机可以自由设定,可选地,可以在方式一、方式二之后或之前执行,也可以在方式一与方式二之间执行,或者还可以在方式一的描述中例举的多个方式间执行。

下面对置信度修正模块进行说明。

语种置信度修正模块160包括实时场景适应模块161、基于音频特征调整模块162、基于视频特征调整模块163与综合调整模块164。

实时场景适应模块161用于在语种识别模型初步接触场景时,根据环境特征和音频采集器(即麦克风)特征对多语种的预设权重集合进行初始化。这里的初步接触场景时例如是用户刚刚购入语音交互系统或车辆时,此时,用户一般会打开语音交互系统进行一些基本的设定或测试。本实施例中,实时场景适应模块161可以利用这个时机来初始化预设权重集合。另外,作为其他实施例,预设权重集合的初始化并不限于在初步接触场景时执行,还可以在其他适当的时候执行,例如更换新的音频采集器时,或者由用户自己选择执行时机。

基于视频特征调整模块163用于根据拍摄到的用户图像对多个语种的识别置信度集合进行修正。

基于音频特征调整模块162用于根据用户的声音信息对多个语种的识别置信度集合进行修正。具体而言,可以根据声音信息(声纹)在语音交互系统100具有的数据库中进行查询得到用户的历史语种记录,根据历史语种记录对多个语种的识别置信度集合进行修正。

综合调整模块164主要用于根据用户指定语种对多个语种的识别置信度集合进行修正。其中,用户指定语种根据输入语音的声纹在语音交互系统100具有的数据库中进行查询得到。

在修正后的多个语种的识别置信度中存在大于阈值λ的识别置信度时,置信度修正模块对多语种的预设权重集合进行修正计算,使识别置信度大于阈值λ的语种的预设权重相对于其他语种的预设权重增大,如此,得到修正权重集合。之后,置信度修正模块判断修正权重集合中的各修正权重是否在权重范围内,当判断结果为在权重范围内时,用修正置信度权重集合中的值来更新预设权重集合以供语种识别模块120进行之后的语种识别时使用。

语音识别模块110、语种识别模块120、文本翻译模块130、语义理解模块140、命令解析与执行模块150与置信度修正模块的功能可以由处理器来执行存储在存储器中的程序(软件)来实现,也可以通过LSI(Large Scale Integration,大规模集成电路)和ASIC(Application Specific Integrated Circuit,专用集成电路)等硬件来实现。

典型地,这些模块可以用电子控制单元(electronic control unit,ECU)构成,可选地,一个模块可以用一个ECU构成,也可以用多个ECU构成,或者,可以用一个ECU构成多个模块。

ECU是指由集成电路组成的用于实现对数据的分析处理发送等一系列功能的控制装置。如图17所示,本申请实施例提供了一种电子控制单元ECU,该ECU包括微型计算机(microcomputer)、输入电路、输出电路和模/数(analog-to-digital,A/D)转换器。

输入电路的主要功能是对输入信号(例如来自传感器的信号)进行预处理,输入信号不同,处理方法也不同。具体地,因为输入信号有两类:模拟信号和数字信号,所以输入电路可以包括处理模拟信号的输入电路和处理数字信号的输入电路。

A/D转换器的主要功能是将模拟信号转变为数字信号,模拟信号经过相应输入电路预处理后输入A/D转换器进行处理转换为微型计算机接受的数字信号。

输出电路是微型计算机与执行器之间建立联系的一个装置。它的功能是将微型计算机发出的处理结果转变成控制信号,以驱动执行器工作。输出电路一般采用的是功率晶体管,根据微型计算机的指令通过导通或截止来控制执行元件的电子回路。

微型计算机包括中央处理器(central processing unit,CPU)、存储器和输入/输出(input/output,I/O)接口,CPU通过总线与存储器、I/O接口相连,彼此之间可以通过总线进行信息交换。存储器可以是只读存储器(read-only memory,ROM)或随机存取存储器(random access memory,RAM)等存储器。I/O接口是中央处理单元(central processorunit,CPU)与输入电路、输出电路或A/D转换器之间交换信息的连接电路,具体的,I/O接口可以分为总线接口和通信接口。存储器存储有程序,CPU调用存储器中的程序可以实现上述模块的功能,或者,执行参照图3、图4、图6、图8、图12等所描述的方法。

另外,如上所述,语音交互系统100还具有麦克风、扬声器、摄像头或显示器。麦克风用于获取用户的输入语音,对应本申请中的语音获取模块。扬声器用于播放声音,例如针对用户的输入语音播放应答音“好的”。摄像头用于采集用户的面部图像等,并将采集的图像发送给命令解析与执行模块150,命令解析与执行模块150可以对此图像进行图像识别,从而可以对用户的身份进行认证。显示器用于根据用户的输入语音做出响应,例如,当输入语音是“播放《XX》歌曲”时,显示器上显示该歌曲的播放画面。

<动作与处理流程>

下面结合对语音交互系统100的动作与处理流程进行的描述,来更加详细地描述语音交互系统100。另外,结合语音交互系统100的动作与处理流程的描述,同时对本实施例涉及的语音交互方法进行描述,并且,通过如下的说明也可知,该语音交互方法中包含语种识别方法(对应语种识别模块120的处理、命令解析与执行模块150的部分处理、置信度修正模块的处理等)。

如上所述,语种识别模块120利用语种识别模型来进行语种识别,在本实施例中,如图14中的步骤S210所示,当训练好的语种识别模型初步接触场景时,实时场景适应模块161根据环境特征、音频采集器特征对多语种的预设权重集合进行初始化。下面参照图13对初始化方法的一个例子进行说明。

如图13所示,实时场景适应模块161根据环境特征、音频采集器特征和专家数据集产生拟环境数据集。这里,环境特征例如包括环境信噪比、麦克风电源来源信息(直流-交流电信息)或环境振动幅度等。麦克风电源来源信息例如可以通过车辆的控制器局域网络(Controller Area Network,CAN)信号获取。音频采集器特征主要包括麦克风排布信息(单麦克风还是麦克风阵列,其中,麦克风阵列又包括线性阵列、平面阵列和立体阵列)。专家数据集是预先采集的批量多人、多语种、无噪声的音频数据集,其内容(各条语音数据的语种)是预先记录的,是已知的。

另外,随机初始化N个不同的多个语种的置信度权重集合1-置信度权重集合N,例如,参见图13中例举出的置信度权重集合1{中文:0.80;英语:0.04;韩语:0.06;日语:0.05;德语:0.05}、置信度权重集合2{中文:0.21;英语:0.19;韩语:0.22;日语:0.20;德语:0.18}和置信度权重集合N{中文:0.31;英语:0.09;韩语:0.12;日语:0.25;德语:0.23}。

将拟环境数据集输入语种识别模型,得到多语种的初始置信度集合(图13中的{中文:p1;英语:p2;韩语:p3;日语:p4;德语:p5}),将初始置信度与N个多个语种的置信度权重集合1-置信度权重集合N相乘,得到N个识别置信度集合。由于专家数据集的内容(各条语音数据的语种)是已知的,因而可以计算得到的N个识别置信度集合的准确率acc,将准确率最高的识别置信度集合对应的置信度权重集合确定为最优置信度权重集合,用该最优置信度权重集合的值设定预设权重集合,完成预设权重集合的初始化。例如,图13中,置信度权重集合2{中文:0.21;英语:0.19;韩语:0.22;日语:0.20;德语:0.18}对应的准确率最高(0.98),因此,预设权重集合被设定为{中文:0.21;英语:0.19;韩语:0.22;日语:0.20;德语:0.18}。

采用如上的技术手段,由于在语种识别模型初步接触场景时,根据环境特征和音频采集器特征来初始化预设权重集合,以此来调整后续有用户的输入语音时对输入语音的识别置信度,从而,能够使语音交互系统100根据不同的场景做出调整,尽可能以最优的识别精度进行语种识别,进而提高了识别结果的可靠性。即,采用如上的技术手段,能够抑制“已训练好的语种识别模型对场景适应性并不很强造成识别结果可靠性较低”的问题的发生。

在本实施例中根据环境特征和音频采集器特征双方来初始化预设权重集合,然而,作为其他实施例,也可以仅根据环境特征和音频采集器特征中的一方来初始化预设权重集合。

在预设权重集合初始化完成后,在图14的步骤S212中,判断所设定的预设权重集合中的各语种的预设权重是否在权重范围内。该权重范围为预先设定的,其具体数值可以通过测试来确定,这一内容将在后面描述。

当根据拟环境数据集设定的预设权重集合中的各语种的预设权重在权重范围内时,则在该环境(上述环境特征与音频采集器特征)下语种识别模型的识别结果的可信度较高。当根据拟环境数据集设定的置信度权重不在权重范围内时(步骤S212中的“否”),在该环境下的语种识别模型的结果的可信度较低。此时,在本实施例中,如图14中的步骤S214、步骤S217等所示,可以通过历史语种记录和用户指定语种来来确定用户的输入语音的语种。

具体而言,在步骤S214中,判断是否有历史语种记录,当有历史语种记录时,将历史记录中的输入语音与本次用户的输入语音进行比较,得到特征相似度,由此来确定本次用户的输入语音的语种。

在没有历史语种记录时,在步骤S217中,根据声纹进行查询,而判断用户是否指定了语种,当有用户指定语种时,根据用户指定语种确定用户的输入语音的识别语种。用户指定语种可能是一个也可能是多个,当仅有一个用户指定语种时,将该用户指定语种确定为输入语音的识别语种;在存在多个用户指定语种时,例如可以将出现次数最多的语种确定为输入语音的识别语种,例如,在查询到的用户指定语种为{汉语:3次;英语:1次;德语:1次}时,将汉语确定为输入语音的识别语种。当没有用户指定语种时,在步骤S219中,根据语种识别模型的识别结果确定输入语音的语种。

在图14中,步骤S214在步骤S217之前执行,然而通过历史语种记录来确定语种的处理和通过用户指定语种来确定语种的处理的执行顺序没有限制。

采用如上的技术手段,当预设权重集合不在权重范围内时,根据历史语种记录或用户指定语种来预测用户的输入语音的语种,从而,能够提高语音交互系统100对输入语音的语种预测的可靠性。

另外,当根据拟环境数据集设定的预设权重集合中的各语种的权重值在权重范围内的情况下(步骤S212中的“是”),当检测到用户的输入语音时,在步骤S200中,利用语种识别模型对输入语音进行语种识别。在步骤S221中,判断根据语种识别模型得到的多语种的识别置信度集合中是否存在大于阈值λ的识别置信度。在存在时(步骤S221中的“是”),在步骤S222中,通过声纹确定用户身份。作为其他实施例,也可以通过人脸识别或虹膜识别等方式来确定用户身份。之后,在步骤S223中,更新用户的历史语种记录与当前对话轮语种记录(即:将本次语言加入记录中)。之后,在步骤S225中,将多语种的识别置信度集合作为语种识别结果输出给命令解析与执行模块150。这里,当前对话轮是指持续聆听(接收)用户的输入语音的一个周期,例如语种识别系统或语音交互系统系统的一次开启到关闭的期间。

在多语种的识别置信度集合中不存在大于阈值λ的识别置信度时(步骤S221中的“否”),语种置信度修正模块160调用基于音频特征调整模块162或基于视频特征调整模块163对多语种的识别置信度集合进行修正处理。在本实施例中,先调用基于音频特征调整模块162进行修正处理,当基于音频特征调整模块162修正后的多语种的识别置信度集合中不存在大于阈值λ的识别置信度时,再调用基于视频特征调整模块163进行修正处理。作为其他实施例,也可以先调用基于视频特征调整模块163。

下面参照图15对本实施例中基于音频特征调整模块162进行的处理进行说明。

如图15所示,在步骤S231中,通过声纹确定用户身份,在步骤S232中查询用户的历史语种记录,当存在历史语种记录时,计算历史语种记录中各个语言的分布。例如,参照图15中的右侧部分,在历史语种记录是{中文:8条;英语:1条;韩语:0条;日语:1条;德语:0条}时,根据该历史语种记录计算各个语言的分布(也可以称之为按照权重的数值形式归一化)为{中文:0.8;英语:0.1;韩语:0.0;日语:0.1;德语:0.0}。关于历史语种记录的时间范围,可以自由设定,例如当前对话轮、几天、几个月或更长。这里,作为一个方式,可以预先存储有所有时间节点历史语种记录与当前对话轮历史语种记录(简称当前对话轮语种记录),根据所有时间节点历史语种记录与当前对话轮历史语种记录分别执行下述步骤S236等中的处理,当根据二者得到的结果发生冲突时,以根据当前对话轮历史语种记录得到的结果为优先,这是考虑到根据当前对话轮语种记录得到的结果的可信度相对而言更高。或者,也可以对二者赋予不同的权重值进行下述步骤S236中的计算。

之后,在步骤S236中,用历史语种记录中各个语种的分布对多语种的识别置信度集合进行修正计算,而得到修正后的多语种的识别置信度(对应本申请中的第二识别置信度)集合。例如,参照图15中的右侧部分,在多语种的初始置信度集合为{中文:0.7;英语:0.1;韩语:0.1;日语:0.05;德语:0.05}、预设置信度权重为{中文:0.25;英语:0.25;韩语:0.25;日语:0.25;德语:0.25}、语言分布为{中文:0.8;英语:0.1;韩语:0.0;日语:0.1;德语:0.0}时,计算得到的修正后的识别置信度集合(归一化后)为{中文:0.973;英语:0.017;韩语:0.000;日语:0.010;德语:0.000}。

之后,在步骤S237中,判断修正后的多语种的识别置信度集合中是否存在大于阈值λ的修正置信度,在存在时(步骤S237中的“是”),一方面,在步骤S239中,将修正后的多语种的识别置信度集合作为语种识别结果输出给命令解析与执行模块150,此外,还更新历史语种记录和当前对话轮语种记录(具体处理方式参见图14中的步骤S222、步骤S223);另一方面,在步骤S238中,执行调整置信度权重的处理。具体而言,根据修正后的识别置信度集合进行修正,使修正后的识别置信度中大于阈值λ的识别置信度的语种的置信度权重相对于其他语种的置信度权重增大。例如,参照图15,将旧置信度权重集合{中文:0.25;英语:0.25;韩语:0.25;日语:0.25;德语:0.25}修正为新置信度权重集合(或者称之为修正权重集合){中文:0.29;英语:0.24;韩语:0.24;日语:0.24;德语:0.24}。

在步骤S271中,判断修正后的修正权重集合中的各修正权重是否在权重范围内,当判断结果为在权重范围内时,在步骤S272中,用修正置信度权重集合中的值来更新预设权重集合以供语种识别模块120进行之后的语种识别时使用,之后结束处理。当判断结果为不在权重范围内时,在步骤S271中,不更新预设权重集合,结束处理。

另外,在步骤S235中的判断结果为“否”或者步骤S237中的判断结果为“否”时,语种置信度修正模块160调用综合调整模块164进行处理。

下面参照图16对综合调整模块164的处理等进行说明。

如图16所示,在步骤S251中,根据语音识别模块110的输出,判断是否存在大于阈值λ的ASR置信度,当存在时,在步骤S252中,综合调整模块164将多语种的识别置信度集合作为语种识别结果输出给命令解析与执行模块150。这种情况下,命令解析与执行模块150可以将ASR置信度大于阈值λ的ASR置信度对应的语种确定为输入语音的语种(可称之为识别语种),将该语种所对应的候选命令确定为要执行的目标命令。

在步骤S251中的判断结果为“否”时,根据语义理解模块140的输出,判断是否存在大于阈值λ的NLU置信度。当存在大于阈值λ的NLU置信度时,在步骤S254中,综合调整模块164将多语种的识别置信度集合作为语种识别结果输出给命令解析与执行模块150。这种情况下,命令解析与执行模块150将大于阈值λ的NLU置信度对应的语种确定为输入语音的语种,将该语种所对应的候选命令确定为要执行的目标命令。

在步骤S253中的判断结果为“否”时,在步骤S256中,根据声纹(用户身份)判断是否存在用户指定语种。这里的用户指定语种是用户设定的语音交互系统100的系统语言的种类。当存在用户指定语种时,根据用户指定语种对多语种的识别置信度集合进行修正计算,而使用户指定语种的识别置信度相对于其他语言的识别置信度增大,如此而得到修正后的多语种的识别置信度(对应本申请中的第二识别置信度)。另外,用户指定语种可能存在多个(数据库中存储的系统语言历史记录中的有多种语言),例如,参照图16中的右侧部分,在用户指定语种即用户曾经设定过的语言包括汉语、英语与德语时,将旧的识别置信度集合{中文:0.75;英语:0.12;韩语:0.11;日语:0.01;德语:0.01}修正为新的识别置信度集合{中文:0.95;英语:0.32;韩语:0.11;日语:0.01;德语:0.21}。

这里,用户指定语种是用户操作记录的一例。作为其他例子,还可以举出用户历史播放歌曲的语种等。

另外,可选地,可以在根据ASR置信度或NLU置信度确定输入语音的识别语种之后,更新多语种的预设权重集合,以用于对之后的输入语音的语种识别。更新的方式与参照图14描述的方式相同,这里不再重复说明。

之后,在步骤S259中,判断步骤S258中修正后的多语种的识别置信度集合中是否存在大于阈值λ的识别置信度,当存在时,在步骤S261中将该修正后的多语种的识别置信度集合作为语种识别结果输出给命令解析与识别模块。之后,在步骤S262中,调整多语种的预设置信度权重集合。调整的方法与上面所说明的方法相同,这里不再重复描述。另外,与上述同样,在修正权重集合中的各修正权重在权重范围内时,更新多语种的预设置信度权重集合。

另外,在步骤S256中的判断结果是“否”即不存在用户指定语种时,或者在步骤S259中的判断结果是“否”即不存在大于阈值λ的识别置信度时,在步骤S264中,根据用户身份判断是否存在用户的历史语种记录。当判断结果为存在用户的历史语种记录时,在步骤S256中,将用户本次的输入语音与历史语种记录中的的输入语音进行比较,得到特征相似度,根据特征相似度来找到与未知的输入语音最相近的语种。

另外,在步骤S264中的判断结果为“否”即不存在用户的历史语种记录时,综合调整模块164将多用户的识别语种置信度直接作为语种识别结果输出给命令解析与执行模块150。这种情况下,命令解析与执行模块150可以认为无法识别输入语音的语种,可以例如通过播放语音的方式将此事项反馈给用户。

采用如上的本实施例,根据用户特征包括历史语种记录或用户指定语种等对多语种的识别置信度集合进行调整,如此,能够提高语音交互系统100对输入语音的预测精度,提高用户对语音交互系统100的智能性的信任程度。

在上面的描述中提到了“权重范围”,即,在实时场景适应模块161对预设权重集合进行初始化时判断初始化的预设权重是否在权重范围内,在基于音频特征调整模块162、基于视频特征调整模块163和综合调整模块164意图更新预设权重时也会判断预设权重是否在权重范围内。由此可见,该“权重范围”体现了模型本身所具备的鲁棒性范围。

本实施例中还提供了一种对该“权重范围”进行设定的方法,该方法例如在语音交互系统100出厂之前的测试阶段实施,此外,也可以在出厂后的离线检验阶段实施。

该方法主要包括如下步骤:

①采集不同场景下的语种数据集data1,data2,……,datan,语种数据集的内容是预先知晓的;

②将一个场景下的语种数据集datai(i∈[1,n])输入语种识别模型对语种识别模型进行测试,获取在该场景下各语种的最优置信度权重(也就是识别准确率最高情况下对应的置信度权重)ti

③全部语种数据集都输入模型执行上述②,即可得到各个语种的最佳置信度权重集合Tk={t1k,t2k,……,tnk}(k∈[1,m]);

④得到各个语种的最佳置信度权重范围Fk=[ak,bk],其中ak=min(Tk),bk=max(Tk)。

注:n为语种数据集个数,m为语种个数。

这里,语种数据集data1,data2,……,datan对应本申请中的测试数据集。

针对以上方法,本实施例给出如图10所示的实现方案,但不仅限该方案。下面参照图10对该方案进行说明。首先,随机初始化k种不同的置信度权重集合,该k种不同的置信度权重集合对应本申请中的多个测试权重集合;接着,将一个场景的语种数据集datai输入语种识别模型得到输出,并分别与k种置信度权重集合(这里的集合可以理解成矩阵)对应相乘后,再归一化,得到修正后的多语种的语种置信度集合;然后,根据语种置信度集合以及已知的语种数据集datai内容得到每个多语种的置信度权重集合的准确率(图中的acc),那么准确率高的置信度权重集合(例如图中的{中文:0.21;英语:0.19;韩语:0.22;日语:0.20;德语:0.18})便是针对语种数据集datai(即:场景i)的最优置信度权重集合。

最后,对每一场景的语种数据集重复上述处理,便可以获得每个单语种的置信度权重集合,并获得每个单语种的置信度权重范围,例如图中示出的汉语的置信度权重范围[ca,cb]、英语的置信度权重范围[ea,eb]、韩语的置信度权重范围[ha,hb]、日语的置信度权重范围[ra,rb]、德语的置信度权重范围[da,db]。

采用如上的技术手段,在利用语种识别模型进行语种识别之前,通过大量的语种数据集对语种识别模型进行测试,来设定多语种的预设权重集合的权重范围,也就是规定了语种识别模型的鲁棒性范围,使语种识别模型在此范围内工作,从而保证了语种识别结果的可靠性。

注意,上述仅为本申请的较佳实施例及所运用的技术原理。本领域技术人员会理解,本申请不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本申请的保护范围。因此,虽然通过以上实施例对本申请进行了较为详细的说明,但是本申请不仅仅限于以上实施例,在不脱离本申请的构思的情况下,还可以包括更多其他等效实施例,均属于本申请的保护范畴。

44页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:单事件干扰稳定的存储器单元

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!