在线更新噪声基矩阵的非负矩阵分解语音增强方法

白志刚 鲍长春

(北京工业大学信息学部, 语音与音频信号处理研究室, 北京 100124)

摘 要: 基于非负矩阵分解(Nonnegative matrix factorization, NMF)的语音增强算法需要和背景噪声类型匹配的噪声基矩阵(Basis matrix),而在实际中,这是很难被保证的。本文提出了一种基于噪声基矩阵在线更新的非负矩阵分解语音增强方法,该方法首先利用一个无语音帧判决模块识别出带噪语音的无语音区域,然后利用一个固定长度的滑动窗口(Sliding window)来包含若干帧最近过去的带噪语音的无语音帧,并用这些无语音帧的幅度谱在线更新噪声基矩阵,最后利用更新得到的噪声基矩阵和预先训练的语音基矩阵实现语音增强。该方法能够在线更新出匹配的噪声基矩阵,有效地解决了噪声基矩阵不匹配的问题。实验证明,本文所提的方法在线学习到的噪声基矩阵在大多数条件下比匹配训练集下训练得到的噪声基矩阵的性能还要优越。

关键词:语音增强;非负矩阵分解;噪声自适应;无语音帧

1 引言

一个有效的语音增强方法不仅可以最大程度地抑制背景噪声,而且不会造成原始目标语音信号的失真,最终达到提升语音的质量和可懂度的目的。目前,语音增强任务变的更加具有挑战性,因为许多以语音为媒介的应用越来越倾向于工作在各种复杂的噪声环境下,比如移动电话和语音识别等。然而,在极度非平稳噪声环境下,如何有效地抑制背景噪声仍然是一个难题。

基于非负矩阵分解(Nonnegative matrix factorization, NMF)的语音增强[1-14]是目前一种对抑制非平稳噪声非常有效的技术,其使用非负的语音和噪声基矩阵(Basis matrix)来建模语音和噪声的频谱矢量,通过在语音和噪声的联合基矩阵中分解带噪语音的频谱矢量,来获得相应的语音和噪声编码矢量,进而获得估计的语音和噪声频谱分量,实现语音增强。

然而,基于非负矩阵分解的方法存在两个不足。首先,在实际中,语音和噪声基矩阵之间不可避免的重叠会导致语音和噪声源之间的混淆,而这会严重降低算法的性能。其次,此类算法需要和背景噪声类型匹配的噪声基矩阵,而这不可能总被保证,因为背景噪声的类型和特性不可能总能提前被知道。本文主要针对噪声训练集不可用的情况,即上述的第二个不足。为了解决这一问题,研究者们已经提出了不少的算法,主要是如何在事先不知道噪声训练集的情况下在线更新出需要的噪声基矩阵[7-14]。专业地说,语音和噪声中的一种训练集不可用的情况都可以被称为半监督的(Semi-supervised)语音增强[11]

文献[8]首先利用一个话音活动检测器(Voice activity detector, VAD)大致判断出带噪语音信号的无语音区域,然后利用得到的无语音段来训练一个过完备的噪声基矩阵,虽然该方法得到的噪声基矩阵包含所有的噪声信息,但是该方法存在延时,增强时需要整个带噪的信号。文献[9-11]提出了一类半监督的基于非负矩阵分解的语音增强方法,这些方法事先从纯净语音训练集中学习语音的基矩阵,而噪声基矩阵则在增强阶段随着语音和噪声的编码矩阵不断更新。通过利用一个滑动窗口(Sliding window),文献[10]实现了一个半监督的实时语音增强系统,但是从半监督非负矩阵分解过程中获得的噪声基矩阵通常包含少量能够表示语音频谱的基矢量,这就导致了语音和噪声源的混淆。文献[12]首先用一个基于统计模型的方法对带噪语音进行预增强,并在预增强阶段估计语音存在概率(Speech presence probability, SPP),然后利用预增强过的语音和估计的SPP在线更新语音和噪声基矩阵,然而该方法需要预先训练完备的噪声基矩阵来进行初始化。文献[13]利用先前帧估计得到的噪声频谱矢量来在线学习噪声的基矩阵,然而这些估计的噪声频谱矢量和原始的噪声频谱矢量相比具有较大的失真。文献[14]利用从输入的带噪信号的开始部分捕获的只存在噪声的一段信号来获得增强时的噪声基矩阵,对于快速变化的非平稳噪声,这显然是不合理的。

