一种相位相关的共享深度卷积神经网络语音增强方法与流程

文档序号:20571533发布日期:2020-04-29 00:49阅读:501来源:国知局
一种相位相关的共享深度卷积神经网络语音增强方法与流程

本发明涉及数字语音信号处理领域,具体涉及一种相位相关的共享深度卷积神经网络语音增强方法。



背景技术:

语言是人类交流的最重要的方式之一,通过语音进行交流让人类的生活变得简单、高效;随着移动通信技术、互联网技术的发展,语音技术应用在通话、智能音箱、语音识别、智能安防等各个领域,由于环境噪声对语音产生的破环作用,使得语音技术在一些产品上的应用表现不佳,因此,语音增强成为了提升语音质量和可懂度,解决实际环境中产品性能问题的重要一步。

语音增强技术在19世纪就已经受到人们的广泛关注,并且提出了很多解决方案,因此,语音增强相关的技术可分为传统方法和基于深度模型的方法,传统的降噪方法如谱减法、维纳滤波法对稳态噪声有很好的降噪性能,对我们的实际生活中的非稳态噪声降噪效果差,而基于深度学习的语音增强算法相对于传统的方法有着较为明显的提升。

但是,一方面,深度降噪得到的语音损伤较为严重;另一方面,很多深度的方法因为相位谱没有明显的结构信息,很难通过训练的方法进行学习,很多解决方法都是通过训练幅度谱、功率谱,然后直接利用带噪声的语音相位作为预测出来幅度谱的相位;主流的神经网络,扩增数据、增加网络层数能够提升网络的整体泛化性能,采用共享网络的方式能够将结果数据作为扩充数据,在网络层数方面,加层不加量,能够对网络做更为细致的训练。

申请公开号为cn109360581a公开了一种基于神经网络的语音增强方法、计算机可读存储介质及终端设备,所述方法首先使用短时傅里叶变换对加噪语音进行时频域分析,得到所述加噪语音的时频域分析结果,分别计算所述时频域分析结果的相位及幅值,然后使用预设的神经网络模型对所述时频域分析结果的幅值进行增强处理,得到增强后的幅值,最后使用短时傅里叶逆变换对所述时频域分析结果的相位及增强后的幅值进行处理,得到增强后的语音。

申请公开号为cn103971697a公开了一种基于非局部均值滤波的语音增强方法,主要解决现有技术在语音增强后易产生音乐噪声的问题。其实现步骤是:(1)输入带噪语音,计算带噪语音信号功率谱;(2)对带噪语音信号功率谱进行修改谱减法预处理,得到带噪语音估计功率谱;(3)由估计功率谱得到估计频谱,再对估计频谱进行短时傅立叶逆变换,得到预处理后语音;(4)对预处理后语音进行非局部均值滤波,计算语音修正值;(5)使用计算出来的修正值替代原始含噪语音信号。

但是,当前的基于深度学习的方法大多都是设计网络模型,在时频谱域进行处理,使用幅度谱、功率谱作为训练数据,直接一站式降噪,忽略了对降噪结果的验证以及语音相位信息;最近的很多研究表明,相位对于恢复语音信号起着至关重要的作用,尤其是在环境噪声较为严重、信噪比较低的情况下相位信息的不准确对于降噪效果有极大的影响。



技术实现要素:

本发明提供了一种相位相关的共享深度卷积神经网络语音增强方法,能有效抑制语音信号中的噪声干扰,增强语音信号的质量。

一种相位相关的共享深度卷积神经网络语音增强方法,包括:

步骤1,利用短时傅里叶变换对带噪语音数据和干净语音数据进行时频域分析,分别得到带噪语音数据和干净语音数据的包含实部谱与虚部谱的双通道时频谱特征,以带噪语音数据的双通道时频谱特征作为输入,以干净语音数据的双通道时频谱特征作为监督标签,构建训练样本。

