首页 > 乐器声学 专利正文
一种网络模型的训练方法、回声消除方法及设备与流程

时间:2022-02-18 阅读: 作者:专利查询

一种网络模型的训练方法、回声消除方法及设备与流程

1.本技术涉及回声消除技术领域,特别是涉及一种循环神经网络模型的训练方法、回声消除方法、终端设备和计算机可读存储介质。


背景技术:

2.在视频会议系统中,由于麦克风和扬声器的升学耦合,往往会产生影响语音交互的声学回声。传统的回声消除中,首先会通过有限长度的线性滤波器来估计声学环境中扬声器到麦克风的声学路径以对线性回声进行消除,再施加一个增益值以去除剩下的残余回声。但在信回比低、非线性失真强的场景中,传统的回声消除算法无法准确估计残余回声,从而导致视频会议系统无法抑制残余回声且造成近端语音失真。


技术实现要素:

3.本技术主要解决的技术问题是提供一种循环神经网络模型的训练方法、回声消除方法、终端设备和计算机可读存储介质,能够提高回声消除能力。
4.为解决上述技术问题,本技术采用的一个技术方案是:提供一种循环神经网络模型的训练方法,该方法包括:获取样本信号,样本信号包括麦克风信号以及与麦克风信号相对应的参考信号;对样本信号进行特征提取,得到第一声学特征和第二声学特征,第一声学特征为麦克风信号的声学特征,第二声学特征为参考信号的声学特征;将第一声学特征和第二声学特征输入初始循环神经网络模型,输出相位敏感掩膜的预测值,相位敏感掩膜是麦克风信号中回声消除信号的频谱占比,频谱包括幅度谱和相位谱;计算相位敏感掩膜的损失,以调整初始循环神经网络模型的参数,得到循环神经网络模型。
5.其中,计算相位敏感掩膜的损失,包括:获取相位敏感掩膜的参考目标值;计算相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的差值,将差值作为相位敏感掩膜的损失;或利用损失函数计算相位敏感掩膜的损失。
6.其中,计算相位敏感掩膜的损失,包括:获取相位敏感掩膜的参考目标值;分别计算第一损失和第二损失,第一损失为利用损失函数计算出的相位敏感掩膜的损失,第二损失为相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的差值;对第一损失和第二损失进行加权融合,得到相位敏感掩膜的损失。
7.其中,对第一损失和第二损失进行加权融合,包括:损失函数包括回声返回损失增益函数和信号失真比函数,第一损失为回声返回损失增益函数的损失与信号失真比函数的损失的加权融合;若相位敏感掩膜的目的是用于处理残余回声,则回声返回损失增益函数的损失的权重大于信号失真比函数的损失的权重;若相位敏感掩膜的目的是用于降低信号的失真度,则回声返回损失增益函数的损失的权重小于信号失真比函数的损失的权重。
8.其中,相位敏感掩膜的参考目标值为:|v|为近端信号的幅度谱,θ
v
为近端信号的相位谱,|d|为麦克风信号的幅度谱,θ
d
为麦克风信号的相位谱。
9.其中,对样本信号进行特征提取,得到第一声学特征和第二声学特征,包括:将麦克风信号和参考信号的时域信号进行分帧和加窗处理,得到分帧加窗后的麦克风信号和参考信号;对分帧加窗后的麦克风信号和参考信号进行傅里叶变换,得到对应麦克风信号和参考信号的频域信号;对麦克风信号和参考信号的频域信号进行特征提取,得到第一声学特征和第二声学特征。
10.其中,循环神经网络模型为门控循环单元网络、长短期记忆网络中的至少一种。
11.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种回声消除方法,该方法包括:获取麦克风信号以及与麦克风信号相对应的参考信号;对麦克风信号和参考信号进行特征提取,得到第一声学特征和第二声学特征,第一声学特征为麦克风信号的声学特征,第二声学特征为参考信号的声学特征;将第一声学特征和第二声学特征输入循环神经网络模型,得到相位敏感掩膜,相位敏感掩膜是麦克风信号中回声消除信号的频谱占比,频谱包括幅度谱和相位谱;利用相位敏感掩膜对第一声学特征进行声学掩蔽,得到回声消除信号。
12.其中,循环神经网络模型是利用上述的循环神经网络模型的训练方法训练得到。
13.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种终端设备,该终端设备包括处理器和存储器,存储器存储有程序指令,处理器用于执行程序指令以实现上述的循环神经网络模型的训练方法或上述的回声消除方法。
14.为解决上述技术问题,本技术采用的另一个技术方案是:提供一种计算机可读存储介质,该计算机可读存储介质存储有程序指令,程序指令能够被执行以实现上述的循环神经网络模型的训练方法或上述的回声消除方法。
15.本技术的有益效果是:区别于现有技术的情况,本技术提供一种循环神经网络模型的训练方法,该方法包括:获取样本信号,样本信号包括麦克风信号以及与麦克风信号相对应的参考信号;对样本信号进行特征提取,得到第一声学特征和第二声学特征,第一声学特征为麦克风信号的声学特征,第二声学特征为参考信号的声学特征;利用初始循环神经网络模型对第一声学特征和第二声学特征进行处理,得到相位敏感掩膜,相位敏感掩膜是麦克风信号中近端信号的频谱占比,频谱包括幅度谱和相位谱;计算相位敏感掩膜的损失,以调整初始循环神经网络模型的参数,得到循环神经网络模型;通过初始循环神经网络模型对第一声学特征和第二声学特征进行处理以得到相位敏感掩膜,并通过计算相位敏感掩膜的损失以得到循环神经网络。当该循环神经网络应用于回声消除中,可提取得到逼近于近端信号的相位敏感掩膜,通过相位敏感掩膜对麦克风信号进行声学掩蔽,从而抑制麦克风信号中的回声以得到近端信号,提高了回声消除能力。
16.进一步地,由于在相位敏感掩膜的损失计算中引入了回声返回损失增益函数和信号失真比函数,所以后续在对循环神经网络模型具体运用时,利用其对麦克风信号的第一声学特征和参考信号的第二声学特征进行处理,能够得到逼近于近端信号相位敏感掩膜的回声消除信号相位敏感掩膜(回声消除信号逼近于近端信号,回声消除信号的相位敏感掩膜逼近于近端信号的相位敏感掩膜),相位敏感掩膜中引入了回声返回损失增益函数和信号失真比函数。因此,利用相位敏感掩膜对麦克风信号进行声学掩蔽时,能够将麦克风信号中的回声信号抑制消除,提升了在单讲场景下去除残余回声的能力,同时能够保证了在双讲场景下的近端语音信号不失真。
附图说明
17.图1是本技术提供的循环神经网络模型的训练方法一实施例的流程示意图;
18.图2是本技术提供的从声音信号中提取声学特征一实施例的流程示意图;
19.图3是本技术提供的计算相位敏感掩膜的损失以得到循环神经网络模型一实施例的流程示意图;
20.图4是本技术提供的计算相位敏感掩膜的损失以得到循环神经网络模型另一实施例的流程示意图;
21.图5是本技术提供的回声消除方法一实施例的流程示意图;
22.图6是本技术提供的相位敏感掩膜的示意图;
23.图7是本技术提供的终端设备一实施例的结构示意图;
24.图8是本技术提供的计算机可读存储介质一实施例的结构示意图。
具体实施方式
25.为使本技术的目的、技术方案及效果更加清楚、明确,以下参照附图并举实施例对本技术进一步详细说明。
26.需要说明的是,若本技术实施例中有涉及“第一”、“第二”等的描述,则该“第一”、“第二”等的描述仅用于描述目的,而不能理解为指示或暗示其相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。另外,各个实施例之间的技术方案可以相互结合,但是必须是以本领域普通技术人员能够实现为基础,当技术方案的结合出现相互矛盾或无法实现时应当认为这种技术方案的结合不存在,也不在本技术要求的保护范围之内。
27.本技术提供一种回声消除方法,通过相位敏感掩膜对麦克风信号的声学特征进行声学掩蔽,从而得到回声消除信号的声学特征,并通过回声消除信号的声学特征重建回声消除信号,进而得到回声消除信号。其中,相位敏感掩膜是通过循环神经网络模型训练得到的,具体如何得到循环神经网络模型将结合如下实施例进行详细说明。
28.请参阅图1,图1是本技术提供的循环神经网络模型的训练方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图1所示的流程顺序为限。如图1所示,本实施例包括:
29.步骤s11:获取样本信号。
30.其中,样本信号包括麦克风信号以及与该麦克风信号相对应的参考信号。麦克风信号为通过麦克风或者其他声音采集设备所采集到的声音信号,也即在进行回声消除时所接收的声音信号,参考信号为麦克风信号中的回声信号。
31.例如,在音视频即时通信过程中,通信双方同时配备有麦克风和扬声器,近端的语音通过近端扬声器播出,然后通过电话线或者互联网传递至远端并通过远端扬声器播出,远端麦克风拾取播出的声音并通过远端扬声器播出,然后通过电话线或者互联网传递至近端,并通过近端扬声器播出,此时近端麦克风采集到的该回传至近端的声音信号即为回声信号,因此麦克风所采集到的信号不仅包括用户所发出的近端语音信号,还包括从远端传输过来经近端扬声器播出的回声信号。
32.在一实施方式中,具体可以通过麦克风等声音采集设备采集当前环境的麦克风信
号和与采集的麦克风信号相对应的参考信号。可以理解地,在其他实施方式中,也可以直接读取本地存储或云端存储的麦克风信号以及与麦克风信号对应的参考信号,在此不做具体限定。
33.步骤s12:对样本信号进行特征提取,得到第一声学特征和第二声学特征。
34.本实施方式中,通过对样本信号进行特征提取,从而得到第一声学特征和第二声学特征,第一声学特征为麦克风信号的声学特征,第二声学特征为参考信号的声学特征。在一实施方式中,可通过傅里叶变换(fft,fast fourier transform)从麦克风信号和参考信号中提取声学特征,得到第一声学特征和第二声学特征。可以理解地,在其他实施方式中,也可通过其他方式从麦克风信号和参考信号中提取声学特征,可根据实际使用需要具体设置,在此不做具体限定。
35.其中,声音信号的声学特征能够表征声音信号的数据特征。在一实施方式中,可将幅度谱作为麦克风信号和参考信号的声学特征,也就是说,从麦克风信号和参考信号中提取各自的幅度谱作为各自的声学特征,即麦克风信号的幅度谱为第一声学特征,参考信号的幅度谱为第二声学特征。可以理解地,在其他实施方式中,也可将麦克风信号和参考信号的其他特征作为声学特征,可根据实际使用需要具体设置,在此不做具体限定。
36.步骤s13:将第一声学特征和第二声学特征输入初始循环神经网络模型,输出相位敏感掩膜的预测值。
37.本实施方式中,初始循环神经网络模型能够对麦克风信号的第一声学特征和参考信号的第二声学特征进行处理,得到相位敏感掩膜的预测值(psm,phase sensitive mask)。
38.其中,经过初始循环神经网络模型输出的相位敏感掩膜的预测值为:
39.psm
e
=f(|x|,|d|)
40.其中,|x|为参考信号的幅度谱,|d|为麦克风信号的幅度谱,f为循环神经网络模型,psm
e
为相位敏感掩膜的预测值。
41.具体地,将第一声学特征和第二声学特征输入至初始循环神经网络模型中,得到相位敏感掩膜的预测值,由于初始循环神经网络模型还未训练完成,经过初始循环神经网络模型处理后输出的相位敏感掩膜的预测值可能与近端信号对应的相位敏感掩膜的真实值存在差异,所以经过初始循环神经网络模型输出的相位敏感掩膜不能作为最终值,而需要进一步地对初始循环神经网络模型的参数进行调整,以使经过初始循环神经网络模型输出的相位敏感掩膜逼近于近端信号的相位敏感掩膜。
42.步骤s14:计算相位敏感掩膜的损失,以调整初始循环神经网络模型的参数,得到循环神经网络模型。
43.由于在实际回声消除过程中无法直接采集得到近端信号,但是能够根据循环神经网络模型得到逼近于近端信号相位敏感掩膜的回声消除信号相位敏感掩膜,并通过回声消除信号的相位敏感掩膜重建此回声消除信号,所以通过训练初始循环神经网络模型,使其输出的相位敏感掩膜能够逼近于或近似于近端信号的相位敏感掩膜,从而后续在对循环神经网络模型的应用中,能够直接通过循环神经网络模型得到逼近于或者近似于近端信号的相位敏感掩膜,进而通过该相位敏感掩膜得到回声消除信号,实现回声消除。基于此,会根据实际情况预先设置近端信号的相位敏感掩膜的参考目标值,而经过初始循环神经网络模
型输出的相位敏感掩膜值的预测值与相位敏感掩膜的参考目标值存在差异,即psm
e
与psm存在差异,所以为了提高初始循环神经网络模型输出的相位敏感掩膜的准确性,即使得初始循环神经网络模型输出的相位敏感掩膜值接近于近端信号的相位敏感掩膜的参考目标值,在本实施方式中,通过计算相位敏感掩的损失,以获知相位敏感掩膜的损失,从而根据该损失调整初始循环神经网络模型的参数,使得训练完成的初始循环神经网络模型能够对第一声学特征和第二声学特征进行处理后,得到逼近于近端信号的相位敏感掩膜,此训练完成的初始循环神经网络模型即为步骤s14中所提及的循环神经网络模型。其中,近端信号的相位敏感掩膜即相位敏感掩膜的参考目标值的计算公式为:
[0044][0045]
其中,|v|为近端信号的幅度谱,θ
v
为近端信号的相位谱,|d|为麦克风信号的幅度谱,θ
d
为麦克风信号的相位谱。
[0046]
在一实施方式中,可通过计算单一的相位敏感掩膜的预测值和相位敏感掩膜的参考目标值之间的损失,以调整初始循环神经网络模型的参数,从而得到循环神经网络模型。可以理解地,在其他实施方式中,也可利用损失函数计算相位敏感掩膜的损失或者通过计算相位敏感掩膜的预测值和相位敏感掩膜的参考目标值之间的损失和利用损失函数计算相位敏感掩膜的损失之间的总损失,以调整初始循环神经网络模型的参数,从而得到循环神经网络模型,具体如何计算相位敏感掩膜的损失可根据使用需要设置,在此不做具体限定。
[0047]
在一实施方式中,循环神经网络模型可以是门控循环单元网络。可以理解地,在其他实施方式中,循环神经网络模型也可以是长短期记忆网络或者其他神经网络,可根据实际使用需要具体设置,在此不做具体限定。
[0048]
请参阅图2,图2是本技术提供的从声音信号中提取声学特征一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图2所示的流程顺序为限。如图2所示,本实施例中,通过傅里叶变换的方式从样本信号中进行幅度谱提取,得到第一幅度谱和第二幅度谱,具体包括:
[0049]
步骤s21:将麦克风信号和参考信号的时域信号进行分帧和加窗处理,得到分帧加窗后的麦克风信号和参考信号。
[0050]
其中,时域信号是描述数学函数或物理信号对时间的关系,是信号唯一实际存在的域,因此在获取到麦克风信号和参考信号时就可以获得麦克风信号和参考信号对应的时域信号。
[0051]
本实施方式中,会先对麦克风信号和参考信号对应的时域信号进行分帧处理,由于傅里叶变换要求输入的信号是平稳的,所以需要对时域信号进行分帧处理以保证截取并输入至傅里叶变换的信号为平稳的信号。其中,对时域信号进行分帧的帧长不做具体限定,可根据实际使用需要具体设置。例如,每一帧的帧长可以20毫秒、30毫秒等。
[0052]
进一步地,本实施方式中,对截取出来的一帧信号,在做傅里叶变换前,还需要进行加窗处理,以让该帧信号的幅度在两端渐变到零。由于信号两端的幅度被削弱,所以为了弥补两端,可以将相邻两帧做帧移处理,以使相邻两帧重叠,例如,相邻两帧的重叠可以10毫秒等。在一实施方式中,窗函数可以为汉宁窗。可以理解地,在其他实施方式中,也可使用
其他窗函数对信号进行加窗处理,可根据实际使用需要具体设置,在此不做具体限定。
[0053]
步骤s22:对分帧加窗后的麦克风信号和参考信号进行傅里叶变换,得到对应麦克风信号和参考信号的频域信号。
[0054]
本实施方式中,对经过分帧和加窗处理后的时域信号进行傅里叶变换,得到对应麦克风信号和参考信号的频域信号。其中,可通过频域信号分析信号的频率成分,在频域上对信号进行处理。
[0055]
步骤s23:对麦克风信号和参考信号的频域信号进行特征提取,得到第一声学特征和第二声学特征。
[0056]
本实施方式中,将幅度谱作为声音信号的声学特征,并通过对麦克风信号和参考信号的频域信号进行特征提取,以得到第一声学特征和第二声学特征。由于频域信号为复数,所以对频域信号的特征提取,实则为对频域信号的实部和虚部进行提取,并通过提取得到的实部和虚部进行计算,从而得到频域信号的幅度谱。其中,计算频域信号的幅度谱的公式为:
[0057][0058]
其中,x
re
为频域信号的实部,x
im
为频域信号的虚部,|x|为频域信号的幅度谱。
[0059]
考虑到麦克风信号的第一声学特征即第一幅度谱和参考信号的第二声学特征即第二幅度谱在数值上可能会存在较大的差异,在一实施方式中,将麦克风信号的第一幅度谱和参考信号的第二幅度谱进行归一化处理,从而将第一幅度谱和第二幅度谱映射到0