本文提出了一种新颖的半监督无延时语音增强方法,该方法提前用纯净语音训练集训练得到固定的语音基矩阵,而噪声基矩阵在增强阶段在线更新。由于自然的语音存在好多小的静音段,所以所提方法利用带噪语音的无语音区域来在线更新噪声基矩阵。该方法首先通过联合使用全局语音存在概率[15]和带噪语音和噪声频谱之间的归一化互相关系数(Normalized cross-correction coefficient, NCCC)[16]来判决带噪语音中的无语音帧。然后,利用一个固定长度的滑动窗口来包含若干帧最近过去的带噪语音的无语音帧的频谱,并用这个滑动窗口包含的这些频谱矢量在线更新噪声基矩阵。很显然,由于用的噪声频谱是最近的而且是过去的,所以就算对于高度非平稳的噪声,在时间差如此小的情况下学习到的噪声基矩阵也能很好地适应,并且噪声基矩阵的更新不存在延时。最后,更新的噪声基矩阵和预先训练的语音基矩阵就可以被用来建模带噪语音的频谱矢量,进而实现语音增强。

接下来,第2部分主要介绍一下基于非负矩阵分解的语音增强方法的基本原理。然后,第3部分详细给出了所提方法的原理。第4部分给出所提方法和现存的有监督和半监督的方法的性能比较。最后,本文在第5部分给出结论。

2 基于NMF的语音增强方法的基本原理

本部分首先介绍一下非负矩阵分解,然后介绍一下基于非负矩阵分解的语音增强方法的基本原理。

2.1 非负矩阵分解

由于非负性约束的使用,非负矩阵分解可以学习对象的基于部分的表示[17]。给定一个非负矩阵VRe×m,非负矩阵分解的目的在于迭代求解非负矩阵因子TRe×rCRr×m来解决矩阵方程VTC[18]TC分别被称为基矩阵和编码矩阵。从矩阵方程可知,矩阵T的所有列矢量的线性叠加组合可以近似矩阵V的任意一个列矢量,因此矩阵T的列矢量即为学习到的对象的部分,被称为基矢量。

本文使用的非负矩阵分解算法基于参考文献[18],并用VTC之间的广义KL散度(Generalized Kullback-Leibler divergence)作为代价函数,因为实验证明其对声源分离非常有效。VTC之间的广义KL散度的表达式如下:

(1)

式中,以符号Ai,j代表矩阵A的第i行第j列的元素。

公式(1)的局部最小可以通过下面乘法更新准则不断迭代更新直到收敛得到:

(2)

(3)

在语音增强中,在每次迭代后,基矩阵T的每一列都要归一化。

2.2 有监督方法的基本原理

把非负矩阵分解用到语音增强领域,矩阵V通常是语音或噪声信号的幅度谱或功率谱,其中,每帧的频谱都存储在矩阵V的列中,本文一律使用幅度谱。在加性噪声环境下,语音信号模型可以表示如下:

Y(k,τ)=X(k,τ)+W(k,τ)

(4)

式中,Y(k,τ),X(k,τ)和W(k,τ)分别为带噪语音,语音和噪声信号的短时傅里叶变换(Short-time Fourier transform, STFT)系数,kτ分别是频点索引和帧索引。

为了实现语音增强,需要首先分别训练语音源以及各个噪声源对应的基矩阵。以语音源为例,首先需要利用短时傅里叶变换来获得训练语音的幅度谱矩阵XtrainRE×N(EN分别表示频点和时间帧的数量),其中矩阵Xtrain的每一列都是一帧语音幅度谱。然后就可以利用非负矩阵分解算法把矩阵Xtrain分解为两个矩阵相乘:

(5)

式中,TX为训练好的语音基矩阵,CX为相应的编码矩阵。依照语音基矩阵的训练方法,每种类型的噪声源对应的噪声基矩阵TW也可以通过相同的方法获得。训练得到的噪声基矩阵中所有列矢量的线性叠加可建模该类噪声所有的频谱,对于快速变化的非平稳噪声,噪声基矩阵仍然能很好地建模其频谱矢量。因此,只要能够训练出匹配的噪声基矩阵,噪声是否平稳已经变的不重要了。