步骤1.1,将干净语音数据和噪声数据按照不同的信噪比混合处理,得到带噪语音数据。

步骤1.2,分别对带噪语音数据和干净语音数据进行分帧、加窗处理,得到带噪语音数据与干净语音数据分帧、加窗后的时域采样点数据;

所述的分帧后相邻帧之间为半帧重叠采样点,用半帧音频作为帧移,来解决每帧数据加窗操作导致的该帧两端信号部分被削弱问题。

步骤1.3,对带噪语音数据和干净语音数据分帧、加窗后的时域采样点数据进行短时傅里叶变换,每帧信号对应得到stft复数域谱,所有帧的stft复数域谱组成双通道时频谱道特征;以带噪语音数据的双通道时频谱特征作为输入,以干净语音数据的双通道时频谱特征作为监督标签,构建训练样本。

为了网络能够预测出相关的相位信息,所述的stft复数域谱包括实部谱和虚部谱;所述的stft复数域谱为式(1)所示公式:

|a|e=|a|cos(φ)+j|a|sin(φ)(1);

其中,实部谱为|a|cos(φ);虚部谱为|a|sin(φ);|a|为短时傅里叶变换之后的幅度谱;φ为相位谱;j为虚数单位。

由于,现有的卷积神经网络模型在语音增强任务中大多是以幅度谱、对数功率谱特征作为训练目标,直接训练得到的增强网络会对语音造成损伤;在恢复语音信号时,将带噪语音信号的相位作为恢复信号的相位,这种语音增强方法会导致在低信噪比或环境恶劣的情况下,因为相位差异较大使得恢复的增强语音信号效果较差,这样恢复得到的语音信号无论是对于人耳还是后端的语音应用都是不能满足要求的。

步骤2,基于双通道时频谱特征的映射,搭建用于增强语音信号的相位相关的共享深度卷积神经网络;利用训练样本训练所述共享深度卷积神经网络,得到共享深度卷积神经网络模型。

所述的共享深度卷积神经网络包括降噪模块和降损伤模块;所述的降噪模块是由多层卷积神经网络组成,包括依次连接的频率特征提取层、编码器、解码器和输出层;所述的降噪模块用于抑制带噪语音数据的背景噪声。

所述的频率特征提取层以带噪语音数据的实部谱和虚部谱作为输入数据,干净语音数据的实部谱和虚部谱作为标注数据,输入的实部谱和虚部谱在时间、频率相对独立;所述的频率特征提取层分别在时间、频率维度对输入的实部谱和虚部谱做二维卷积操作;所述的二维卷积操作是指在横向卷积在卷积过程中将时间维度信息进行融合,在纵向卷积将频率维度信息进行融合,得到时间、维度不变的一级抽象特征。

所述的二维卷积操作的卷积核大小分别为m*1和1*n,卷积步长为k,其中m,n∈(1,3,5,7,9,11),k∈(1,2,3,4,5)。

所述的编码器由多个卷积层组成;所述的卷积层采用二维卷积操作,包含多层卷积;所述的卷积通过非线性激活函数增加网络中非线性的成分,提升神经网络的表达能力;每层卷积在通道的层级、时间和频率维度上同时进行,随着层数的加深,时间维度保持不变,频率维度逐渐降低,通道维度逐层增加。

将所述的频率特征提取层得到的一级抽象特征输入编码器中,通过非线性激活函数提高一级抽象特征的非线性表征能力,输出包含语音和噪声信息的高维编码特征。

所述的非线性激活函数为relu、tanh、sigmoid函数。

所述的解码器与编码器具有对称结构,解码器的卷积层数与编码器的卷积层数相同;所述的解码器采用与编码器相同卷积核大小的反卷积方式,按与编码器同等程度增加频率维度时,解码器的通道维度会降低。

所述的解码器的网络层与编码器的网络层对称连接,将编码器输出的高维编码特征进行二维卷积操作后所述的解码器输出与一级抽象特征维度相同的二级抽象特征。

