一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种语音唤醒方法及装置与流程

2022-11-16 09:07:42 来源:中国专利 TAG:


1.本技术涉及语音识别的技术领域,特别是涉及语音唤醒方法及装置。


背景技术:

2.语音识别技术可以让机器通过识别和理解过程把语音信号转变为相应的文本或命令。因此,在对终端设备进行唤醒时,也可以用到语音识别技术,以便在复杂场景下,通过语音识别来控制对终端设备进行唤醒任务。因为语音唤醒技术大多需要长期运用于复杂声音环境中,所以对声音识别的鲁棒性和功耗会有一定的要求。
3.现有的语音唤醒技术中,通常使用卷积神经网络进行模型压缩来提升器功耗性能,但此方式虽可以减小功耗,但是因其有固定的卷积网络参数,不利于检测未知说话人和未知噪声唤醒音频,所以不能满足产品的鲁棒性的要求。
4.因此,如何提供一种鲁棒性较高且不会提升功耗的语音唤醒方法,是本领域技术人员亟需解决的技术问题。


技术实现要素:

5.有鉴于此,本技术实施例提供了一种语音唤醒方法及装置,旨在在不提升功耗的同时,提升语音唤醒的鲁棒性。
6.第一方面,本技术实施例提供了一种语音唤醒方法,包括:
7.将音频信号转化为声学特征序列,所述音频信号为语音音频信号;
8.将所述声学特征序列输入滤波网络,输出过滤音频特征,所述滤波网络包括滤波生成网络和动态滤波网络;
9.将所述过滤音频特征输入语音唤醒网络,输出语音唤醒概率;
10.根据所述语音唤醒概率,执行唤醒操作。
11.可选的,所述滤波生成网络包括第一滤波生成网络和第二滤波生成网络,所述将所述声学特征序列输入滤波网络,输出过滤音频特征,包括:
12.将所述声学特征序列输入所述第一滤波生成网络,输出第一卷积核参数;
13.将所述声学特征序列输入所述第二滤波生成网络,输出第二卷积核参数;
14.将所述声学特征序列、第一卷积核参数和第二卷积核参数输入所述动态滤波网络,输出所述过滤音频特征。
15.可选的,所述第一滤波生成网络,包括:
16.ws=sigmoid(norm(conv(x,w)));
17.其中,ws为所述第一卷积核参数,sigmoid表示sigmoid激活函数,norm 表示均值方差正规化,conv(x,w)表示以x为输入,w为卷积核的卷积网络,x 为所述声学特征序列。
18.可选的,所述第二滤波生成网络,包括:
19.wn=transpose(linear(max(0,b)));
20.其中,wn为所述第二卷积核参数,transpose表示转置,linear表示全连接网络,
max表示取最大值,b=norm(linear(a)),xi为所述声学特征序列中第i个特征值,n为所述声学特征序列的长度。
21.可选的,所述动态滤波网络,包括:
22.xo=norm(conv(x,wa)) x;
23.其中,xo为所述过滤音频特征,conv(x,wa)表示以x为输入,wa为卷积核的卷积网络,wa为动态卷积参数,wa=ws⊙
wn,