1范围之内进行处理,便于后续快速对第一幅度谱和第二幅度谱进行处理。
[0060]
请参阅图3,图3是本技术提供的计算相位敏感掩膜的损失以得到循环神经网络模型一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图3所示的流程顺序为限。如图3所示,本实施例中,通过计算相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的损失,得到循环神经网络模型,具体包括:
[0061]
步骤s31:获取相位敏感掩膜的参考目标值。
[0062]
本实施方式中,相位敏感掩膜的参考目标值是用户根据近端信号具体设置的。其中,相位敏感掩膜的参考目标值的公式为:
[0063][0064]
其中,|v|为近端信号的幅度谱,θ
v
为近端信号的相位谱,|d|为麦克风信号的幅度谱,θ
d
为麦克风信号的相位谱。
[0065]
步骤s32:计算相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的差值,将差值作为相位敏感掩膜的损失,以调整初始循环神经网络模型的参数,得到循环神经网络模型。
[0066]
本实施方式中,将麦克风信号的第一声学特征和参考信号的第二声学特征输入至初始循环神经网络模型中,以得到相位敏感掩膜的预测值。通过计算相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的损失即通过计算得到两者之间的差值,并将计算得到的差值即损失反向传播至初始循环神经网络模型中,调整初始循环神经网络模型的参数,经过重复多轮的迭代训练,使得相位敏感掩膜的预测值与相位敏感掩膜的参考目标值
之间的差值最小化,当差值不再下降,说明此时初始循环神经网络模型已经对提取的声学特征完成拟合,最终输出训练好的初始循环神经网络模型即循环神经网络模型。其中,相位敏感掩膜的预测值的公式以及相位敏感掩膜的参考目标值与相位敏感掩膜的预测值之间的差值的公式分别为:
[0067]
psm
e
=f(|x|,|d|)
[0068]
l1=psm
t