所述的输出层包含一个卷积层和全连接层,所述的卷积层以二级抽象特征作为输入,得到包含实部谱与虚部谱的双通道维度的映射特征;所述的映射特征作为全联接层的输入,在全连接层中进行频率维度的全连接,映射到与双通道时频谱道特征相同的维度,得到增强后的双通道时频谱特征。

所述的降损伤模块与降噪模块具有相同的网络结构,两者之间的网络参数与完全共享,将所述的降噪模块得到的增强后的双通道时频谱特征输入到所述的降损伤模块中,通过损失函数得到训练后增强的双通道时频谱特征;所述的损失函数为公式(2)所示:

loss=|y-fθ(x)|+|y-fθ(fθ(x))|(2);

其中,x为带噪语音成对时频谱特征;y为干净语音成对时频谱特征;fθ(x)代表降噪模块和降损伤模块的输出成对时频谱特征;θ为共享深度卷积神经网络模型中所有可训练参数。

所述的损失函数中|y-fθ(x)|为降噪模块的损失;|y-fθ(fθ(x))|为降损失模块的损失;所述的损失函数同时对降噪模块与降损伤模块进行约束。

在损失函数上,步骤2中构建的共享深度卷积神经网络对θ进行两次的反复学习,在降噪模块中更新参数θ时,降损伤模块的参数θ也同步更新。

选取不同的带噪语音信号分别作为训练集和验证集,所述的共享深度卷积神经网络的训练中,设置初始的学习率为α(α为0.0004~0.0015),随着训练轮次的增加,当在训练集和验证集的损失函数loss不下降时,学习率递减,递减率为γ(γ为0.5~0.9);采用优化器opt对所述的共享深度卷积神经网络进行优化训练,得到训练后增强的双通道时频谱特征。

步骤3,针对待增强的带噪语音数据,按照步骤(1)获得该带噪语音数据的双通道时频谱特征并输入至共享深度卷积神经网络模型中,经计算输出预测的双通道时频谱特征,利用短时傅里叶逆变换、重叠相加法对增强的双通道时频谱特征进行处理得到增强语音信号。

所述的步骤2得到的训练后增强的双通道时频谱特征包含增强后的实部谱r与增强后的虚部谱i,将所述的增强后的实部谱r与增强后的虚部谱i组合成复数函数c;

所述的复数域谱c为公式(3)所示:

c=r+ji(3);

其中,r为增强后的实部时频谱;i为增强后的虚部时频谱;

所述的复数域谱c根据欧拉公式表示成幅度谱和相位谱的形式。

所述的幅度谱为公式(4)所示;

所述的相位谱φ为公式(5)所示:

所述的复数域谱c包含地幅度信息和相位信息是通过共享深度卷积神经网络预测得到的,并非直接使用带噪语音信号的相位。

对所述的复数域谱进行快速傅里叶逆变换,得到双通道时频谱对应的时域语音信号数据后利用重叠相加法得到增强语音信号。

本发明的有益效果为:

(1)本发明以带噪语音数据的实部谱和虚部谱作为输入数据,干净语音谱作为标注数据搭建相位相关的共享深度卷积神经网络,并利用包含是实部谱和虚部谱的增强后双通道时频谱特征作为训练特征,为共享深度卷积神经网络的训练优化提供更多的语音信息。

(2)本发明中构建的共享深度卷积神经网络包括降噪模块和降损伤模块,将相位相关的深度卷积神经网络进行共享式堆叠,同步更新网络参数,起到降噪同时保证语音质量的作用;这样的训练方式一方面将中间降噪结果数据又作为训练数据输入到网络中,起到扩充训练数据集的目的;另一方面将一级降噪语音再次送入相同网络重复训练,对损伤语音数据进行恢复。

