1.本发明属于语音信号处理技术领域,具体涉及一种基于双分支卷积增强窗口注意力的一维时序信号增强方法。
背景技术:2.近年来,深度学习和高性能计算机的迅猛发展为一维时序信号增强技术带来了显著的进展。尤其在深度神经网络(deep neural network,dnn)领域,卷积神经网络(convolutional neural network,cnn)和循环神经网络(recurrent neural network,rnn)等模型取得了突破性的成果。尽管已经有大量的科研工作试图在一维信号的时域领域上构建深度学习模型,但在实验过程中研究员们发现通过短时傅里叶变换(short-time fourier transform,stft)对一维时序信号进行处理,构建一维时序信号增强模型取得的增强效果更为显著。
3.早期的科研工更多的关注于处理幅值信息,利用带噪的一维时序信号的相位信息进行音频的重构。然而,这种方法过于偏重于幅值信息,忽视了相位信息的重要性。最新的研究进展表明,幅值和相位信息在时序信号的感知质量和可理解性方面都扮演着关键角色,因此研究者开始关注同时估计幅值和相位的方法。
4.相位敏感掩码(phase-sensitive mask,psm)是早期提出的方法,它将相位信息融入到掩码估计中,并进一步发展了复值比率掩码(complex-valued ratio mask,crm)用于估计真实分量和复杂分量。这种算法通过同时增强干净一维时序信号和带噪一维时序信号,将语谱图切分为实部和虚部,从而有效地重构语音。
5.近年来,深度复杂网络的发展推动了一维时序信号增强性能的进一步提升。然而,这些网络对于卷积层的表示能力过于依赖。为了解决这个问题,引入了注意力机制,它能够融合空间信息和通道信息,以提高卷积层的表示能力。
技术实现要素:6.本发明针对上述问题,提供了一种基于双分支卷积增强窗口注意力的一维时序信号增强方法。
7.为达到上述目的,本发明采用了以下技术方案:
8.一种基于双分支卷积增强窗口注意力的一维时序信号增强方法,包括以下步骤:
9.步骤1:收集纯净一维时序信号与噪音一维时序信号并进行预处理;
10.步骤2:通过预处理后的纯净一维时序信号与噪音一维时序信号,构建含噪一维时序信号x,通过短时傅里叶变换得到含噪一维时序信号x的频域表示:mag=[b,c,h,w],phase=[b,c,h,w];
[0011]
步骤3:构建基于双分支卷积增强窗口注意力的一维时序信号增强网络,包括编码器模块、卷积增强窗口注意力模块、解码器模块和crm掩码模块;
[0012]
步骤4:训练步骤3得到的一维时序信号增强网络;
[0013]
步骤5:采用训练好的一维时序信号增强网络对实际一维时序信号进行增强处理,得到估计的干净信号。
[0014]
进一步,所述步骤1中预处理的具体步骤为:
[0015]
步骤1.1:将原本采样率为48000hz的纯净一维时序信号和噪音一维时序信号重采样到16000hz,目的是为了降低频率,减少数据量;
[0016]
步骤1.2:用零填充方法将信号补齐到10s。
[0017]
进一步,所述编码器模块由两个分支组成,分别用于预测信号的幅值部分和相位部分,这两个分支具有相同的网络架构,该网络架构包括2d卷积层、bn层和relu层,通过2d卷积层实现下采样操作,在每个分支中完成卷积操作后,通过复值计算模块与另一个分支建立连接;
[0018]
所述解码器模块由两个分支组成,分别用于估计信号的幅值部分和相位部分,这两个分支具有相同的网络架构,该网络架构包括2d反卷积层、bn层和relu层,在每个分支中完成反卷积操作后,通过复值计算模块与另一个分支建立连接,在通过最后一层2d反卷积层后,将估计得到的幅值和相位信息通过双曲正切函数进行约束,得到约束后的幅值信息和相位信息;
[0019]
所述卷积增强窗口注意力模块包括非重叠窗口注意力模块和卷积增强前向传播模块,所述非重叠窗口注意力模块采用非重叠窗口的多头自注意力机制;所述卷积增强前向传播模块包括卷积增强模块和ln层,所述卷积增强模块为非对称结构,包括依次连接的全连接层、激活函数、转置、2d卷积层、激活函数、转置、全连接层;
[0020]
所述crm掩码模块根据约束后的幅值信息和相位信息得到掩码m,掩码m再与含噪一维时序信号x的频域表示相乘,并通过逆短时傅里叶变换将其转换回时域表示。
[0021]
进一步,所述非重叠窗口的多头自注意力机制,具体为:
[0022]
根据窗口大小m将信号x=[b,c,h,w]中的特征信息h、w进行补零填充,然后将信号x分割成窗口大小为m
×
m的非重叠窗口,并在每个窗口内执行多头自注意力机制,从每个窗口中得到平移和转置特征
[0023]
假设多头自注意力机制的头是k,第k个头的非重叠窗口计算过程描述为:
[0024]
x={x1,x2,
…
,xn},n=hw/m2,
[0025][0026][0027]
其中分别代表第k个头的查询,键,值,代表的是第k个头的输出,最后将所有头的输出将被连接起来,通过线性变换得到最后执行完多头注意力的结果。
[0028]
进一步,所述卷积增强窗口注意力模块表示为:
[0029]
x
′
l
=w-msa(ln(x
l-1
)) x
l-1
[0030]
x
l
=ce(ln(x
′
l
)) x
′
l
[0031]
其中x
′
l
和x
l
分别代表非重叠窗口注意力模块和卷积增强前向传播模块的输出,ln代表归一化。
[0032]
进一步,所述步骤4中训练步骤3得到的一维时序信号增强网络,具体步骤如下:
[0033]
步骤4.1:将一维时序信号的频域表示分批输入进一维时序信号增强网络;
[0034]
步骤4.2:输出增强的一维时序信号;
[0035]
步骤4.3:将增强一维时序信号和输入的一维时序信号进行误差计算,通过联合损失函数进行误差计算;
[0036]
步骤4.4:误差反向传播,更新一维时序信号增强网络参数;
[0037]
步骤4.5:重复步骤4.1至步骤4.4,直至满足收敛条件。
[0038]
进一步,所述联合损失函数通过引入幅值损失函数和相位损失函数,并结合时域信息损失函数建立,表示如下:
[0039]
loss=si-snr loss_d_r loss_d_i
[0040]
其中si-snr为时域信息损失函数,loss_d_r为幅值损失函数,loss_d_i为相位损失函数;
[0041]
所述si-snr表示为:
[0042][0043]
其中s和分别表示为纯净的和估计的时域波形,<
·
,
·
>表示两个向量之间的点积,||
·
||2代表l2范式;
[0044]
所述loss_d_r的计算步骤如下:首先将增强后的幅值信息和干净信号的幅值信息输入到d_real函数中,d_real函数包含五层卷积层和两层注意力层,在除最后一层卷积层外,所有卷积层都采用leaky relu激活函数进行非线性变换,得到loss_d_r,表示如下:
[0045]
loss_d_r=((d_real(mag_enh)-s)2 (d_real(mag_cle))2)/2
[0046]
其中mag_enh代表增强信号的幅值信息,mag_cle代表干净信号的幅值信息,s代表全1向量;
[0047]
所述loss_d_i的计算步骤如下:首先将增强后的相位信息和干净信号的相位信息输入到d_imag函数中,d_imag函数包含五层卷积层和两层注意力层,在除最后一层卷积层外,所有卷积层都采用leaky relu激活函数进行非线性变换,得到loss_d_i,表示如下:
[0048]
loss_d_i=((d_imag(phase_enh)-s)2 (d_imag(phase_cle))2)/2
[0049]
其中phase_enh代表增强信号的相位信息,phase_cle代表干净信号的相位信息信息,s代表全1向量。
[0050]
与现有技术相比本发明具有以下优点:
[0051]
(1)本方法提出了卷积增强窗口注意力模块,以便更好的捕获一维时序信号的特征。该模块的设计旨在解决传统transformer在捕获局部上下文信息时能力不足以及计算全局注意力时高计算复杂度的问题。
[0052]
(2)通过消融实验验证了所提出卷积增强模块的优越性。此外,将本方法与公共vctk语料库上的先进算法进行了比较。结果表明,本发明所提出的方法在性能上具有明显的优势和潜力,可以更好的对一维时序信号进行增强。
附图说明
[0053]
图1是基于双分支卷积增强窗口注意力的一维时序信号增强网络的示意图;
[0054]
图2是编码器-解码器模块卷积层参数图;
[0055]
图3是卷积增强窗口注意力模块的示意图;
[0056]
图4是非重叠窗口注意力模块的示意图;
[0057]
图5是卷积增强前向传播模块的示意图;
[0058]
图6是d_real函数和d_imag函数中五层卷积层和两层注意力层的排列方式。
具体实施方式
[0059]
为了进一步阐述本发明的技术方案,下面通过实施例对本发明进行进一步说明。
[0060]
实施例1
[0061]
基于双分支卷积增强窗口注意力的一维时序信号增强方法,包括以下步骤:
[0062]
步骤1:收集纯净一维时序信号与噪音一维时序信号并进行预处理;
[0063]
步骤1.1:将原本采样率为48000hz的纯净一维时序信号和噪音一维时序信号重采样到16000hz,目的是为了降低频率,减少数据量;
[0064]
步骤1.2:用零填充方法将信号补齐到10s,采用了具有40ms大小的汉宁的窗口和10ms的帧长。
[0065]
步骤2:通过预处理后的纯净一维时序信号与噪音一维时序信号,构建含噪一维时序信号x,通过短时傅里叶变换得到含噪一维时序信号x的频域表示:mag=[b,c,h,w],phase=[b,c,h,w];
[0066]
步骤3:构建基于双分支卷积增强窗口注意力的一维时序信号增强网络(如图1所示),包括编码器模块、卷积增强窗口注意力模块、解码器模块和crm掩码模块;
[0067]
编码器-解码器模块的设计是在dcunet模型的基础上进行改进,但不同之处在于对幅值信息和相位信息实现分离,并分别进行建模。具体操作如下:
[0068]
所述编码器模块由两个分支组成,分别用于预测信号的幅值部分和相位部分,这两个分支具有相同的网络架构,该网络架构包括2d卷积层、bn层和relu层,通过2d卷积层实现下采样操作,在每个分支中完成卷积操作后,通过复值计算模块与另一个分支建立连接;
[0069]
这一过程可以表示为:
[0070]
mag=conv2d(mag)-conv2d(phase),
[0071]
phase=conv2d(mag) conv2d(phase),
[0072]
其中mag代表幅值信息,phase代表相位信息,conv2d代表2d卷积层。在编码器模块中,实现幅值信息和相位信息的交互。随后,将幅值信息和相位信息通过批归一化bn层和relu层进行处理。
[0073]
所述解码器模块由两个分支组成,分别用于估计信号的幅值部分和相位部分,这两个分支具有相同的网络架构,该网络架构包括2d反卷积层、bn层和relu层,在每个分支中完成反卷积操作后,通过复值计算模块与另一个分支建立连接,在通过最后一层2d反卷积层后,将估计得到的幅值和相位信息通过双曲正切函数进行约束,得到约束后的幅值信息和相位信息,以更好地估计掩码m在crm掩码模块中的应用;
[0074]
在设计编码器-解码器模块时,我们参考了dcunet的编码器-解码器操作。如图2所
示,具体设计了10层编码器,其中表明了所使用的卷积层的层数以及卷积的参数,每个卷积操作之后都包括了bn层和relu层的处理。
[0075]
如图3所示,所述卷积增强窗口注意力模块包括非重叠窗口注意力模块(window-based multi-head self-attention,w-msa)和卷积增强前向传播模块(convolution enhancement forward propagation,cefp)。
[0076]
所述卷积增强窗口注意力模块表示为:
[0077]
x
′
l
=w-msa(ln(x
l-1
)) x
l-1
[0078]
x
l
=ce(ln(x
′
l
)) x
′
l
[0079]
其中x
′
l
和x
l
分别代表非重叠窗口注意力模块和卷积增强前向传播模块的输出,ln代表归一化。
[0080]
所述非重叠窗口注意力模块采用非重叠窗口的多头自注意力机制(如图4所示),通过在非重叠窗口内计算自注意力机制,有效降低计算量,使得注意力机制能更加精确地关注局部上下文信息,提高了模型的性能;
[0081]
所述非重叠窗口的多头自注意力机制,具体为:
[0082]
根据窗口大小m将信号x=[b,c,h,w]中的特征信息h、w进行补零填充,使其对齐为窗口的倍数,然后将信号x分割成窗口大小为m
×
m的非重叠窗口,并在每个窗口内执行多头自注意力机制,从每个窗口中得到平移和转置特征
[0083]
假设多头自注意力机制的头是k,第k个头的非重叠窗口计算过程描述为:
[0084]
x={x1,x2,
…
,xn},n=hw/m2,
[0085][0086][0087]
其中分别代表第k个头的查询(query,q),键(key,k),值(value,v),代表的是第k个头的输出,最后将所有头的输出将被连接起来,通过线性变换得到最后执行完多头注意力的结果。
[0088]
所述卷积增强前向传播模块(如图5所示)包括卷积增强模块(convolution enhancement,ce)和ln层,以此实现数据特征分布的归一化,保证其稳定性;
[0089]
在传统的transformer模块中,捕获局部上下文信息存在很多困难。然而,对于一维时序信号增强任务而言,邻近的时序信息至关重要。因此,提出了卷积增强模块,旨在有效捕获局部上下文信息,更好的融合局部信息。所述卷积增强模块为非对称结构,包括依次连接的全连接层、激活函数、转置、2d卷积层、激活函数、转置、全连接层。
[0090]
通过消融实验证明,在前向传播模块中引入卷积增强模块对模型性能的提升十分显著。这一结果表明,将卷积增强模块应用于捕获局部上下文信息方面的任务对于增强模型的性能有明显的积极影响。这进一步验证了卷积增强模块在一维时序信号增强中的有效性。
[0091]
所述crm掩码模块根据约束后的幅值信息和相位信息得到掩码m,掩码m再与含噪一维时序信号x的频域表示相乘,并通过逆短时傅里叶变换将其转换回时域表示。
[0092]
给定一个带噪一维时序信号x(n)=y(n) z(n),其中x(n)代表带噪信号,y(n)代表
干净信号,z(n)代表噪声信号,一维时序信号增强的任务是从x(n)里面估计出y(n),将x和y经过短时傅里叶变换后得到x=xr jxi,y=yr jyi,
[0093]
crm可以定义为:
[0094][0095]
为了实现这一目标,我们采用信号近似(sa)的方法,直接将纯净一维时序信号的幅值或复杂语谱图与使用掩码的噪声幅值或复谱图之间的差异最小化。我们定义损失函数为:具体的公式表示为:
[0096][0097]
步骤4:训练步骤3得到的一维时序信号增强网络;
[0098]
步骤4.1:将一维时序信号的频域表示分批输入进一维时序信号增强网络;
[0099]
步骤4.2:输出增强的一维时序信号;
[0100]
步骤4.3:将增强一维时序信号和输入的一维时序信号进行误差计算,通过联合损失函数进行误差计算;
[0101]
步骤4.4:误差反向传播,更新一维时序信号增强网络参数;
[0102]
步骤4.5:重复步骤4.1至步骤4.4,直至满足收敛条件。
[0103]
进一步,所述联合损失函数通过引入幅值损失函数和相位损失函数,并结合时域信息损失函数建立,表示如下:
[0104]
loss=si-snr loss_d_r loss_d_i
[0105]
其中si-snr为时域信息损失函数,loss_d_r为幅值损失函数,loss_d_i为相位损失函数;
[0106]
所述si-snr表示为:
[0107][0108]
其中s和分别表示为纯净的和估计的时域波形,<
·
,
·
>表示两个向量之间的点积,||
·
||2代表l2范式;
[0109]
所述loss_d_r的计算步骤如下:首先将增强后的幅值信息和干净信号的幅值信息输入到d_real函数中,d_real函数包含五层卷积层和两层注意力层,层次排列方式如图6所示,在除最后一层卷积层外,所有卷积层都采用leaky relu激活函数进行非线性变换,得到loss_d_r,表示如下:
[0110]
loss_d_r=((d_real(mag_enh)-s)2 (d_real(mag_cle))2)/2
[0111]
其中mag_enh代表增强信号的幅值信息,mag_cle代表干净信号的幅值信息,s代表全1向量;
[0112]
所述loss_d_i的计算步骤如下:首先将增强后的相位信息和干净信号的相位信息
输入到d_imag函数中,d_imag函数包含五层卷积层和两层注意力层,在除最后一层卷积层外,所有卷积层都采用leaky relu激活函数进行非线性变换,得到loss_d_i,表示如下:
[0113]
loss_d_i=((d_imag(phase_enh)-s)2 (d_imag(phase_cle))2)/2
[0114]
其中phase_enh代表增强信号的相位信息,phase_cle代表干净信号的相位信息信息,s代表全1向量。
[0115]
步骤5:采用训练好的一维时序信号增强网络对实际一维时序信号进行增强处理,得到估计的干净信号。
[0116]
实施例2
[0117]
本发明提出的网络模型将与基准模型以及包括时域方法和时频域(t-f)方法在内的现有最先进(state-of-the-art,sota)方法进行比较。在时域方法方面,我们选择了wave-u-net、segan和tstnn。在时频域方法方面,我们选择了dcunet16、dcunet20、metricgan、metricgan 和ftddn等多种模型进行对比。所有这些模型都将在vctk语料库上进行实验评估。
[0118]
在本实施例中,我们采用了爱丁堡大学的开源标准语音数据集作为实验数据集。该数据集的语音样本来自已公开的语料库voice bank,而噪声样本则来自已公开的噪声数据集demand。这样的选择保证了我们使用了广泛接受和具有代表性的语音和噪声数据,使得实验结果更具可信度和可比性。
[0119]
实验数据集采用的是爱丁堡大学的开源标准语音数据集,该数据集的语音来自已公开的语料库voice bank,该数据集的噪声来自已公开的噪声数据集demand。
[0120]
在评估语音质量方面,我们使用了几种常见的指标:
[0121]
语音质量的感知评估(pesq),其值范围从-0.5到4.5;短时客观可懂度(stoi),得分范围在0到1之间,用于评估语音的可懂度,分数越接近1表示可懂度越高;主观平均意见得分(mos):用于信号失真的csig(从1到5)、用于噪声失真评估的cbak(从1到5)和用于总体质量评估的covl(从1到5)。
[0122]
对于不同一维时序信号增强方法的性能评估实验结果如表1所示。
[0123]
表1不同一维时序信号增强方法性能评估结果
[0124][0125][0126]
表1中pesq,csig,cbak,covl分别表示语音质量感知评估分,信号失真综合测量分,噪声失真综合测量分和整体语音质量综合测量分。
[0127]
在实验中,我们对时域的一维时序信号增强方法和频域的一维时序信号增强方法进行了比较,以确保实验结果的充分性。根据表1的结果来看,我们发现本发明所提出的方法在pesq、csig、cbak和covl指标上均优于其他对比算法,这证实了本发明在一维时序信号增强方面具有一定的优越性。
[0128]
具体而言,本发明相比于基准模型dcunet20,在pesq、csig、cbak和covl得分上分别提升了0.47、0.15、0.06和0.30。值得注意的是,本发明在所有指标上均优于其他对比模型,尤其在pesq指标上的提升更为明显,远超过其他模型的表现。
[0129]
以上显示和描述了本发明的主要特征和优点,对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化囊括在本发明内。
[0130]
此外,应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施例中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。