psm
e
[0069]
其中,|x|为参考信号的幅度谱,|d|为麦克风信号的幅度谱,f为循环神经网络模型,psm
e
为相位敏感掩膜的预测值,psm
t
为相位敏感掩膜的参考目标值,l1为相位敏感掩膜的差值。
[0070]
本实施例中是通过计算相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的损失以进行参数调整而得到循环神经网络模型,所以在对循环神经网络模型具体运用时,利用其对麦克风信号的第一声学特征和参考信号的第二声学特征进行处理,能够得到逼近于近端信号相位敏感掩膜的估计信号相位敏感掩膜(估计信号逼近于近端信号,估计信号的相位敏感掩膜逼近于近端信号的相位敏感掩膜),由于估计信号的相位敏感掩膜逼近于近端信号的相位敏感掩膜,所以估计信号的相位敏感掩膜实则为回声消除信号的相位敏感掩膜,此时通过回声消除信号的相位敏感掩膜重建回声消除信号,从而实现回声消除。
[0071]
请参阅图4,图4是本技术提供的计算相位敏感掩膜的损失以得到循环神经网络模型另一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图4所示的流程顺序为限。如图4所示,本实施例中,通过计算相位敏感掩膜的总损失,以调整初始循环神经网络模型的参数而得到循环神经网络模型,使得通过循环神经网络模型生成的相位敏感掩膜能够抑制麦克风信号中的残余回声且不会造成近端语音失真,具体包括:
[0072]
步骤s41:获取相位敏感掩膜的参考目标值。
[0073]
步骤s41与步骤s31类似,在此不再赘述。
[0074]
步骤s42:分别计算第一损失和第二损失。
[0075]
本实施方式中,第一损失为利用损失函数计算出的相位敏感掩膜的损失,第二损失为相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的差值。
[0076]
在一实施方式中,损失函数包括回声返回损失增益函数或信号失真比函数,或者损失函数同时包括回声返回损失增益函数和信号失真比函数。可以理解地,在其他实施方式中,损失函数也可包括其他函数,可根据实际使用需要具体设置,在此不做具体限定。其中,相位敏感掩膜的参考目标值为近端信号的相位敏感掩膜,所以在当损失函数为回声返回损失增益函数和信号失真比函数时,近端信号中并不存在信号失真和回声,所以设定近端信号的相位敏感掩膜在两个损失函数上的参考目标值即近端信号在两个损失函数上的参考目标值均为零。其中,回声返回损失增益的参考目标值和信号失真比的参考目标值分别为:
[0077]
erle
t
=0
[0078]
sdr
t
=0
[0079]
其中,erle
t
为回声返回损失增益函数的参考目标值,sdr
t
为信号失真比函数的参考目标值。
[0080]
进一步地,为了计算得到第一损失,即相位敏感掩膜在损失函数上的损失,需要通
过循环神经网络模型得到相位敏感掩膜的预测值,并通过相位敏感掩膜的预测值获得其在损失函数上的预测值,再通过计算相位敏感掩膜预测值在损失函数上的预测值与损失函数的参考目标值之间的差值,从而得到第一损失。
[0081]
具体地,首先,将麦克风信号和参考信号输入至循环神经网络模型中以得到相位敏感掩膜的预测值;其次,通过相位敏感掩膜的预测值得到其对应的回声消除信号,所以计算相位敏感掩膜预测值在损失函数上的预测值等同于计算回声消除信号在损失函数上的预测值;最后,通过回声消除信号在损失函数上的预测值和近端信号在损失函数上的参考目标值得到各损失函数上的损失。在一具体的实施方式中,损失函数包括回声返回损失增益函数和信号失真比函数,那么估计信号在回声返回损失增益函数和信号失真比函数上的预测值分别为:
[0082][0083][0084]
其中,e[
·
]表示求平均操作,d为时域上的麦克风信号,v为时域上的近端信号,为时域上的回声消除信号,为回声消除信号的幅度谱。
[0085]
通过计算得到回声消除信号在回声返回损失增益函数和信号失真比函数上的预测值,那么回声消除信号在回声返回损失增益函数和信号失真比函数上的损失分别为:
[0086]
l
a
=erle
t

