An Experimental Study on Speech Enhancement Based on Deep Neural Networks
Yong Xu, Jun Du, Li-Rong Dai, and Chin-Hui Lee, Fellow, IEEE

机翻 不准确 请见谅

摘要

本文提出了一种基于回归的语音增强框架,该框架使用具有多层深度架构的深度神经网络(DNN)。在DNN学习过程中,大的训练集确保了强大的建模能力,以估计从观察到的噪声语音到期望的干净信号的复杂非线性映射。声学背景被发现可以改善语音的连续性,从而成功地从背景噪声中分离出来,而不存在常规语音增强算法中常见的令人讨厌的音乐伪影。在多条件训练下进行了一系列先导实验,使用超过100小时的模拟语音数据,即使在不匹配的测试条件下也具有良好的泛化能力。与对数最小均方误差方法相比,所提出的基于DNN的算法在各种目标质量度量方面往往取得显著改进。

简介

几十年来,在语音通信中,增强单麦克风记录的噪声语音的问题吸引了大量研究工作[1]。文献[1]-[3]在各种假设下提出了许多不同的方法。这些技术中的大多数通常不能很好地估计干净的语音,并导致高水平的音乐噪声伪影( musical noise artifacts)[4]。

早期使用浅层神经网络(SNN)作为非线性滤波器的早期工作[5]–[7]]。然而,具有较少训练数据和相对较小网络规模的SNN模型的性能通常不令人满意。此外,从随机初始化开始的基于梯度的优化通常会陷入“明显的局部极小值或平台”[8],尤其是当考虑到深层网络结构时更甚。Hinton等人[9]最近指出,使用贪婪的逐层无监督学习程序重新引起了DNN的兴趣,并成功地应用于自动语音识别(ASR)和一些相关任务,优于最先进的系统(例如,[10],[11])。

其他数据驱动方法试图对时频 (T-F) 单元进行二元分类决策,例如估计单声道语音分离的理想二元掩码 [13],但是 T-F 单元的声学上下文信息在一个分类框架。在 [14] 中,DNN 用于估计 Mel 频域中的平滑理想比率掩码 (IRM),以实现稳健的 ASR。

在这项研究中,我们建议使用包含噪声语音中不同关键因素(包括说话者、噪声类型和信噪比)的多条件训练数据,使用基于非线性 DNN 的回归模型来学习从嘈杂语音到干净语音的复杂映射函数比率(SNR)。据我们所知,这是使用回归 DNN 模型进行具有大量训练数据的语音增强的领先研究之一。

这封信的其余部分组织如下。在第二节中,我们提出了基于 DNN 的语音增强系统。第三部分提供了一组评估实验,以评估各种 DNN 配置中的系统性能。最后,我们在第四节总结了我们的发现。

用于语音增强的深度神经网络

所提出的语音增强系统的一个块如图 1 所示。在训练阶段,回归 DNN 模型从立体声数据的集合中训练出来,由对数功率谱特征表示的噪声和干净语音对组成。在增强阶段,训练好的 DNN 模型被输入噪声语音的特征,以生成增强的对数功率谱特征。额外的相位信息是从原始的嘈杂语音中计算出来的。假设是相位信息对人类听觉感知并不重要,因此只需要估计语音的幅度或功率[7]。最后采用重叠相加法合成估计干净语音的波形。特征提取模块和波形重建模块的详细描述可以在[12]中找到。

神经网络语音识别 神经网络语音增强_人工智能

A. 使用噪声数据预训练 DNN

DNN 训练从一个随机初始化的网络开始,通常会发现局部最小值很差 [9],尤其是当隐藏层的数量增加时。因此,如在 [17] 中一样,我们首先尝试通过堆叠多个受限玻尔兹曼机 (RBM) [8] 来学习噪声对数谱的深度生成模型。图 2 的左侧部分说明了用噪声数据馈送的 RBM 预训练。第一个是 Gaussian-Bernoulli RBM,它有一个可见的线性变量层,连接到一个隐藏层。然后可以在高斯-伯努利 RBM 之后堆叠一堆 Bernoulli-Bernoulli RBM,可以以无监督的贪婪方式逐层训练它们[9]。在此期间,使用称为对比散度 (CD) 的客观标准来更新每个 RBM [8] 的参数。

神经网络语音识别 神经网络语音增强_人工智能_02

B. 基于 MMSE 的微调

使用目标函数和增强对数功率谱特征之间的最小均方误差 (MMSE) 对象函数的反向传播算法来训练 DNN。图 2 的右侧部分描述了微调的过程。对数域中的 MMSE 准则更符合人类听觉系统 [6]。随机梯度下降算法在具有多个时期的小批量中执行,以提高学习收敛性,如下所示,
神经网络语音识别 神经网络语音增强_语音识别_03