保持获得的语音和噪声基矩阵恒定不变,并且通过水平连接语音和噪声基矩阵来获得能够建模带噪语音幅度谱的基矩阵如下:

(6)

式中,TY即为增强阶段的基矩阵,TY的所有列矢量的线性叠加期望可以近似任意一帧的带噪语音幅度谱。

在增强阶段,每一帧带噪语音的幅度谱都可以通过短时傅里叶变换获得,比如,矢量yτ表示带噪语音的第τ帧的幅度谱,通过利用非负矩阵分解算法,yτ可以在矩阵TY中分解如下:

(7)

式中,TY保持固定不变,而编码矢量cy;τ不断根据式(2)迭代更新来获得最优的近似。编码矢量uτoτ分别对应于语音基矩阵和噪声基矩阵,其可以结合语音和噪声基矩阵来估计带噪语音幅度中的语音和噪声分量。估计的语音和噪声分量可以分别表示为TXuτTWoτ

语音增强的任务通常利用估计的语音和噪声分量构建增强滤波器来完成,最常见的就是维纳滤波器。而本文采用文献[1]推导出来的线性最小均方误差(Linear MMSE, LMMSE)滤波器来实现语音增强,具体的细节详见下一部分。

3 基于噪声基矩阵在线更新的语音增强算法

所提算法的原理框图如图1所示,算法包括训练阶段和增强阶段。

图1 所提方法的原理框图
Fig.1 Block diagram of the proposed method

在训练阶段,该方法通过分解训练语音的幅度谱矩阵来获得语音的基矩阵。在增强阶段,该方法首先通过短时傅里叶变换得到每帧带噪语音的幅度谱和相位,比如用yτ表示带噪语音的第τ帧的幅度谱。然后通过一个无语音帧的判决模块来判断当前帧是否有语音活动,如果带噪语音的第τ帧被判决为无语音帧,那么矢量yτ就代表一个纯噪声的幅度谱矢量。随后,利用若干帧最近过去的被判决为无语音帧的带噪语音幅度谱来在线更新噪声基矩阵TW;τ(这个噪声基矩阵是基于帧的),并把语音基矩阵和在线更新的噪声基矩阵水平连接得到增强阶段的基矩阵TY;τ。最后,把带噪语音的幅度谱在固定的TY;τ中进行分解来获得相应的语音和噪声分量TXuτTW;τoτ,进而通过构建滤波器来实现语音增强。

3.1 无语音帧的判决

本小节给出了带噪语音的每一帧是否存在语音的判决原理,为了更好地表达,对于每帧带噪语音,我们假设存在两个状态,即语音存在状态和语音不存在状态,语音不存在状态即对应于带噪语音的无语音帧。注意,这里的语音存在和不存在是基于帧的,具体地可以表示为:

H0:yτ=wτ 无语音帧
H1:yτwτ 语音活动帧

(8)

式中,H0H1分别代表在第τ帧语音不存在和存在,yτ为带噪语音在第τ帧的幅度谱矢量,wτ为带噪语音中噪声分量的幅度谱矢量。

语音的存在与否是通过联合使用全局语音存在概率[15]以及带噪语音和估计的噪声频谱[19]之间的归一化互相关系数[16]来判断的。下面首先对其进行介绍。

在文献[15]中,根据后验信噪比平滑的时频区域的大小,该方法可以获得局部语音存在概率和全局语音存在概率两种,本文只用后者。由于是后验信噪比在较大的时频区域内平滑时得到的,因此其特性是某频点的全局语音存在概率和相邻频点的全局语音存在概率高度相关,所以其可以检测出语音存在的大体区域。而某频点的局部语音存在概率和相邻频点的局部语音存在概率相关性较小,所以它不利于判断语音活动的区域。

文献[16]中的带噪语音频谱和估计的噪声频谱之间的NCCC的表达式如下:

(9)

式中,Y(k,τ)代表带噪语音的短时傅里叶变换的系数,W(k,τ)为噪声的短时傅里叶变换系数。

从文献[16]中可以知道,在静音帧,ρτ的值较大,而在有语音存在的时候,其值减小到一个小的值。由于ρτ的这个性质,其可以被用作判决无语音帧的条件。

得到全局语音存在概率和归一化互相关系数后,就可以使用它们进行无语音帧的判决了。首先计算每一帧的全局语音存在概率的平均值:

(10)