(3)本发明所构建的相位相关的共享深度卷积神经网络的降噪模块包括依次连接的频率特征提取层、编码器、解码器和输出层;特征提取层能够从维度层面融合特征;编码器能够提取带噪语音中声音成分高维特征;解码器能够将高维特征恢复为含有更多声音信息的低维特征;最终的输出层能够恢复出增强后的双通道时频谱特征;这样的共享深度卷积神经网络结构能够提取重要信息并恢复,适合于语音增强这种回归任务。

(4)本发明所述的共享深度卷积神经网络中整体网络参数完全共享,由于降噪网络是以共享网络模块的形式进行堆叠,总体的参数量和单独一个降噪网络的参数量是相同的,在时间复杂度和空间复杂度上都保持不变。

附图说明

图1为本发明所述的共享深度卷积神经网络的工作流程示意图。

图2为本发明所述的共享深度卷积神经网络的结构结构示意图。

图3为本发明所述的共享深度卷积神经网络中的二维卷积操作图;其中1为在时间维度上的卷积;2为频率维度上的卷积。

图4为本发明所述的共享深度卷积神经网络中编码器、解码器以及训练模块参数共享示意图。

图5本发明所使用语音信号几何关系示意图。

图6本发明所使用的语音增强信号解码过程示意图。

具体实施方式

为使发明的目的、技术方案和有点表达得更加清楚明白,下面结合附图及具体实施案例对本发明做进一步详细说明。

如图1所示,一种相位相关的共享深度卷积神经网络语音增强方法,包括:

步骤1,利用短时傅里叶变换对带噪语音数据和干净语音数据进行时频域分析,分别得到带噪语音数据和干净语音数据的包含实部谱与虚部谱的双通道时频谱特征,以带噪语音数据的双通道时频谱特征作为输入,以干净语音数据的双通道时频谱特征作为监督标签,构建训练样本。

选取干净说话人语音500条,每条语音时长在3~10s之间,噪声数据选取嘈杂背景人声、火车噪声等30种,按照不同的-10~30信噪比混合叠加处理,得到用于网络训练的带噪语音数据10000条,在训练过程中每次送入网络训练的批次大小为6。

对得到的10000条带噪语音数据和干净语音数据进行分帧、加窗处理,得到分帧、加窗后的时域采样点数据;相邻帧之间包含半帧重叠采样点,即半帧音频作为帧移,来解决每帧数据加窗操作导致的该帧两端信号部分被削弱问题。

对分帧、加窗后的时域采样点数据进行短时傅里叶变换,每帧信号对应得到stft谱特征,所有帧谱特征组成时频谱特征,得到10000条时频谱特征。

stft谱为a+jb的复数域谱形式,为了网络能够预测出相关的相位信息,将复数形式的谱特征分解为实部谱和虚部谱两部分,并且将实部谱和虚部谱两部分以两个通道的形式作为最终网络训练数据的输入,其中,带噪语音谱作为输入数据,干净语音谱作为标注数据,每个音频经过处理得到(t,f,2)维度的双通道时频特征,其中,t在实例中为367,f在实例中为257,2是通道数量。

所述的复数域谱具体为式(1)所示:

|a|e=|a|cos(φ)+j|a|sin(φ)(1)

其中,实部谱为|a|cos(φ);虚部谱为|a|sin(φ);|a|为短时傅里叶变换之后的幅度谱;φ为相位谱;j为虚数单位。

步骤2,基于双通道时频谱特征的映射,搭建用于增强语音信号的相位相关的共享深度卷积神经网络;利用训练样本训练所述共享深度卷积神经网络,得到共享深度卷积神经网络模型。

所述的共享深度卷积神经网络包括降噪模块和降损伤模块;

如图2所示,所述的降噪模块由频率特征提取层、编码器、解码器和输出层依次连接而成。