E为均方误差,神经网络语音识别 神经网络语音增强_语音识别_04在神经网络第l层参数神经网络语音识别 神经网络语音增强_神经网络语音识别_05下 第n 帧(共计N帧)数据 ,第 d个频点(共计 D个频点) 上 的估计 幅度值。神经网络语音识别 神经网络语音增强_dnn_06为实际输入的干净语音提取的 幅度值

参数更新公式:
神经网络语音识别 神经网络语音增强_语音识别_07

在模型参数的推导过程中,我们几乎没有采用任何假设,因为我们相信 DNN 可用于拟合所需的非线性映射函数。此外,在我们提出的框架中,不需要在传统的基于模型的语音增强方法 [12] 中使用的不同频率区间之间的独立性假设。 DNN 能够通过将它们连接成用于 DNN 学习的长输入特征向量,沿时间轴(使用多帧扩展)和沿频率轴(使用具有全频率 bin 的对数谱特征)捕获上下文信息。

实验与结果分析

以下所有实验均在 TIMIT 数据库 [19] 上进行。如在 [12] 中,从 Aurora2 数据库 [18] 中提取的加性高斯白噪声 (AWGN) 和其他三种类型的噪声记录,即 Babble、Restaurant 和 Street,被用作我们的噪声信号。来自 TIMIT 数据库 [19] 的训练集的所有 4620 条话语都添加了上述四种类型的噪声和六个级别的 SNR,分别为 20 dB、15 dB、10 dB、5 dB、0 d B、a n d - dB ,构建多条件立体训练集。这导致收集了大约 100 小时的嘈杂训练数据(包括一个干净的训练数据案例),用于训练基于 DNN 的语音增强模型。另外 200 个从 TIMIT 测试集中随机选择的话语被用于构建每个噪声类型和 SNR 级别组合的测试集。另外两种噪声类型,即汽车和展览,用于失配评估。为了评估基于 DNN 的语音增强的性能,优化修改对数谱振幅 (OMLSA) [2]、[15]、[16] 的改进版本,表示为 log-MMSE (L-MMSE) 方法,是用于性能比较。它们的最佳频谱增益函数可以使对数频谱的均方误差最小化,它是作为与语音存在不确定性相关的假设增益的加权几何平均值获得的 [15]。

在信号分析方面,语音波形被下采样到 8KHz,对应的帧长设置为 256 个样本(或 32 毫秒),帧偏移为 128 个样本。短时傅里叶分析用于计算每个重叠窗口帧的 DFT。然后使用 129 维对数功率谱特征 [12] 来训练 DNN。两个客观的质量测量,分段 SNR(以 dB 为单位的 SegSNR)和对数频谱失真(以 dB 为单位的 LSD),用于评估增强语音的质量,如 [12] 中所示。此外,语音质量感知评估(PESQ)与主观评分[20]具有高度相关性,也用于比较系统性能。在下面的实验中,由于篇幅限制,我们只给出了这三个客观测量的选择性结果。还将进行主观听力测试以进行比较。

每层RBM预训练的epoch数为20。预训练的学习率为0.0005。至于微调,前 10 个 epoch 的学习率设置为 0.1,然后在每个 epoch 之后降低 10%。 epoch 总数为 50。小批量大小设置为 . DNN 的输入特征被归一化为零均值和单位方差。

神经网络语音识别 神经网络语音增强_人工智能_08


最后,清洁条件对于语音增强任务非常特殊。而且对于几乎所有的语音增强算法,包括 L-MMSE,它们都会对干净的信号造成损害。为了将所有信息保留在干净的话语中,在增强之前进行了关于测试话语是否干净的背景检测操作。基于框架话语的能量和过零率[22],它很容易实现。通过这个预处理步骤,可以获得更好的整体结果。由于经过这种预处理后,干净话语的信号保持不变,因此下面省略了无噪声条件的结果。

A. 声学背景信息的评估

图 3 显示了使用具有多帧扩展的输入特征在四种噪声类型的不同 SNR 下测试集上的平均 LSD 结果,范围从 1 到 11 帧,以两帧为增量。 DNN 的其他配置包括隐藏层、2048 个隐藏单元和 100 小时的训练数据。很明显,DNN 输入的帧越长(不超过 11 帧),性能就越好。此外,更多的声学上下文信息可以平滑增强的语音以获得更好的听感。然而,太长的帧也使 DNN 结构更复杂,难以理解

B.对训练集规模的评估