式中,K为每一帧的傅里叶变换的长度,στ为第τ帧的平均全局语音存在概率。

带噪语音的无语音帧的判决是通过στρτ与两个阈值参数联合比较得到的:

如果 στ<0.05且ρτ>0.83, P(H1|yτ)=0

否则, P(H1|yτ)=1

(11)

式中,P(H1|yτ)=0代表该帧的语音存在概率等于零,即是无语音帧,P(H1|yτ)=1代表语音活动帧。

式(11)中的阈值参数是经过反复实验凭经验确定的,为了更好地适应低信噪比环境,στ的阈值设置的较小而ρτ的阈值设置的较大。只有全局语音存在概率足够小而且归一化互相关系数足够大时,才会认定该帧无语音存在。通过进行联合判决,也比只使用语音存在概率提高了准确性。

下面给出对一段带噪语音进行判决的实验结果,为了比较直观地进行观察,还给出了原始的纯净语音波形。图2给出了在白噪声5 dB信噪比下的一段带噪语音的判决结果,从图中可以看出,该判决方法可以大体估计出带噪语音的无语音区域。

图2 干净语音波形和语音存在概率(SPP)估计
Fig.2 Clean speech waveform and SPP estimation

此外,VAD算法也是一种很好的判断语音活动区域的方法,但该方法在低信噪比下的性能堪忧。当然,任何可以有效地判断语音存在与否的算法都可以应用到本文所提的方法中,利用带噪语音的无语音区域更新噪声基矩阵是一个解决噪声自适应的方向。

3.2 噪声基矩阵的在线更新

为了实现噪声基矩阵的在线更新,本小节利用一个固定长度的滑动窗口来包含若干最近过去的带噪语音的无语音帧的幅度谱,并用这个滑动窗口包含的这些幅度谱矢量更新噪声基矩阵。即在增强阶段,本文首先通过短时傅里叶变换获得每帧带噪语音的幅度谱,然后对于每帧带噪语音,利用上一小节介绍的方法来判决该帧是否为无语音帧,最后把离该帧最近的包含在滑动窗口之内的若干带噪语音无语音帧的幅度谱构成一个矩阵,进而用其更新该帧的噪声基矩阵。比如对于第τ帧,带噪语音幅度谱矢量表示为yτ,那么用于更新这一帧的噪声基矩阵的幅度谱矩阵为:

(12)

式中,为滑动窗口包含的无语音帧的幅度谱矩阵,用于更新噪声基矩阵,为离当前帧(第τ帧)最近的无语音帧的幅度谱矢量,i为无语音帧的帧索引,M为滑动窗口的大小。

注意,若第τ帧为无语音帧,则其中,用一段纯净的白噪声初始化。噪声基矩阵的更新方法和语音基矩阵的训练完全一致,只不过用于分解的矩阵Xtrain被替换为而且是随着时间帧不断变化的,噪声基矩阵的更新过程可以表示为:

(13)

式中,TW;τ即为得到的噪声基矩阵。

3.3 增强滤波器的构建

对于每帧带噪语音,比如第τ帧带噪语音,我们首先水平连接得到的语音基矩阵和噪声基矩阵来获得增强阶段的基矩阵,即:

(14)

式中,TY;τ为用于分解第τ帧带噪语音幅度谱的基矩阵。

然后,通过利用非负矩阵分解算法,yτ可以在固定的矩阵TY;τ中分解如下:

(15)

式中,编码矢量cy;τ不断根据式(2)迭代更新来获得最优的近似。而编码矢量uτoτ可以结合语音和噪声基矩阵来估计带噪语音幅度中的语音和噪声分量。其中,估计的语音和噪声分量可以分别表示为TXuτTW;τoτ

最后利用估计的语音和噪声分量构建线性最小均方误差滤波器[1]来获得增强语音,线性最小均方误差滤波器被表示为:

(16)

式中,c的值为表示平滑的信噪比。

下面我们求解平滑的信噪比,由于噪声具有一定程度的平稳性,我们可以通过在时间上平滑获得的噪声分量来估计

(17)

式中, β为一个平滑参数。

而平滑的信噪比ξk,τ可以通过一个判决-引导(Decision-directed)估计器求得:

(18)

式中,γ是一个平滑常数,ξmin是平滑的信噪比的下限,是前一帧增强语音的幅度谱。

4 性能评估