表示元素积算子。
24.可选的,所述语音唤醒网络包括:
25.p(唤醒|x)=wakeupnet(xo);
26.其中,p(唤醒|x)为所述语音唤醒概率,xo为所述过滤音频特征,wakeupnet 表示端到端语音唤醒网络。
27.可选的,所述根据所述语音唤醒概率,执行唤醒操作,包括:
28.响应于所述语音唤醒概率大于预设阈值,执行唤醒操作。
29.第二方面,本技术实施例提供了一种语音唤醒装置,包括:
30.转化模块,用于将音频信号转化为声学特征序列,所述音频信号为用户的语音音频信号;
31.滤波模块,用于将所述声学特征序列输入滤波网络,输出过滤音频特征,所述滤波网络包括滤波生成网络和动态滤波网络;
32.概率模块,用于将所述过滤音频特征输入语音唤醒网络,输出语音唤醒概率;
33.唤醒模块,用于依据所述语音唤醒概率,执行唤醒操作。
34.第三方面,本技术实施例提供了一种设备,所述设备包括存储器和处理器,所述存储器用于存储指令或代码,所述处理器用于执行所述指令或代码,以使所述设备执行前述第一方面任一项所述的语音唤醒方法。
35.第四方面,本技术实施例提供了一种计算机存储介质,所述计算机存储介质中存储有代码,当所述代码被运行时,运行所述代码的设备实现前述第一方面任一项所述的语音唤醒方法。
36.本技术实施例提供了一种语音唤醒方法及装置,在执行所述方法时,先将音频信号转化为声学特征序列,所述音频信号为语音音频信号;再将所述声学特征序列输入滤波网络,输出过滤音频特征,所述滤波网络包括滤波生成网络和动态滤波网络;然后将所述过滤音频特征输入语音唤醒网络,输出语音唤醒概率;最后根据所述语音唤醒概率,执行唤醒操作。通过加入动态的滤波网络,避免了因卷积网络参数固定,导致语音唤醒方法对未知说话人和未知噪声唤醒音频难以识别的问题,提高了语音唤醒方法的鲁棒性。同时,本方法并不进行人为的子问题划分,而是完全交给深度学习模型,这样可以使整个系统达到最优的性能,避免不同子问题造成的误差累积。
附图说明
37.为更清楚地说明本实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
38.图1为本技术实施例提供的语音唤醒方法的一种方法流程图;
39.图2为本技术实施例提供的语音唤醒方法的另一种方法流程图;
40.图3为本技术实施例提供的语音唤醒装置的一种结构示意图。
具体实施方式
41.语音识别技术,也被称为自动语音识别(automatic speech recognition, asr),其目标是将人类的语音中的词汇内容转换为计算机可读的输入,例如按键、二进制编码或者字符序列。与说话人识别及说话人确认不同,后者尝试识别或确认发出语音的说话人而非其中所包含的词汇内容。
42.由于语音识别技术可以让机器通过识别和理解过程把语音信号转变为相应的文本或命令。因此,在对终端设备进行唤醒时,也可以用到语音识别技术,以便在复杂场景下,通过语音识别来控制对终端设备进行唤醒任务。因为语音唤醒技术大多需要长期运用于复杂声音环境中,所以对声音识别的鲁棒性和功耗会有一定的要求。
43.现有的语音唤醒技术中,通常使用卷积神经网络进行模型压缩来提升器功耗性能,但此方式虽可以减小功耗,但是因其有固定的卷积网络参数,不利于检测未知说话人和未知噪声唤醒音频,所以不能满足产品的鲁棒性的要求。
44.本技术实施例提供的方法由计算机设备执行,用于在不提升功耗的同时,提升语音唤醒的鲁棒性。
45.显然,所描述的实施例仅是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本技术保护的范围。
46.参见图1,图1为本技术实施例提供的语音唤醒方法的一种方法流程图,包括:
47.步骤s101:将音频信号转化为声学特征序列。
48.音频信号可以包括终端设备周围的语音音频信号,声学特征序列可以是多维数组。作为一种可能的实施方式,声学特征序列可以为n
×
n的二维实数张量,n为声学特征序列的长度,n为声学特征的维度。
49.步骤s102:将所述声学特征序列输入滤波网络,输出过滤音频特征。
50.滤波网络包括滤波生成网络和动态滤波网络,动态滤波网络中可以包括动态卷积参数,避免了因卷积网络参数固定,导致语音唤醒方法对未知说话人和未知噪声唤醒音频难以识别的问题,提高了语音唤醒方法的鲁棒性。
51.步骤s103:将所述过滤音频特征输入语音唤醒网络,输出语音唤醒概率。
52.语音唤醒网络可以对音频特征进行深入分析,输出其能够成功唤醒终端设备的概率。根据概率决定是否唤醒,可以使得决策更加客观准确。
53.步骤s104:根据所述语音唤醒概率,执行唤醒操作。
54.作为一种可能的实施方式,可以预设阈值,使得在所述语音唤醒概率大于预设阈值时,执行唤醒操作。
55.综上所述,本实施例通过加入动态的滤波网络,避免了因卷积网络参数固定,导致语音唤醒方法对未知说话人和未知噪声唤醒音频难以识别的问题,提高了语音唤醒方法的鲁棒性。同时,本方法并不进行人为的子问题划分,而是完全交给深度学习模型,这样可以
使整个系统达到最优的性能,避免不同子问题造成的误差累积。
56.在本技术实施例中,上述图1所述的步骤存在多种可能的实现方式,下面分别进行介绍。需要说明的是,下文介绍中给出的实现方式仅作为示例性的说明,并不代表本技术实施例的全部实现方式。
57.参见图2,该图为本技术实施例提供的语音唤醒方法的另一种方法流程图,包括:
58.步骤s201:将音频信号转化为声学特征序列。
59.作为一种可能的实施方式,可以将音频信号转化为声学特征序列x,其中, x=[x1,x2...xi...xn],所述声学特征序列为n
×
n的二维实数张量,n为音频帧序列的长度,n为声学特征的维度。
[0060]
步骤s202:将所述声学特征序列输入所述第一滤波生成网络,输出第一卷积核参数。
[0061]
作为一种可能的实施方式,可以将所述声学特征序列输入以下网络:
[0062]ws
=sigmoid(norm(conv(x,w)));
[0063]
其中,ws为所述第一卷积核参数,sigmoid表示sigmoid激活函数,norm 表示均值方差正规化,conv(x,w)表示以x为输入,w为卷积核的卷积网络,x 为所述声学特征序列。
[0064]
步骤s203:将所述声学特征序列输入所述第二滤波生成网络,输出第二卷积核参数。
[0065]
作为一种可能的实施方式,可以将所述声学特征序列输入以下网络:
[0066]
wn=transpose(linear(max(0,b)));
[0067]
其中,wn为所述第二卷积核参数,transpose表示转置,linear表示全连接网络,max表示取最大值,b=norm(linear(a)),xi为所述声学特征序列中第i个特征值,n为所述声学特征序列的长度。
[0068]
步骤s204:将所述声学特征序列、第一卷积核参数和第二卷积核参数输入所述动态滤波网络,输出所述过滤音频特征。
[0069]
作为一种可能的实施方式,可以先通过以下公式,计算出动态卷积参数 wa:
[0070]
wa=ws⊙
wn;
[0071]
其中,ws为步骤s202的结果,wn为步骤s203的结果,