图4示出了在四种噪声类型的不同SNR下测试集上不同训练集大小的平均SegSNR结果。DNN的其他配置是隐藏层、2048个隐藏单元和11帧扩展。如果数据大小仅为一小时,则会获得较差的结果,这几乎与[7]中使用的规模相同,表明足够的训练样本对于获得更广义的模型非常重要。当数据量越来越大时,性能得到了极大的提高。即使达到100小时,性能也不会饱和。

神经网络语音识别 神经网络语音增强_神经网络语音识别_09

C、 总体评价

对于噪声测试的匹配评估,表I中列出了噪声、L-MMSE、SNN和DNN在四种噪声类型的不同SNR下的测试集上具有不同数量的隐藏层的平均PESQ结果。DNN的配置为2或3个隐藏层(表示为DNNL)、2048个隐藏单元和11个输入特征扩展帧。至于SNN,其配置为隐藏层、6144个隐藏层单元和11个帧输入。并且RBM预训练不用于初始化SNN的权重。DNN和SNN都使用100小时的训练数据进行训练。结果表明,每种基于DNN的方法都明显优于L-MMSE方法,表明DNN能够更准确地估计受噪声干扰的目标语音。具有更多隐藏层(不超过3个隐藏层)的DNN被证明更有效,基于DNN3的方法实现了最佳性能。与具有与DNN3相同数量参数的SNN相比,客观度量的改进表明,更深的体系结构具有更强的回归能力。

表II显示了汽车和展览噪声下失配环境中不同SNR下噪声、L-MMSE、SNN和测试集上的PESQ结果,均来自Aurora2数据库[18]。汽车噪音比展览噪音更稳定。比较基于R的方法和L-MMSE方法的结果,前者在两种看不见的噪声类型的所有SNR上都优于后者,尤其是在低SNR和不稳定的显示噪声下。这些结果表明,所提出的基于DNN的方法在低SNR和不稳定噪声条件下具有更强大的建模能力。同时,在两种噪声类型的不同SNR下,基于DNN的方法优于基于SNN的方法。还进行了另外两次失配测试,即:(i)在7dB的SNR,这在训练集中是看不到的;(ii)200个随机选择的普通话语音被用作添加了10dB的Babble噪声的干净语音,以评估跨语言性能。与基于L-MMSE方法相比,(i)的PESQ从2.48提高到2.95,而(ii)的PESQ则从2.20增加到2.31。显然,所提出的基于DNN的方法在所有不匹配设置中都优于基于L-MMSE方法和基于SNN的方法。大容量多条件训练数据确保了对不匹配环境的良好泛化,这可以通过在训练中使用更多的噪声类型来进一步改进。

神经网络语音识别 神经网络语音增强_dnn_10


在匹配(AGWN和Babble)和不匹配(Car)环境下,对10名受试者(5名男性和5名女性)进行了主观偏好听力测试,比较了DNN方法和L-MMSE方法。将来自每个环境中每个SNR的测试集的36对基于DNN和L-MMSE增强语音语音分配给每个收听者。表三给出了听众给出的偏好结果。即使在不匹配的噪声条件下,平均76.35%的受试者偏好基于DNN的增强语音,而不是基于L-MMSE的增强语音。

由于噪声或SNR估计误差,音乐噪声出现在几乎所有的传统语音增强方法中,导致处理频谱中出现伪峰值[21]。图5显示了发声示例的频谱图。在左上图所示的DNN增强频谱图中未发现音乐噪声。此外,DNN模型可以恢复被噪声掩埋的高频频谱。这在L-MMSE方法中无法观察到(如右上图所示)。与L-MMSE增强型相比,DNN增强型频谱图与原始干净频谱图(如左下图所示)更接近。更多结果和增强示例可以在http://home.ustc.edu.cn/~xuyong62/demo/SE_DNN.html上找到。

总结

本文提出了一种基于DNN的语音增强框架。引入RBM预训练方案来初始化DNN。大型训练集对于学习DNN的丰富结构至关重要。使用更多的声学上下文信息也可以提高性能,并使增强的语音更少不连续。多条件训练可以处理新说话人的语音增强、看不见的噪声类型、不同噪声条件下的不同SNR水平,甚至跨语言泛化。与基于SNN和L-MMSE的方法相比,在TIMIT语料库上实现了显著的改进。平均而言,由于增强语音中没有音乐噪声,获得了76.35%的主观偏好。这项工作代表了我们首次将DNN作为回归模型应用于语音增强任务的研究。未来,我们将改进当前基于DNN的语音增强系统,以在真实环境中执行噪声自适应,并采用与听觉感知相关的目标函数。