本实验所用的语音和噪声信号分别来自TIMIT数据库和Noisex-92数据库。所有的信号都被重新采样至8 kHz。在短时傅里叶变换中,语音发声被一个窗长为32 ms的汉明窗分帧,即每帧的长度为256个采样点,并且帧移为16 ms,即相邻帧间的重叠为50%。本实验选取五种背景噪声,分别是白噪声(White),工厂噪声(Factory),街道噪声(Street),多人说话噪声(Babble)和歼击机噪声(F16),其中Street 噪声,F16噪声和Babble噪声为非平稳噪声,它们的功率频谱随时间快速变化。在训练阶段,本实验从TIMIT数据库的训练集中随机选取语音信号并组成一段持续时间大约为一个小时的纯净语音,并用这段语音来训练语音的基矩阵,其中语音基矩阵的维数为20,训练时的迭代次数为1000。噪声基矩阵则是在线更新的,更新时选用的滑动窗口的长度为M=20,噪声基矩阵的维数为20,在线更新噪声基矩阵的迭代次数为100。在增强阶段,对带噪语音频谱分解时的迭代次数为15。

对于所有的方法,包括参考方法,用于产生语音基矩阵的训练数据相同。本实验从TIMIT数据库的测试集中随机选择200段来进行性能评估。对于大多数应用场景,带噪语音的信噪比不会低于-5 dB,目前针对的应用对象也是信噪比在-5~10 dB的情况。所以对于每种噪声类型,被污染的这200段语音的信噪比为-5 dB,0 dB,5 dB和10 dB。本文所提方法用PRO表示,此外,具有代表性的基于半监督非负矩阵分解的语音分离方法[10]和有监督的基于LMMSE滤波器的方法[1]被用作参考方法来和所提方法进行比较。文献[10]的方法被称为Ref.A,文献[1]的方法被称为Ref.B,这两个参考方法中的参数都通过大量实验调整为最优。和有监督的方法相比更能突出所提方法在线更新出的噪声基矩阵的有效性。

图3给出了带噪语音和各种方法的增强语音的语谱图比较示例,所展示的语谱图是在白噪声5 dB的条件下得到的。从图3中可以看到,Ref.A虽然大幅度地抑制了背景噪声,但是其增强的语音的低频部分仍然存在部分噪声,而且该方法衰减了许多弱语音成分,造成了语音的谐波结构的破坏和高频信息的丢失。相比之下,Ref.B对语音的频谱谐波结构破坏不多,而且其增强语音的部分高频信息也没有丢失,但是其对背景噪声的抑制却不如Ref.A,这可以从图3(b)和图3(c)中的椭圆形以及矩形标记中看到。而从图3(d)中可以看到,相比Ref.A和Ref.B,所提方法不仅能够大幅度地抑制背景噪声,包括在低频残留的噪声,而且其增强语音的频谱结构更加清晰,高频信息丢失较少,频谱比较完整,这就导致了语音质量和可懂度的大幅度提升,也导致了更加舒适的听觉体验。

图3 语谱图对比
Fig.3 Spectrogram comparison

本实验联合使用分段信噪比提升(Segment signal-to-noise ratio improvement, SSNRI)[20]、语音感知质量(Perceptual evaluation of speech quality, PESQ)[21]以及扩展的短时客观可懂度(Extended short-time objective intelligibility, ESTOI)[22]对各种算法的性能进行评估,结果为200段语音的平均值。

表1展示了使用各种方法在各种噪声的各种信噪比条件下的增强语音的分段信噪比提升的测试结果。从表中可以看到,除了在Babble噪声的-5 dB,0 dB和5 dB条件下,所提方法的性能总是高于Ref.B,而Ref.B的性能高于Ref.A,其中Ref.B表示的是有监督的方法,这就证明了我们所提的在线更新噪声基矩阵的方法能够自适应环境噪声,且在线学习到的噪声基矩阵在大多数条件下比匹配训练集下训练得到的噪声基矩阵的性能还要优越。我们知道Ref.A可以大幅度衰减噪声,但是其带来的语音失真导致了较低的性能,造成这一现象的具体原因在于Ref.A从半监督非负矩阵分解过程中获得的噪声基矩阵通常包含少量能够表示语音频谱的基矢量,这就导致了语音和噪声源的混淆。

表1 SSNRI的测试结果
Tab.1 Test results of the SSNRI

