基于语音增强方法的语音端点检测
包武杰 黄浩
摘 要: 语音端点检测的检测结果好坏对后续的语音处理起着决定性的作用。为了解决语音端点在低信噪比情况下检测率不高的问题,该文提出了基于深度置信网络去噪的语音增强方法与传统的端点检测方法相结合的方法。该方法首先由大量的语音数据训练深度置信网络模型,使其能够很好地映射带噪与无噪语音之间的非线性关系,进而使其成为一个良好的降噪滤波器,再对比带噪与去噪后语音对端点检测准确率的影响,以及不同信噪比的端点检测的正确率。从该实验结果可以得到,该方法在平稳噪声和非平稳噪声的低信噪比情况下都可以提高语音端点检测的准确率。
关键词: 语音端点检测; 深层置信网络; 信噪比; 语音处理
中图分类号: TN911.23?34; TP391 文献标识码: A 文章编号: 1004?373X(2017)22?0001?04
Abstract: The test results of voice activity detection (VAD) play a decisive role in the subsequent speech processing. To resolve the problem of low detection rate of speech endpoints at low signal?to?noise ratio (SNR), a method of combing speech enhancement method based on deep belief network denoising with the traditional endpoint detection method is proposed. The deep belief network model is trained by large volumes of speech data to effectively map the nonlinear relationship between noisy speech and noise?free speech, and is made to become a good noise reduction filter. The effects of noisy speech and denoised speech on endpoint detection accuracy, and the correctness of endpoint detection at different SNRs are compared. The experimental results show that the method can improve the accuracy of VAD in the case of both stationary noise and non?stationary noise with low SNR.
Keywords: voice activity detection; deep belief network; SNR; speech processing
0 引 言
语音端点检测(Voice Activity Detection,VAD)作为语音处理中十分重要的一环,其检测效果的好坏直接决定着后续语音处理的结果的好坏,它是一种区分语音中的语音段和非语音段的技术。在语音处理等领域,语音端点检测技术是最常用也是最重要的前端技术之一,它的检测效果的好坏可以在很大程度上减少后续信号处理的运算量以及提高后续处理的精度及其通信系统的质量。本文着重研究了噪声环境下的端点检测的研究方法,通过将深度学习应用于语音增强的方法来提高噪声环境下的端点检测正确率。
语音和噪声往往有着复杂的关系,加性噪声和乘性噪声是通常所考虑的。然而在现实生活中,加性噪声往往对语音的质量影响比较大,假如用[y(t)]表示t时刻带噪语音信号,[n(t)]表示t时刻噪声信号,[x(t)]表示t时刻的无噪语音信号,那么加性噪声模型可以表示如下:
传统的去噪方法有能量过零率、倒谱距离以及谱熵法等,但对于非平稳噪声,这些传统的去噪方法对这些噪声抑制效果很差,特别是非平稳噪声在低信噪比情况下的语音信号,一般的传统的方法无法正确区分无用和有用信息,经常会出现误判,从而造成有用语音信息的丢失。最近几年的时间,由于深度学习的广泛应用,在机器学习领域有很好的应用,尤其是一种无监督的高效的逐层贪婪学习算法[1]在2006年被Hinton等人提出之后,构造了深度置信网络(Deep Belief Network),为以后的深度神经网络奠定了基础,而深度神经网络能很好地挖掘数据的非线性特征。因此该文将深度学习中的深度置信网络应用于语音增强,并提出了一种基于语音增强的端点检测方法。实验结果表明,无论是平稳噪声还是非平稳噪声下,该方法在不同噪声环境及不同信噪比情况下,其检测正确率都要高于传统的倒谱距离端点检测算法。
1 基于深度信念网络的语音去噪
深度置信网络由数个受限玻尔兹曼机[2](Restricted Boltzmann Machine,RMB)叠加构成。RBM是一种特殊的玻尔兹曼机,只有在显层(Visible Layer)和隐层(Hidden Layer)之间有权重连接,显层和显层间以及隐层和隐层间都没有连接。DBN的训练可以分成两个阶段进行,分别为预训练和参数优化,其训练过程如图1所示。
1.1 预训练阶段
采用逐层贪心算法,将整个DBN看成一个个RMB进行训练,前一个隐层的输出可以作为下一个显层的输入,见图1(a)。由于初始化RBM模型时用带噪语音去训练,第一个显层的输入为实数,因此第一个显层和隐层为高斯?伯努利RBM,其余RBM为伯努利?伯努利RBM。如果显层节点用向量[v]表示,隐层节点用向量h表示,连接用矩阵W表示;对于已经设定的一组状态[v,h],高斯?伯努利RBM显层服从高斯分布,隐层服从伯努利分布,即[v]∈R,h∈{0,1},由能量模型(Energy?Based Model,EBM)理论[3] 可得其能量函数定义:
1.2 参数优化阶段
运用后向传播算法[5](Back Propagation,BP)基于最小均方误差准则来更新整个DBN的网络参数,使得无噪语音的对数功率谱特征和带噪语音的对数功率谱特征之间误差最小。采用随机梯度下降算法来加快DBN的学习收敛速度,其平均平方误差为:
通过不断地更新调整,DBN能够很好地拟合带噪和无噪语音数据之间的非线性映射。
2 基于倒谱距离的端点检测方法
2.1 倒谱距离测量法
谱密度函数[S(ω)]和[S′(ω)]的倒谱系数分别是式(21)中的[cn]和[c′n]。对于检测是否是语音帧还是噪声帧,必须需要一个判决参数,而均方距离就可以作为判别参数,因为两个语音信号谱的差别通常可以用对数谱的均方距离表示。
2.2 倒谱距离测量法的检测流程
(1) 首先在语音数据集中取一抽样语音信号,并取其前几帧信号为背景噪声。那么背景噪声倒谱系数的估计值则能够用这些已经设定好的前几帧信号的倒谱系数的平均值来表示,定义其为向量C。
(2) 计算每帧信号的倒谱系数与噪声倒谱系数估计值的倒谱距离,可以对式(21)进行化简处理,近似可表示为:
(3) 通过式(22)能够计算得到各信号帧倒谱距离的倒谱距离轨迹,然后通过门限判决的方法来确定抽样语音的语音帧和噪声帧。
(4) 由于噪声的种类是多种多样并且不断变化,因此要得到较准确的检测,向量C必须与其变化相适应,本文所采用的自适应处理过程能够解决这个问题,即将前一信号帧的倒谱向量作为向量C,并按照
3 实验过程与结果分析
为了检验该文方法的效果,本实验仿真平台采用Matlab软件,实验采用的是微软的MSRA语音库,利用深度信念网络对语音进行去噪[6]。训练数据加入-5 dB,0 dB,5 dB,10 dB,15 dB的噪声。噪声源选取Noisex 92 中的Babble,Leopard两种噪声,其中Babble噪声是非平稳噪声,Leopard为平稳噪声,DBN采用的是只有一个隐层的三层神经网络进行降噪,将不同信噪比的MFCC特征作为网络的输入,把干净的MFCC特征作为目标值进行训练。之后将去噪后的语音信号的MFCC特征进行提取系数等信息并用于倒谱距离的语音端点检测,在对比不同信噪比的MFCC直接用于倒谱距离的端点检测结果。其实验结果如图2~图5所示。
图2是从微软语音库抽取的一条原始语音信号波形;图3是其加噪语音信号波形;图4对加噪后的语音波形图3通过基于传统的倒谱距离检测算法得到的结果;图5是对图3通过DBN去噪后再对其进行倒谱距离的检测,其结果表示了本文方法在平稳噪声和非平稳噪声的低信噪比的情况下都有比传统算法更高的检测准确率。通过实验可以得到在不同信噪比下端点检测的准确率如表1所示。
由表1可以看出,本文所提的基于语音增强算法的端点检测在不平稳噪声Babble 和平稳噪声Leopard下都有比传统的检测算法更高的准确率,同时在不同信噪比下,也有更高的检测准确率。本文算法在平稳噪声和不平稳噪声的检测中,检测准确率更加接近,而传统的检测算法,在非平稳噪声下,检测准确率直线下降,在强噪声环境下,检测正确率更是与本文算法相差较大,达到16%左右。通过5种信噪比及不同的噪声环境下的端点检测实验,可以得出,在不平稳噪声情况下,传统的检測算法在信噪比降低的情况下,检测正确率下降较快,而本文算法,检测正确率下降的幅度远远小于传统的检测算法。其结果如图6所示。
4 结 语
本文主要是对噪声条件下的语音端点检测进行研究,以往传统的语音端点检测算法在高信噪比下的检测正确率都比较高,而在低信噪比下的效果则不明显,尤其是对不同的噪声情况都没有一个统一的解决方法。本文采用的基于深度置信网络的语音增强方法,由于其能够很好地映射带噪与无噪语音之间的非线性关系,因此通过对噪声特性的训练,能够对某种特定的噪声情况有较好的去噪效果,因而可以降低平稳噪声和非平稳噪声在语音端点检测中的影响。然而本文的不足之处是只考虑了一种非平稳噪声Babble和一种平稳噪声Leopard的影响,没有考虑其他噪声,但在现实生活中,噪声的种类是非常多的,而且是随机的。
注:本文通讯作者为黄浩。
参考文献
[1] HINTON G E, OSINDERO S, TEH Y W. A fast learning algorithm for deep belief nets [J]. Neural computation, 2006, 18(7):1527?1554.
[2] SALAKHUTDINOV R. Learning deep generative models [D]. Toronto: University of Toronto, 2009.
[3] LECUN Y, CHOPRA S, HADSELL R, et al. A tutorial on energy?based learning [C]// Predicting structured data.
Cambridge: MIT press, 2006:191?246.
[4] HINTON G. Training products of experts by minimizing contrastive divergence [J]. Neural computation, 2002,14(8): 1771?1800.
[5] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient?based learning applied to document recognition [J]. Proceedings of the IEEE, 1998, 86(11): 2278?2324.
[6] 徐勇.基于深层神经网络的语音增强方法研究[D].合肥:中国科学技术大学,2015.
[7] KENNY P, OUELLET P, DEHAK N, et al. A study of interspeaker variability in speaker verification [J]. IEEE transactions on audio speech and language processing, 2008, 16(5): 980?988.
[8] MARKOVI? I, DOMITROVI? H, PETROVI? I. Comparison of statistical model?based voice activity detectors for mobile robot speech applications [J]. IFAC proceedings volumes, 2012, 45(22): 39?44.
[9] HUANG S H, CHANG J H. Optimally weighted maximum a posteriori probabilities based on minimum classification error for dual?microphone voice activity detection [J]. Applied acoustics, 2016,113: 221?229.
[10] MING M, WANG K, JI H. Novel DTD and VAD assisted voice detection algorithm for VoIP systems [J]. Journal of China Universities of Posts and Telecommunications, 2016, 23(4): 9?16.
[11] KANG S I, CHANG J H. Voice activity detection based on discriminative weight training incorporating a spectral flatness measure [J]. Circuits systems and signal processing, 2010, 29(2): 183?194.
[12] PARK Y S, LEE S M. Speech enhancement through voice activity detection using speech absence probability based on Teager energy [J]. Journal of Central South University, 2013, 20(2): 424?432.
[13] YOU D, HAN J, ZHENG G, et al. Sparse representation with optimized learned dictionary for robust voice activity detection [J]. Circuits systems, and signal processing, 2014, 33(7): 2267?2291.
[14] 张慧,马建芬.基于语音端点检测和子空间方法的语音增强算法[J].计算机应用,2009(z1):340?341.
[15] 胡光锐,韦晓东.基于倒谱特征的带噪语音端点检测[J].电子学报,2000(10):95?97.
[16] 陈振锋,吴蔚澜,刘加,等.基于Mel倒谱特征顺序统计滤波的语音端点检测算法[J].中国科学院大学学报,2014(4):524?529.
[17] 田旺兰,李加升.改进运用深度置信网络的语音端点检测方法[J].计算机工程与应用,2014(20):207?210.
[18] 王家良.基于深度置信网络的说话人识别研究与实现[D].南京:南京邮电大学,2015.
摘 要: 语音端点检测的检测结果好坏对后续的语音处理起着决定性的作用。为了解决语音端点在低信噪比情况下检测率不高的问题,该文提出了基于深度置信网络去噪的语音增强方法与传统的端点检测方法相结合的方法。该方法首先由大量的语音数据训练深度置信网络模型,使其能够很好地映射带噪与无噪语音之间的非线性关系,进而使其成为一个良好的降噪滤波器,再对比带噪与去噪后语音对端点检测准确率的影响,以及不同信噪比的端点检测的正确率。从该实验结果可以得到,该方法在平稳噪声和非平稳噪声的低信噪比情况下都可以提高语音端点检测的准确率。
关键词: 语音端点检测; 深层置信网络; 信噪比; 语音处理
中图分类号: TN911.23?34; TP391 文献标识码: A 文章编号: 1004?373X(2017)22?0001?04
Abstract: The test results of voice activity detection (VAD) play a decisive role in the subsequent speech processing. To resolve the problem of low detection rate of speech endpoints at low signal?to?noise ratio (SNR), a method of combing speech enhancement method based on deep belief network denoising with the traditional endpoint detection method is proposed. The deep belief network model is trained by large volumes of speech data to effectively map the nonlinear relationship between noisy speech and noise?free speech, and is made to become a good noise reduction filter. The effects of noisy speech and denoised speech on endpoint detection accuracy, and the correctness of endpoint detection at different SNRs are compared. The experimental results show that the method can improve the accuracy of VAD in the case of both stationary noise and non?stationary noise with low SNR.
Keywords: voice activity detection; deep belief network; SNR; speech processing
0 引 言
语音端点检测(Voice Activity Detection,VAD)作为语音处理中十分重要的一环,其检测效果的好坏直接决定着后续语音处理的结果的好坏,它是一种区分语音中的语音段和非语音段的技术。在语音处理等领域,语音端点检测技术是最常用也是最重要的前端技术之一,它的检测效果的好坏可以在很大程度上减少后续信号处理的运算量以及提高后续处理的精度及其通信系统的质量。本文着重研究了噪声环境下的端点检测的研究方法,通过将深度学习应用于语音增强的方法来提高噪声环境下的端点检测正确率。
语音和噪声往往有着复杂的关系,加性噪声和乘性噪声是通常所考虑的。然而在现实生活中,加性噪声往往对语音的质量影响比较大,假如用[y(t)]表示t时刻带噪语音信号,[n(t)]表示t时刻噪声信号,[x(t)]表示t时刻的无噪语音信号,那么加性噪声模型可以表示如下:
传统的去噪方法有能量过零率、倒谱距离以及谱熵法等,但对于非平稳噪声,这些传统的去噪方法对这些噪声抑制效果很差,特别是非平稳噪声在低信噪比情况下的语音信号,一般的传统的方法无法正确区分无用和有用信息,经常会出现误判,从而造成有用语音信息的丢失。最近几年的时间,由于深度学习的广泛应用,在机器学习领域有很好的应用,尤其是一种无监督的高效的逐层贪婪学习算法[1]在2006年被Hinton等人提出之后,构造了深度置信网络(Deep Belief Network),为以后的深度神经网络奠定了基础,而深度神经网络能很好地挖掘数据的非线性特征。因此该文将深度学习中的深度置信网络应用于语音增强,并提出了一种基于语音增强的端点检测方法。实验结果表明,无论是平稳噪声还是非平稳噪声下,该方法在不同噪声环境及不同信噪比情况下,其检测正确率都要高于传统的倒谱距离端点检测算法。
1 基于深度信念网络的语音去噪
深度置信网络由数个受限玻尔兹曼机[2](Restricted Boltzmann Machine,RMB)叠加构成。RBM是一种特殊的玻尔兹曼机,只有在显层(Visible Layer)和隐层(Hidden Layer)之间有权重连接,显层和显层间以及隐层和隐层间都没有连接。DBN的训练可以分成两个阶段进行,分别为预训练和参数优化,其训练过程如图1所示。
1.1 预训练阶段
采用逐层贪心算法,将整个DBN看成一个个RMB进行训练,前一个隐层的输出可以作为下一个显层的输入,见图1(a)。由于初始化RBM模型时用带噪语音去训练,第一个显层的输入为实数,因此第一个显层和隐层为高斯?伯努利RBM,其余RBM为伯努利?伯努利RBM。如果显层节点用向量[v]表示,隐层节点用向量h表示,连接用矩阵W表示;对于已经设定的一组状态[v,h],高斯?伯努利RBM显层服从高斯分布,隐层服从伯努利分布,即[v]∈R,h∈{0,1},由能量模型(Energy?Based Model,EBM)理论[3] 可得其能量函数定义:
1.2 参数优化阶段
运用后向传播算法[5](Back Propagation,BP)基于最小均方误差准则来更新整个DBN的网络参数,使得无噪语音的对数功率谱特征和带噪语音的对数功率谱特征之间误差最小。采用随机梯度下降算法来加快DBN的学习收敛速度,其平均平方误差为:
通过不断地更新调整,DBN能够很好地拟合带噪和无噪语音数据之间的非线性映射。
2 基于倒谱距离的端点检测方法
2.1 倒谱距离测量法
谱密度函数[S(ω)]和[S′(ω)]的倒谱系数分别是式(21)中的[cn]和[c′n]。对于检测是否是语音帧还是噪声帧,必须需要一个判决参数,而均方距离就可以作为判别参数,因为两个语音信号谱的差别通常可以用对数谱的均方距离表示。
2.2 倒谱距离测量法的检测流程
(1) 首先在语音数据集中取一抽样语音信号,并取其前几帧信号为背景噪声。那么背景噪声倒谱系数的估计值则能够用这些已经设定好的前几帧信号的倒谱系数的平均值来表示,定义其为向量C。
(2) 计算每帧信号的倒谱系数与噪声倒谱系数估计值的倒谱距离,可以对式(21)进行化简处理,近似可表示为:
(3) 通过式(22)能够计算得到各信号帧倒谱距离的倒谱距离轨迹,然后通过门限判决的方法来确定抽样语音的语音帧和噪声帧。
(4) 由于噪声的种类是多种多样并且不断变化,因此要得到较准确的检测,向量C必须与其变化相适应,本文所采用的自适应处理过程能够解决这个问题,即将前一信号帧的倒谱向量作为向量C,并按照
3 实验过程与结果分析
为了检验该文方法的效果,本实验仿真平台采用Matlab软件,实验采用的是微软的MSRA语音库,利用深度信念网络对语音进行去噪[6]。训练数据加入-5 dB,0 dB,5 dB,10 dB,15 dB的噪声。噪声源选取Noisex 92 中的Babble,Leopard两种噪声,其中Babble噪声是非平稳噪声,Leopard为平稳噪声,DBN采用的是只有一个隐层的三层神经网络进行降噪,将不同信噪比的MFCC特征作为网络的输入,把干净的MFCC特征作为目标值进行训练。之后将去噪后的语音信号的MFCC特征进行提取系数等信息并用于倒谱距离的语音端点检测,在对比不同信噪比的MFCC直接用于倒谱距离的端点检测结果。其实验结果如图2~图5所示。
图2是从微软语音库抽取的一条原始语音信号波形;图3是其加噪语音信号波形;图4对加噪后的语音波形图3通过基于传统的倒谱距离检测算法得到的结果;图5是对图3通过DBN去噪后再对其进行倒谱距离的检测,其结果表示了本文方法在平稳噪声和非平稳噪声的低信噪比的情况下都有比传统算法更高的检测准确率。通过实验可以得到在不同信噪比下端点检测的准确率如表1所示。
由表1可以看出,本文所提的基于语音增强算法的端点检测在不平稳噪声Babble 和平稳噪声Leopard下都有比传统的检测算法更高的准确率,同时在不同信噪比下,也有更高的检测准确率。本文算法在平稳噪声和不平稳噪声的检测中,检测准确率更加接近,而传统的检测算法,在非平稳噪声下,检测准确率直线下降,在强噪声环境下,检测正确率更是与本文算法相差较大,达到16%左右。通过5种信噪比及不同的噪声环境下的端点检测实验,可以得出,在不平稳噪声情况下,传统的检測算法在信噪比降低的情况下,检测正确率下降较快,而本文算法,检测正确率下降的幅度远远小于传统的检测算法。其结果如图6所示。
4 结 语
本文主要是对噪声条件下的语音端点检测进行研究,以往传统的语音端点检测算法在高信噪比下的检测正确率都比较高,而在低信噪比下的效果则不明显,尤其是对不同的噪声情况都没有一个统一的解决方法。本文采用的基于深度置信网络的语音增强方法,由于其能够很好地映射带噪与无噪语音之间的非线性关系,因此通过对噪声特性的训练,能够对某种特定的噪声情况有较好的去噪效果,因而可以降低平稳噪声和非平稳噪声在语音端点检测中的影响。然而本文的不足之处是只考虑了一种非平稳噪声Babble和一种平稳噪声Leopard的影响,没有考虑其他噪声,但在现实生活中,噪声的种类是非常多的,而且是随机的。
注:本文通讯作者为黄浩。
参考文献
[1] HINTON G E, OSINDERO S, TEH Y W. A fast learning algorithm for deep belief nets [J]. Neural computation, 2006, 18(7):1527?1554.
[2] SALAKHUTDINOV R. Learning deep generative models [D]. Toronto: University of Toronto, 2009.
[3] LECUN Y, CHOPRA S, HADSELL R, et al. A tutorial on energy?based learning [C]// Predicting structured data.
Cambridge: MIT press, 2006:191?246.
[4] HINTON G. Training products of experts by minimizing contrastive divergence [J]. Neural computation, 2002,14(8): 1771?1800.
[5] LECUN Y, BOTTOU L, BENGIO Y, et al. Gradient?based learning applied to document recognition [J]. Proceedings of the IEEE, 1998, 86(11): 2278?2324.
[6] 徐勇.基于深层神经网络的语音增强方法研究[D].合肥:中国科学技术大学,2015.
[7] KENNY P, OUELLET P, DEHAK N, et al. A study of interspeaker variability in speaker verification [J]. IEEE transactions on audio speech and language processing, 2008, 16(5): 980?988.
[8] MARKOVI? I, DOMITROVI? H, PETROVI? I. Comparison of statistical model?based voice activity detectors for mobile robot speech applications [J]. IFAC proceedings volumes, 2012, 45(22): 39?44.
[9] HUANG S H, CHANG J H. Optimally weighted maximum a posteriori probabilities based on minimum classification error for dual?microphone voice activity detection [J]. Applied acoustics, 2016,113: 221?229.
[10] MING M, WANG K, JI H. Novel DTD and VAD assisted voice detection algorithm for VoIP systems [J]. Journal of China Universities of Posts and Telecommunications, 2016, 23(4): 9?16.
[11] KANG S I, CHANG J H. Voice activity detection based on discriminative weight training incorporating a spectral flatness measure [J]. Circuits systems and signal processing, 2010, 29(2): 183?194.
[12] PARK Y S, LEE S M. Speech enhancement through voice activity detection using speech absence probability based on Teager energy [J]. Journal of Central South University, 2013, 20(2): 424?432.
[13] YOU D, HAN J, ZHENG G, et al. Sparse representation with optimized learned dictionary for robust voice activity detection [J]. Circuits systems, and signal processing, 2014, 33(7): 2267?2291.
[14] 张慧,马建芬.基于语音端点检测和子空间方法的语音增强算法[J].计算机应用,2009(z1):340?341.
[15] 胡光锐,韦晓东.基于倒谱特征的带噪语音端点检测[J].电子学报,2000(10):95?97.
[16] 陈振锋,吴蔚澜,刘加,等.基于Mel倒谱特征顺序统计滤波的语音端点检测算法[J].中国科学院大学学报,2014(4):524?529.
[17] 田旺兰,李加升.改进运用深度置信网络的语音端点检测方法[J].计算机工程与应用,2014(20):207?210.
[18] 王家良.基于深度置信网络的说话人识别研究与实现[D].南京:南京邮电大学,2015.