erle
e
[0087]
l
b
=sdr
t

sdr
e
[0088]
其中,l
a
为回声消除信号在回声返回损失增益函数上的损失,erle
t
为近端信号在回声返回损失增益函数上的参考目标值,erle
e
为回声消除信号在回声返回损失增益函数上的预测值,l
b
为回声消除信号在信号失真比函数上的损失,sdr
t
为近端信号在信号失真比函数上的参考目标值,sdr
e
为回声消除信号在信号失真比函数上的预测值。
[0089]
在一实施方式中,可通过对回声消除信号在回声返回损失增益函数上的损失和回声消除信号在信号失真比函数上的损失加权融合得到第一损失。在其他实施方式中,也可通过对回声消除信号在回声返回损失增益函数上的损失和回声消除信号在信号失真比函数上的损失进行其他方式处理以得到第一损失,具体的处理方式可根据实际使用需要设置,在此不做具体限定。
[0090]
步骤s43:对第一损失和第二损失进行加权融合,得到相位敏感掩膜的损失,以调整初始循环神经网络模型的参数,得到循环神经网络模型。
[0091]
本实施方式中,将麦克风信号的第一声学特征和参考信号的第二声学特征输入至初始循环神经网络模型中,以得到相位敏感掩膜的预测值。通过对第一损失和第二损失进行加权融合,得到相位敏感掩膜的损失,也就是说,相位敏感掩膜的损失为相位敏感掩膜的预测值与相位敏感掩膜的参考目标值之间的差值以及相位敏感掩膜在损失函数上的损失,也即相位敏感掩膜的损失为上述两者相加得到的总损失。在获取到相位敏感掩膜的总损失
后,将其反向传播至初始循环神经网络模型中,调整初始循环神经网络模型的参数,经过反复多轮的迭代训练,使得相位敏感掩膜的损失最小化,当损失值不再下降,说明此时初始循环神经网络模型已经对提取的声学特征完成拟合,最终输出训练好的初始循环神经网络模型即循环神经网络模型。可以理解地,在其他实施方式中,也可通过对第一损失和第二损失进行其他方式处理以得到相位敏感掩膜的损失,具体的处理方式可根据实际使用需要设置,在此不做具体限定。
[0092]
在一实施方式中,通过对第一损失和第二损失进行加权求和,得到相位敏感掩膜的总损失,其中,相位敏感掩膜的总损失的公式为:
[0093]
l
sum
=α(erle
t

erle
e
)+β(sdr
t

sdr
e
)+γ(psm
t

psm
e
)
[0094]
其中,l
sum
相位敏感掩膜的总损失,α、β、γ分别为回声消除信号在回声返回损失增益函数上的损失的权重、回声消除信号在信号失真比函数上的损失的权重和第二损失的权重。
[0095]
由于在回声返回损失增益函数的损失值、信号失真比函数的损失值以及相位敏感掩膜的预测值和参考目标值之间的损失值在大小范围上存在差异,所以需要对三者进行归一化处理。基于此,引入α、β、γ,使总损失统一在相同数量级上。在一具体的实施方式中,在回声返回损失增益函数的损失值以及信号失真比函数的损失值的数量级为10,而相位敏感掩膜的预测值和参考目标值之间的损失值的数量级为0.1或0.01,因此为了将总损失统一在相同数量级上,α可以为0.1,β可以为0.1,γ可以为10或100。
[0096]
由于在相位敏感掩膜的损失计算中引入了回声返回损失增益函数和信号失真比函数,所以后续在对循环神经网络模型具体运用时,利用其对麦克风信号的第一声学特征和参考信号的第二声学特征进行处理,能够得到逼近于近端信号相位敏感掩膜的回声消除信号相位敏感掩膜(回声消除信号逼近于近端信号,回声消除信号的相位敏感掩膜逼近于近端信号的相位敏感掩膜),相位敏感掩膜中引入了回声返回损失增益函数和信号失真比函数,因此,后续利用相位敏感掩膜对麦克风信号进行声学掩蔽时,能够将麦克风信号中的回声信号抑制消除。
[0097]
其中,若相位敏感掩膜的目的是用于处理残余回声,则回声返回损失增益函数的损失的权重α大于信号失真比函数的损失的权重β,即α>β,提升了在单讲场景下去除残余回声的能力。其中,不对回声返回损失增益函数的损失的权重α和信号失真比函数的损失的权重β进行限定,可根据实际使用场景具体设置,例如,α=0.5,β=0.1。
[0098]
若相位敏感掩膜的目的是用于降低信号的失真度,则回声返回损失增益函数的损失的权重α小于信号失真度比函数的损失的权重β,即α<β,从而保证了在双讲场景下近端语音不失真。其中,不对回声返回损失增益函数的损失的权重α和信号失真比函数的损失的权重β进行限定,可根据实际使用场景具体设置,例如,α=0.1,β=0.5。
[0099]
请参阅图5,图5是本技术提供的回声消除方法一实施例的流程示意图。需注意的是,若有实质上相同的结果,本实施例并不以图5所示的流程顺序为限。如图5所示,本实施例包括:
[0100]
步骤s51:获取麦克风信号以及与麦克风信号相对应的参考信号。
[0101]
步骤s51与步骤s11类似,在此不再赘述。
[0102]
步骤s52:对麦克风信号和参考信号进行特征提取,得到第一声学特征和第二声学
特征。
[0103]
步骤s52与步骤s12类似,在此不再赘述。
[0104]
步骤s53:将第一声学特征和第二声学特征输入循环神经网络模型,得到相位敏感掩膜。
[0105]
在一实施方式中,循环神经网络模型是由上述任一实施例的循环神经网络模型的训练方法训练得到的。在实际应用中,应用训练所得的循环神经网络模型对麦克风信号的第一声学特征和参考信号的第二声学特征进行处理,以得到回声消除信号的相位敏感掩膜,通过循环神经网络模型获得的回声消除信号的相位敏感掩膜逼近于麦克风信号中近端信号的相位敏感掩膜。可以理解地,在其他实施方式中,也可以应用利用其他训练方式得到的循环神经网络模型对麦克风信号的第一声学特征和参考信号的第二声学特征进行处理,可根据实际使用需要具体设置,在此不做具体限定。其中,估计信号的相位敏感掩膜的公式为:
[0106]
psm
e
=f(|x|,|d|)
[0107]
其中,f为循环神经网络模型,|x|为参考信号的幅度谱,|d|为麦克风信号的幅度谱,psm
e
为回声消除信号的相位敏感掩膜。
[0108]
步骤s54:利用相位敏感掩膜对第一声学特征进行声学掩蔽,得到回声消除信号。
[0109]
本实施方式中,利用相位敏感掩膜对第一声学特征进行声学掩蔽,得到回声消除信号。需要说明的是,如果相位敏感掩膜是通过图3所示实施例的循环神经网络得到的话,此处利用相位敏感掩膜对第一声学特征进行声学掩蔽,实际是对麦克风信号中的回声信号进行了消除;而如果相位敏感掩膜是通过图4所示实施例的循环神经网络得到的话,此处利用相位敏感掩膜对第一声学特征进行声学掩蔽,实际是对麦克风信号中的回声进行了抑制消除,提升了在单讲场景下去除残余回声的能力,同时能够保证在双讲场景下的近端语音信号不失真。
[0110]
具体地,由于第一声学特征为麦克风信号的幅度谱,回声消除信号的相位敏感掩膜等同于近端信号的相位敏感掩膜,所以通过循环神经网络模型获得的相位敏感掩膜对麦克风信号的幅度谱进行声学掩蔽后,能够得到掩蔽后的幅度谱即回声消除信号的幅度谱,由于回声消除信号逼近于近端信号,所以回声消除信号的幅度谱等同于近端信号的幅度谱。
[0111]
其中,回声消除信号的幅度谱的公式为:
[0112][0113]
其中,为回声消除信号的幅度谱,|d|为麦克风信号的幅度谱,psm
e
为回声消除信号的相位敏感掩膜。
[0114]
举例来说,如图6所示,图6是本技术提供的相位敏感掩膜的示意图。在声学掩蔽中,将麦克风信号的幅度谱与回声消除信号的相位敏感掩膜相乘,以将麦克风信号中的回声信号进行了去除,从而得到回声消除信号的幅度谱,由于去除了麦克风信号中的回声,所以回声消除信号即为麦克风信号中的近端信号,回声消除信号的幅度谱即为麦克风信号中
的近端信号的幅度谱。请结合参看图6,图中黑色的点表示值为0,认为该黑色点对应为回声信号,所以将黑色点的表示值与麦克风信号的幅度谱相乘后,则把回声信号进行了去除;图6中颜色越亮的点的表示值接近于1,认为该点对应为回声消除信号,所以将该亮点的表示值与麦克风信号的幅度谱相乘以后,则保留回声消除信号。基于此,通过将麦克风信号的幅度谱与回声消除信号的相位敏感掩膜相乘,从而将麦克风信号中的回声去除并保留了回声消除信号。
[0115]
进一步地,利用相位敏感掩膜对第一声学特征进行声学掩蔽后,得到的是回声消除信号的幅度谱,所以需要基于回声消除信号的幅度谱重建回声消除信号。具体地,将掩蔽后的第一声学特征进行逆傅里叶变换,得到回声消除信号,由于相位敏感掩膜中引入了信号的相位信息,所以能够根据掩蔽后的第一声学特征更好地重建回声消除信号。
[0116]
请参阅图7,图7是本技术提供的终端设备一实施例的结构示意图。本实施方式中,终端设备60包括处理器61和存储器63。
[0117]
处理器61还可以称为cpu(central processing unit,中央处理单元)。处理器61可能是一种集成电路芯片,具有信号的处理能力。处理器61还可以是通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器61也可以是任何常规的处理器61等。
[0118]
终端设备60中的存储器63用于存储处理器61运行所需的程序指令。
[0119]
处理器61用于执行程序指令以实现上述本技术循环神经网络模型的训练方法或回声消除方法任一实施例及任意不冲突的组合所提供的方法。
[0120]
请参阅图8,图8是本技术提供的计算机可读存储介质一实施例的结构示意图。本技术实施例的计算机可读存储介质70存储有程序指令71,该程序指令71被执行时实现本技术循环神经网络模型的训练方法或回声消除方法任一实施例以及任意不冲突的组合所提供的方法。其中,该程序指令71可以形成程序文件以软件产品的形式存储在上述计算机可读存储介质70中,以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本技术各个实施方式方法的全部或部分步骤。而前述的计算机可读存储介质70包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质,或者是计算机、服务器、手机、平板等终端设备。以上所述仅为本技术的实施方式,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。