噪声类型方法-5 dB0 dB5 dB10 dBBabbleNoisy----Ref.A2.992.862.471.45Ref.B7.376.725.754.09PRO5.555.284.974.53WhiteNoisy----Ref.A8.257.726.724.96Ref.B9.618.717.546.29PRO14.9412.4410.228.15F16Noisy----Ref.A5.775.565.003.68Ref.B9.909.248.086.79PRO13.6911.719.938.32FactoryNoisy----Ref.A7.357.046.204.43Ref.B10.7210.199.237.58PRO13.5212.0910.829.52StreetNoisy----Ref.A9.738.467.346.46Ref.B12.0510.098.397.02PRO13.6311.239.107.27平均值Noisy----Ref.A6.826.335.554.20Ref.B9.938.997.806.36PRO12.2610.559.007.56

表2给出了PESQ的测试结果,从表中可以看到,在各种噪声的各种信噪比条件下,所提方法的性能总是优于Ref.B,而相比之下,Ref.A的性能却不太稳定。在大多数条件下,Ref.A的性能比Ref.B和所提方法都要差,甚至在Babble和Factory噪声的10 dB信噪比以及Street噪声的5 dB和10 dB信噪比条件下,其性能还不如带噪语音。而在少数条件下,Ref.A的性能却不是最差的,甚至在White噪声的-5 dB和0 dB条件下是最好的。从四种噪声的平均值来看,所提方法的性能总是高于Ref.B,而Ref.B的性能高于Ref.A,除了在-5 dB条件下,Ref.A的性能稍好于Ref.B。Ref.A的性能波动的原因在于其噪声基矩阵的学习过程不稳定。

表2 PESQ的测试结果
Tab.2 Test results of the PESQ

噪声类型方法-5 dB0 dB5 dB10 dBBabbleNoisy1.5541.7942.1012.420Ref.A1.7511.9362.1502.359Ref.B1.5911.9242.2492.560PRO1.6311.9622.3152.673WhiteNoisy1.1731.3761.6642.001Ref.A1.9202.1972.4202.572Ref.B1.7032.0362.3362.621PRO1.8402.1592.4472.726F16Noisy1.4141.6762.0012.325Ref.A1.9042.1112.3242.535Ref.B1.9162.2262.5482.864PRO1.9432.2732.6032.927FactoryNoisy1.6041.9342.2642.599Ref.A1.8912.1322.3502.552Ref.B1.9872.3422.6872.995PRO2.0392.4012.7453.078StreetNoisy1.9902.3202.6502.973Ref.A2.2702.4622.6312.785Ref.B2.4052.7343.0423.328PRO2.5222.8263.1163.378平均值Noisy1.5471.8202.1362.463Ref.A1.9482.1682.3752.560Ref.B1.9202.2522.5722.874PRO1.9952.3242.6452.956

表3给出了ESTOI的测试结果,从表中可以看到,在各种噪声的各种信噪比下,所提方法和Ref.B的性能总是优于Ref.A,这是因为Ref.A虽然大幅度衰减了噪声,但是其引起的语音失真导致了可懂度的降低。而通过比较所提方法和Ref.B,我们可以看到,除了在White噪声的-5 dB和0 dB信噪比以及F16和Street噪声的-5 dB信噪比条件下,所提方法的性能略低于Ref.B,在其他条件下,所提方法的性能都是最好的。从平均值来看,除了在-5 dB信噪比条件下所提方法的性能略低于Ref.B,在其他信噪比下所提方法的性能都是最优的。所提方法的性能在-5 dB信噪比条件下略低于Ref.B的原因是所提方法判决带噪语音无语音帧时所用的语音存在概率在低信噪比条件下估计误差会变高。但是这仍能证明所提方法在线学习到的噪声基矩阵在大多数条件下比匹配训练集下训练得到的噪声基矩阵的性能还要优越。

表3 ESTOI的测试结果
Tab.3 Test results of the ESTOI