频率特征提取层以双通道时频谱特征作为输入,这里输入特征维度为(6,367,257,2),输入的双通道时频谱特征在时间、频率相对独立,在频率特征提取层分别在时间、频率维度对输入特征做二维卷积操作,在具体实施实例中,卷积核大小分别为3*1和1*5,卷积步长为1,其中,频率特征提取层输出时间维度不变并且时间、频率维度互相关联的维度为(6,367,257,15)的一级抽象特征。

如图3所示,将一级抽象特征输入到编码器结构中,编码器由6层卷积层组成,每个卷积层采用二维卷积,在具体实例中采用3×3卷积核,每层卷积层后会加入relu激活函数,特征变化为(6,367,257,15)->(6,367,128,24)->(6,367,64,32)->(6,367,32,32)->(6,367,16,64)->(6,367,8,64)->(6,367,4,64)在编码器的最后一层输出包含语音和噪声信息的高维编码特征,特征维度为(6,367,4,64)。

如图4所示,将编码器输出的高维编码特征作为解码器的输入,其中,解码器和编码器具有对称结构,卷积层数与编码器同样采用6层,采用相同卷积核3×3大小的反卷积方式,并且解码器端直接与编码器中对称网络层进行连接,在解码器的输出端输出与一级抽象特征维度相同的二级抽象特征(6,367,257,15)。

输出层包含一个卷积层和全连接层,以解码器输出的二级抽象特征作为输入,经过卷积层得到通道维度与双通道时频谱道特征通道维度相同的双通道特征;所述的双通道特征在全连接层中进行频率维度的全连接,映射得到(6,367,257,2)维度的得到增强后的双通道时频谱特征。

所述的降噪模块与降损伤模块使用相同的网络结构,所有网络参数完全共享;所述的降噪模块中,将带噪语音数据的实部谱和虚部谱作为输入数据,干净语音谱作为标注数据带入到步骤2中搭建相位相关的共享深度卷积神经网络语音增强方法,得到增强后的双通道时频谱特征,所得特征维度保持与步骤2单个模块输出维度相同,都为(6,367,257,2);

如图5所示,将降噪模块得到的增强后的双通道时频谱特征输入到所述的损伤模块中,通过损失函数得到得到训练后增强的双通道时频谱特征;所述的损失函数为公式(2)所示:

loss=|y-fθ(x)|+|y-fθ(fθ(x))|(2);

其中,x为带噪语音成对时频谱特征,y为干净语音成对时频谱特征;fθ(x)代表降噪子块和将损伤子块的输出成对时频谱特征;θ为共享深度卷积神经网络模型中所有可训练参数;

所述的损失函数由干净语音成对时频谱特征与一次增强成对时频谱特征误差|y-fθ(x)|和干净语音成对时频谱特征与增强成对时频谱特征误差|y-fθ(fθ(x))|两部分组成;在损失函数上,步骤2中构建的共享深度卷积神经网络对θ进行两次的反复学习,在降噪模块中更新参数θ时,降损伤模块的参数θ也同步更新。

将选取的10000条带噪语音信号选取8000条和2000条分别作为训练集和验证集,训练和测试批次选用6。对于整个网络的训练,设置初始的学习率为0.0006,随着训练轮次的增加,当在训练集和验证集上loss不下降时,学习率递减,递减率为0.7,采用的优化器adam对网络进行优化训练,在上述超参数的指导下完成整个相位相关共享语音增强网络的训练,得到训练后增强的双通道时频谱特征。

步骤3,针对待增强的带噪语音数据,按照步骤(1)获得该带噪语音数据的双通道时频谱特征并输入至共享深度卷积神经网络模型中,经计算输出预测的双通道时频谱特征,利用短时傅里叶逆变换、重叠相加法对增强的双通道时频谱特征进行处理得到增强语音信号。

如图6所示,将增强的双通道时频谱特征合成复数域谱,复数谱维度与实部、虚部谱维度相同都是(6,367,257,1),然后,对复数域谱进行快速傅里叶逆变换(isift)得到时频谱对应的时域语音信号数据后利用重叠相加法得到增强语音信号。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1