表示元素积算子。
[0072]
然后将动态卷积参数和声学特征序列输入以下动态滤波网络:
[0073]
xo=norm(conv(x,wa)) x;
[0074]
其中,xo为所述过滤音频特征,conv(x,wa)表示以x为输入,wa为卷积核的卷积网络。
[0075]
步骤s205:将所述过滤音频特征输入语音唤醒网络,输出语音唤醒概率。
[0076]
作为一种可能的实施方式,可以将过滤音频特征输入以下语音唤醒网络,输出语音唤醒概率:
[0077]
p(唤醒|x)=wakeupnet(xo);
[0078]
其中,p(唤醒|x)为所述语音唤醒概率,xo为所述过滤音频特征,wakeupnet 表示端到端语音唤醒网络。
[0079]
步骤s206:根据所述语音唤醒概率,执行唤醒操作。
[0080]
以上步骤和实施例一相同,在此不做赘述。
[0081]
综上所述,本实施例通过具体的卷积网络,将问题完全交给深度学习模型,这样可以使整个系统达到最优的性能,避免不同子问题造成的误差累积。同时,通过加入动态的滤波网络,避免了因卷积网络参数固定,导致语音唤醒方法对未知说话人和未知噪声唤醒音频难以识别的问题,提高了语音唤醒方法的鲁棒性。
[0082]
以上为本技术实施例提供违约预测模型生成方法的一些具体实现方式,基于此,本技术还提供了对应的装置。下面将从功能模块化的角度对本技术实施例提供的装置进行介绍。
[0083]
参见图3所示的语音唤醒装置300的结构示意图,该装置300包括转化模块301、滤波模块302、概率模块303和唤醒模块304。
[0084]
转化模块301,用于将音频信号转化为声学特征序列,所述音频信号为用户的语音音频信号;
[0085]
滤波模块302,用于将所述声学特征序列输入滤波网络,输出过滤音频特征,所述滤波网络包括滤波生成网络和动态滤波网络;
[0086]
概率模块303,用于将所述过滤音频特征输入语音唤醒网络,输出语音唤醒概率;
[0087]
唤醒模块304,用于依据所述语音唤醒概率,执行唤醒操作。
[0088]
作为一种可能的实施方式,所述滤波模块302,包括:
[0089]
第一滤波单元,用于将所述声学特征序列输入所述第一滤波生成网络,输出第一卷积核参数;
[0090]
第二滤波单元,用于将所述声学特征序列输入所述第二滤波生成网络,输出第二卷积核参数;
[0091]
动态滤波单元,用于将所述声学特征序列、第一卷积核参数和第二卷积核参数输入所述动态滤波网络,输出所述过滤音频特征。
[0092]
作为一种可能的实施方式,所述第一滤波生成网络,包括:
[0093]ws
=sigmoid(norm(conv(x,w)));
[0094]
其中,ws为所述第一卷积核参数,sigmoid表示sigmoid激活函数,norm 表示均值方差正规化,conv(x,w)表示以x为输入,w为卷积核的卷积网络,x 为所述声学特征序列。
[0095]
作为一种可能的实施方式,所述第二滤波生成网络,包括:
[0096]
wn=transpose(linear(max(0,b)));
[0097]
其中,wn为所述第二卷积核参数,transpose表示转置,linear表示全连接网络,max表示取最大值,b=norm(linear(a)),xi为所述声学特征序列中第i个特征值,n为所述声学特征序列的长度。
[0098]
作为一种可能的实施方式,所述动态滤波网络,包括:
[0099]
xo=norm(conv(x,wa)) x;
[0100]
其中,xo为所述过滤音频特征,conv(x,wa)表示以x为输入,wa为卷积核的卷积网络,wa为动态卷积参数,wa=ws⊙
wn,

表示元素积算子。
[0101]
作为一种可能的实施方式,所述语音唤醒网络包括:
[0102]
p(唤醒|x)=wakeupnet(xo);
[0103]
其中,p(唤醒|x)为所述语音唤醒概率,xo为所述过滤音频特征,wakeupnet 表示端到端语音唤醒网络。
[0104]
作为一种可能的实施方式,所述唤醒模块304,包括:
[0105]
唤醒单元,用于响应于所述语音唤醒概率大于预设阈值,执行唤醒操作。
[0106]
本技术实施例提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本技术实施例的语音唤醒方法。
[0107]
在实际应用中,所述计算机可读存储介质可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本实施例中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
[0108]
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
[0109]
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、rf等等,或者上述的任意合适的组合。
[0110]
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如 java、smalltalk、c ,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网 (lan)或广域网(wan)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0111]
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0112]
以上所述仅是本技术示例性的实施方式,并非用于限定本技术的保护范围。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献