噪声类型方法-5 dB0 dB5 dB10 dBBabbleNoisy0.28080.41320.55160.6831Ref.A0.27860.40580.53040.6365Ref.B0.29110.42740.56200.6730PRO0.29850.44480.59390.7272WhiteNoisy0.22800.36480.52630.6900Ref.A0.27110.41170.55210.6618Ref.B0.28660.43630.58940.7285PRO0.27310.42030.59050.7363F16Noisy0.27610.41850.56890.7114Ref.A0.35030.49100.61590.7055Ref.B0.37830.53130.66900.7759PRO0.37120.53400.68370.8008FactoryNoisy0.38480.51870.64770.7651Ref.A0.39870.52150.62880.7089Ref.B0.43730.57070.68460.7676PRO0.43830.58380.71220.8149StreetNoisy0.49660.60650.70170.7826Ref.A0.50050.59600.66670.7122Ref.B0.55740.66110.74290.7980PRO0.54590.66280.75700.8260平均值Noisy0.33320.46430.59920.7264Ref.A0.35990.48520.59880.6850Ref.B0.39020.52530.64960.7486PRO0.38540.52910.66740.7810

5 结论

本文提出了一种新颖的半监督的非负矩阵分解语音增强算法,该算法提前用纯净语音训练集训练得到语音基矩阵,而噪声基矩阵则是在增强阶段利用带噪语音的无语音区域在线更新的。由于用于更新噪声基矩阵的这些无语音帧是距离当前帧最近的而且是过去的,所以就算对于高度非平稳的噪声,学习的噪声基矩阵也能很好的适应,且噪声基矩阵的更新不存在延时。实验结果表明,所提方法在线学习到的噪声基矩阵在大多数条件下比匹配训练集下训练得到的噪声基矩阵的性能还要优越。

参考文献

[1] Mohammadiha N, Gerkmann T, Leijon A. A new linear MMSE filter for single channel speech enhancement based on nonnegative matrix factorization[C]∥2011 IEEE Workshop on Applications of Signal Processing to Audio and Acoustics (WASPAA), New Paltz, NY, USA, 16-19 Oct. 2011: 45- 48.

[2] Chung H, Plourde E, Champagne B. Basis compensation in non-negative matrix factorization model for speech enhancement[C]∥2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Shanghai, China, 20-25 March 2016: 2249-2253.

[3] Vu T, Bigot B, Chng E. Combining non-negative matrix factorization and deep neural networks for speech enhancement and automatic speech recognition[C]∥2016 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Shanghai, China, 20-25 March 2016: 499-503.

[4] Fagot D, Wendt H, Févotte C. Nonnegative matrix factorization with transform learning[C]∥2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Calgary, AB, Canada, 15-20 April 2018: 2431-2435.

[5] Kavalekalam M, Nielsen Shi J, et al. Online parametric NMF for speech enhancement[C]∥2018 26th European Signal Processing Conference (EUSIPCO), Rome, Italy, 3-7 Sept. 2018: 2320-2324.

[6] Bando Y, Mimura M, Itoyama K, et al. Statistical speech enhancement based on probabilistic integration of variational autoencoder and non-negative matrix factorization[C]∥2018 IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Calgary, AB, Canada, 15-20 April 2018: 716-720.

[7] Mohammadiha N, Smaragdis P, Leijon A. Supervised and unsupervised speech enhancement using nonnegative matrix factorization[J]. IEEE Transactions on Audio, Speech, and Language Processing, Oct. 2013, 21(10): 2140-2151.

[8] Schmidt M, Larsen J. Reduction of non-stationary noise using a non-negative latent variable decomposition[C]∥IEEE Workshop on Machine Learning for Signal Processing (MLSP), Cancun, Mexico, 16-19 Oct. 2008: 486- 491.

[9] Weninger F, Feliu J, Schuller B. Supervised and semi-supervised suppression of background music in monaural speech recordings[C]∥IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP), Kyoto, Japan, 25-30 March 2012: 61- 64.

[10] Joder C, Weninger F, Eyben F, et al. Real-time speech separation by semi-supervised nonnegative matrix factorization[C]∥International Conference on Latent Variable Analysis and Signal Separation (LVA ICA), Tel Aviv, Israel, 2012: 322-329.

[11] Kim M, Smaragdis P. Mixtures of local dictionaries for unsupervised speech enhancement[J]. IEEE Signal Processing Letters, March 2015, 22(3): 293-297.

[12] Kwon K, Shin J, Kim J. NMF-based speech enhancement using bases update[J]. IEEE Signal Processing Letters, April 2015, 22(4): 450- 454.

