一种自适应建模的VAD方法
2016-03-01腾潇琦张翼飞
腾潇琦,冯 祥,张翼飞,3
(1.北京市互联网信息办公室,北京 100062; 2.讯飞智元信息科技有限公司,安徽合肥 230088; 3.上海大学机电工程与自动化学院,上海 200072)
一种自适应建模的VAD方法
腾潇琦1,冯 祥2,张翼飞2,3
(1.北京市互联网信息办公室,北京 100062; 2.讯飞智元信息科技有限公司,安徽合肥 230088; 3.上海大学机电工程与自动化学院,上海 200072)
语音活动检测(Voice Activity Detection,VAD)是语音前端特征处理的一个重要环节,它直接影响到后续处理的效果和效率。主流的模型VAD对训练数据的依赖度过高,在不同场景下需要重新训练不同的模型,这带来的数据标注的工作量是非常惊人的。一种自适应建模的VAD方法结合了能量VAD和模型VAD的优点,成功地解决了这个问题。它对每一条语音在线地训练出语音和非语音模型,根据每一帧在模型上的似然度得分给它们打上标签,经过平滑后就可以很好地找到语音的起点和终点。实验结果表明,该方法取得了很好的效果,F1指标相比传统能量VAD提升了0.031,说话人分离错误率下降了0.45%。
语音活动检测;能量VAD;模型VAD;自适应建模
0 引言
端点检测(Endpoint Detection)又称语音活动检测(Voice Activity Detection,VAD),是指从一段包含语音的信号中确定出语音的起止点。它广泛应用于通信系统、语音编码等领域,在语音识别中更是不可或缺的环节。语音信号端点的有效检测不仅能减少语音信号后期处理的运算量,而且对后续识别的效果有极大的促进作用[1]。传统的VAD方法主要有基于短时能量、过零率、谱熵,基于混合高斯模型以及基于隐马尔可夫模型等方法,它们大体可分为基于能量的VAD[2-4]和基于模型的VAD[5-7]两种。
能量VAD是使用能量以及过零率来判断语音和非语音,该方法优点是简单、速度快,但是由于它无法滤除噪音和一些非语意信息的声音,所以效果并不是太理想。模型VAD比较复杂,它是利用语音的统计特性对有效语音、静音、噪音等进行建模,比较测试语音在各种模型上的得分实现分类。这种方法在效果上要优于能量VAD,但是需要大量的人工标注过的数据进行训练,并且在测试语音和训练语音信道不匹配时可能会引起效果的下降。
文中提出了一种新的自适应VAD方法,它结合了能量VAD和模型VAD的优点,采用了自适应在线建模的方法,解决了测试语音和训练语音信道不匹配的问题,并且不需要离线的训练数据,简化了传统的模型VAD方法,效果上可以达到模型VAD的水准。
1 传统的能量VAD
除去静音外,任何一段语音都是一段能量脉冲。一般来说,有效语音拥有相对较高的能量,因此可以采用划门限的方法来检测语音段。最经典的能量VAD算法如图1所示。
从语音的开始到结束阶段,会有一个能量上升和下降的过程,可以利用这个过程建立一套检测语音段的规则。首先对待测语音进行K-means聚类,得到四个能量阈值K1、K2、K3和K4。当能量脉冲到来时,E上升到大于K1,并且不会再降低到K1之下而是逐渐增大到大于K2时,语音的起点就定为S1,如果S1到S2的距离过长起点就定为S2;同样的,在能量下降阶段,当E小于K2,并且不会再上升到K2之上而是逐渐减小到小于K3时,语音的终点就为S4,如果S3到S4的距离过长终点就定为S3。当峰值能量低于K4时,该段能量脉冲被丢弃,当能量脉冲的持续时间太短时,能量脉冲也被丢弃[8]。
这种方法在信噪比高的环境下,可以准确检测出语音的起点和终点。但是其固有的缺点还是容易引入较大能量的噪声,包括一些持续时间较长的噪声能量脉冲,影响了语音段标注的准确率。
2 传统的模型VAD
2.1 混合高斯模型
一个混合高斯模型(Gaussian Mixture Model,GMM)由多个高斯概率密度函数加权求和得到,如式(1):
其中,M为高斯混合模型的混合度;x为一个D维随机向量;wi为每个高斯函数的混合权重;Ni(x)为一个D维的联合高斯概率分布,见式(2):其中,μi为均值矢量;Σi为协方差矩阵。
至此,整个混合高斯模型λ可由{wi,μi,Σi}来描述。
2.2 模型训练
对于T个训练矢量X={xt,t=1,2,…,T},在用K -means聚类确定了初始λ的参数后,可以通过经典的EM(Expectation Maximization)算法迭代出一个新的混合高斯模型。其中:
在建立模型前需要大量经过人工标注选出的语音和非语音片段,标注完成后用语音片段训练出一个混合高斯模型λspeech,用非语音片段训练出另一个混合高斯模型λnonpeech。比较测试帧在这两种模型上的得分即可实现语音帧和非语音帧的分类,再加入平滑就可以很容易找到语音的端点。
由于可以将噪声片段加入非语音片段中训练λnonpeech,模型VAD可以很好地解决能量VAD不能解决的高能量噪声问题。但是此方法的缺点也是很明显的,首先是需要大量人工标注过的数据,其次它对模型的依赖性很高,模型的好坏决定了最终VAD的效果,所以对于不同的语音背景环境,需要针对性地重新训练出相应的模型,才能保证结果的准确性。最近几年比较流行的模型VAD是基于DNN(Deep Neural Network)的VAD[10-11],该方法使用DNN来建立模型,相比GMM模型复杂度更高,效果更佳,但是此方法面临着和传统模型VAD一样的问题。
3 自适应建模VAD
文中提出了一种自适应建模的VAD方法,该方法通过在线训练出语音段和非语音段的混合高斯模型,有效去除了静音段以及能量较低的噪音段,而且不像传统模型VAD那样需要大量的训练数据,在信噪比高的环境下取得了较好的效果。流程如图2所示。
算法具体步骤如下:
(1)将待测语音分帧后计算能量,能量最高的帧标记为A,能量最低的帧标记为B,计算E=(EAEB)/EB,将E与门限值M相比较,若小于M则认为此条语音整段都是静音或者噪音,若大于M则需要进行第二步。
(2)如图3所示,将每一帧按照能量高低排序,抽取能量较低的一部分帧用以训练出初始的λnonpeech,抽取能量较高的一部分帧用以训练初始的λspeech。
(3)将语音的所有帧在 λnonpeech和 λspeech上计算得分,通过比较两种模型上的得分高低给每一帧数据打上语音或非语音的标签。
(4)用打上非语音标签的所有帧数据训练一个新的λnonpeech,同样用打上语音标签的所有帧数据训练一个新的λspeech。
(5)重复步骤(3)、(4)若干次,直到新模型相当于上一个模型的畸变量小于Y时停止循环。
(6)再执行一次步骤(3),将每一帧数据都打上语音或非语音的标签。
(7)使用平滑策略去掉其中的毛刺点。
经过以上七步,可以很容易地标记出语音起始点与结束点。该方法的训练是在线进行的,虽然在效率上相比传统模型VAD会有所下降,但是省去了繁琐的离线训练过程。实验结果表明,该方法在信噪比较高的环境下效果显著。
4实验
实验数据采用的是电话信道下的移动客服数据,一共3 000条,都为两人电话中的对话,信噪比较高。其中陕西移动、安徽移动、黑龙江移动的数据各1 000条。将陕西移动和安徽移动数据作为开发集用作调参,黑龙江移动的数据作为测试集使用。
基线系统采用传统的四门限能量VAD和传统的GMM模型VAD,新系统采用上文介绍的自适应建模VAD。其中,特征选用39维的MFCC特征(经过RASTA和二阶差分),新系统中在线训练时所用的畸变量Y取5%,M取10,GMM的混合度在下面的开发集实验中选取。
使用的评测指标是F1和VAD后的语音进行说话人分离[12-13]的错误率。其中:
其中,Recall Rate表示语音的召回率;Precision Rate表示语音的正确率。
首先看开发集中不同高斯混合度下的几组测试结果,见表1。
从表1可以看出,128混合度的GMM无论是在F1指标还是说话人分离错误率上都取得了最好的效果,但是相比较64混合度的GMM提升并不明显,然而128混合度的 GMM在运算量上大约是 64混合度GMM的两倍。为了兼顾效率,实验后面的测试选用混合度为64的GMM,表2是1 000条测试集在三种不同策略系统上的对比。
表2的统计结果表明,由于结合了模型VAD的优点,自适应建模VAD系统的F1指标要好于采用基于传统能量VAD方法的系统,并且在后续的降低说话人分离错误率上有明显的优势,而在与传统模型VAD的对比中效果略有下降。这是因为自适应建模的VAD系统并没有在自适应训练中将高能量的噪音加入到非语音模型的训练中,但是在高能量噪音很少的环境中,效果上几乎和传统模型VAD没有区别,而且自适应建模VAD的便利性和环境适应性弥补了效果上的不足。
5 结束语
文中提出了一种自适应建模的VAD方法,该方法结合了能量VAD和模型VAD的优点,采用了在线自适应训练GMM的方法,避开了传统模型VAD中繁杂的人工数据标注和线下模型训练的工作,并且不用担心不同场景下的信道以及背景音不同等问题。该方法在实验中取得了很好的效果,F1指标比传统能量VAD提高了0.031,说话人分离错误率也比传统能量VAD降低了0.45%。但是该方法还存在一些不足,首先它对高能量噪音的过滤能力并不好,必须在较高的信噪比环境下才能很好地工作,其次由于是在线的训练模型,所以在运算速度上要弱于传统的能量VAD和传统的模型VAD,这些都是后续需要解决的问题。
[1] 孙战先,储飞黄,王 江.一种自适应语音端点检测算法[J].计算机工程与应用,2014,50(1):206-210.
[2] Lamel L,Rabiner L,Rosenberg A,et al.An improved endpoint detector for isolated word recognition[J].IEEE Transactions on Acoustics Speech&Signal Processing,1981,29(4):777-785.
[3] 张仁志,崔慧娟.基于短时能量的语音端点检测算法研究[J].电声技术,2005(7):52-54.
[4] 周明忠,吉立新.基于平均幅度和加权过零率的VAD算法及其FPGA实现[J].信息工程大学学报,2010,11(6):713 -718.
[5] Wu J,Zhang X L.An efficient voice activity detection algorithm by combining statistical model and energy detection[J]. Journal on Advances in Signal Processing,2011(2):150-154.
[6] 雷建军,杨 震,刘 刚,等.基于复高斯混合模型的鲁棒VAD算法[J].天津大学学报,2009,42(4):353-356.
[7] 朱 杰,韦晓东.噪声环境中基于HMM模型的语音信号端点检测方法[J].上海交通大学学报,1998,32(10):14-16.
[8] 章 钊,郭 武.话者识别中结合模型和能量的语音激活检测算法[J].小型微型计算机系统,2010,31(9):1914-1917.
[9] 郭 武.复杂信道下的说话人识别[D].合肥:中国科学技术大学,2007.
[10] Zhang X L,Wu J.Denoising deep neural networks based voice activity detection[C]//Proc of international conference on acoustics,speech,and signal processing.[s.l.]:[s.n.],1988: 853-857.
[11] 黎 林,朱 军.基于小波分析与神经网络的语音端点检测研究[J].电子测量与仪器学报,2013,27(6):528-534.
[12] Reddy A M,Raj B.Soft mask methods for single-channel speaker separation[J].IEEE Transactions on Audio Speech&Language Processing,2007,15(6):1766-1776.
[13] 张 策.电话信道下说话人分离及识别研究[D].北京:中国科学院大学,2013.
An Voice Activity Detection of Adaptive Modeling
TENG Xiao-qi1,FENG Xiang2,ZHANG Yi-fei2,3
(1.The Office of Internet Information,Beijing 100062,China; 2.Iflytek Intelligent System Co.,Ltd.,Hefei 230088,China; 3.School of Mechatronics Engineering and Automation,Shanghai University,Shanghai 200072,China)
Voice Activity Detection(VAD)is an important part of speech front-end features processing which directly affects the effectiveness and efficiency of subsequent processing.Because of over-dependence on training data,the model VAD must train different model in different scenarios that will bring many tasks of data labeling.A VAD method of adaptive modeling,which combines with the advantages of energy VAD and model VAD,solves the problem successfully.It trains speech model and non-speech model online to each voice and labels each frame according to the likelihood score of different model,then the endpoint of voice can be get.The experiments show that this method has achieved a good result.It makes the F1parameters increased 0.031 and error rate of speaker separation decreased by 0.45%compared with the traditional energy VAD.
voice activity detection;energy VAD;model VAD;adaptive modeling
TP301
A< class="emphasis_bold">文章编号:1
1673-629X(2016)09-0026-04
10.3969/j.issn.1673-629X.2016.09.006
2015-06-02
2015-10-15< class="emphasis_bold">网络出版时间:
时间:2016-08-23
北京市科技计划项目(Z141100006014002)
腾潇琦(1983-),女,硕士,研究方向为新闻传播。
http://www.cnki.net/kcms/detail/61.1450.tp.20160823.1112.010.html