[13] Jeon K, Kim H. Local sparsity based online dictionary learning for environment-adaptive speech enhancement with nonnegative matrix factorization[C]∥INTERSPEECH 2016, San Francisco, USA, 8-12 September 2016: 2861-2865.

[14] Lee S, Han D, Ko H. Single-channel speech enhancement method using reconstructive NMF with spectrotemporal speech presence probabilities[J]. Applied Acoustics, 2017, 117: 257-262.

[15] Gerkmann T, Breithaupt, Martin C. Improved a posteriori speech presence probability estimation based on a likelihood ratio with fixed priors[J]. IEEE Transactions on Audio, Speech, and Language Processing, July 2008, 16(5): 910-919.

[16] Bao F, Dou H, Jia M, et al. Speech enhancement based on a few shapes of speech spectrum[C]∥IEEE China Summit & International Conference on Signal and Information Processing (ChinaSIP), Xi’an, China, 9-13 July 2014: 90-94.

[17] Lee D, Seung H. Learning the parts of objects by non-negative matrix factorization[J]. Nature, October 1999, 401(21): 788-791.

[18] Lee D, Seung H. Algorithms for non-negative matrix factorization[J]. Advances in Neural Information Processing Systems, 2001, 13(6): 556-562.

[19] Cohen I, Berdugo B. Noise estimation by minima controlled recursive averaging for robust speech enhancement[J]. IEEE Signal Processing Letters, January 2002, 9(1): 12-15.

[20] Quackenbush S, Barnwell T, Clements M. Objective measures of speech quality. Englewood Cliffs, NJ: Prentice Hall, 1988.

[21] Perceptual evaluation of speech quality (PESQ), an objective method for end-to-end speech quality assessment of narrow-band telephone networks and speech codecs. ITU-T Recommendation, P.862, February 2001.

[22] Jensen J, Taal C. An algorithm for predicting the intelligibility of speech masked by modulated noise maskers[J]. IEEE/ACM Transactions on Audio, Speech, and Language Processing, 2016, 24(11): 2009-2022.

Online Update of Noise Basis Matrix for the NMF-based Speech Enhancement

Bai Zhigang Bao Changchun

(Speech and Audio Signal Processing Lab, Faculty of Information Technology Beijing University of Technology, Beijing 100124, China)

Abstract: In nonnegative matrix factorization (NMF)-based speech enhancement, the matched noise basis matrix needs to be trained, which is difficult to be guaranteed in practice. In this paper, an NMF-based speech enhancement method is proposed in which the noise basis matrix is updated online. First, the non-speech regions of noisy signal are determined by utilizing a decision module of non-speech frame. Then, a fixed-length sliding window is used to cover several recent past frames of noisy speech determined as non-speech, and the magnitude spectrums of these non-speech frames are used to update the noise basis matrix online. After that, the updated noise basis matrix and the pre-trained speech basis matrix are used to achieve speech enhancement. This method can obtain the matched noise basis matrix online and effectively solve the problem of the mismatch of the noise basis matrix. The test results demonstrate that the noise basis matrix trained online by the proposed method performs better than that trained from the matched dataset in most conditions.

Key words speech enhancement; nonnegative matrix factorization; noise adaptation; non-speech frames

中图分类号:TN912.35

文献标识码:A

DOI: 10.16798/j.issn.1003- 0530.2020.06.004

引用格式: 白志刚, 鲍长春. 在线更新噪声基矩阵的非负矩阵分解语音增强方法[J]. 信号处理, 2020, 36(6): 831-838. DOI: 10.16798/j.issn.1003- 0530.2020.06.004.

Reference format: Bai Zhigang, Bao Changchun. Online Update of Noise Basis Matrix for the NMF-based Speech Enhancement[J]. Journal of Signal Processing, 2020, 36(6): 831-838. DOI: 10.16798/j.issn.1003- 0530.2020.06.004.

文章编号:1003-0530(2020)06-0831-08

收稿日期:2019-11-06;修回日期:2019-12-31

基金项目:国家自然科学基金资助项目(61831019,61471014)

作者简介

白志刚 男, 1993年生,河北保定人。 2019年获北京工业大学硕士学位, 主要研究方向为语音增强。

E-mail: bzg@emails.bjut.edu.cn

鲍长春 男, 1965年生,内蒙古赤峰人。北京工业大学教授, 博士生导师。主要研究方向为语音与音频信号处理。

E-mail: chchbao@bjut.edu.cn