基于高层信息特征的重叠语音检测
马勇 1,2 , 鲍长春 1     
1. 北京工业大学 电子信息与控制工程学院, 北京 100124;
2. 江苏师范大学 物理与电子工程学院, 徐州 221009
摘要:重叠语音是影响说话人分割性能的主要因素之一。该文提出了基于语音高层信息特征的重叠语音检测方法以提高说话人分割效果。首先用通用背景模型(universal background model,UBM)提取语音的语言学高层信息特征,并融合这些特征和Mel频率倒谱系数(Mel frequency cepstral coefficient,MFCC)特征建立隐Markov模型(hidden Markov model,HMM)检测重叠语音,然后对处理后的语音进行说话人分割。实验结果表明:对于由TIMIT语音库生成的数据集,该方法对重叠语音检测的错误率比单一采用MFCC特征有显著降低,而且说话人分割性能有明显的提高。
关键词重叠语音检测     高层信息特征     说话人分割    
Overlapping speech detection using high-level information features
MA Yong1,2, BAO Changchun1     
1. School of Electronic Information and Control Engineering, Beijing University of Technology, Beijing 100124, China;
2. School of Physics and Electronic Engineering, Jiangsu Normal University, Xuzhou 221009, China
Abstract:Overlapping speech is one of the main factors influencing the performance of speaker segmentation. This paper presents an overlapping speech detection method using a high-level information feature to improve the speaker segmentation results. A linguistic high-level information feature of the speech is extracted using the universal background model (UBM). Then, a hidden Markov model (HMM) is trained using the Mel frequency cepstral coefficients (MFCC) and the high-level information to detect overlapping speech. The result is then used for the speaker segmentation of the pre-processed speech. Tests on a dataset generated from the TIMIT database show that the error ratio for overlapping speech detection is significantly lower than the reference method using just the MFCC feature. The speaker segmentation is also significantly improved.
Key words: overlapping speech detection     high-level information feature     speaker segmentation    

重叠语音是指在同一时间存在2个或以上说话人同时发声的音段。在电话交谈、新闻采访、学术报告和会议讨论等自由交谈的环境下经常存在多人重叠发音和插话等情况[1]。在多说话人分割任务中,重叠语音的存在影响说话人变换点的正确检测,降低说话人聚类的纯度,因此重叠语音的检测成为说话人分割研究的一个重要课题[2-3]

说话人分割是语音信号处理领域的一个重要分支,主要任务是把连续的多说话人语音分割成若干单一说话人的音段,并对同一说话人音段进行聚类[4]。传统的说话人分割系统大多没有考虑语音中多人同时发音的情况,文[5]明确提出了重叠语音对说话人分割系统性能的影响。Boakye等[6]首次提出了基于隐Markov模型(hidden Markov model,HMM)的重叠语音检测方法,之后人们在此基础上,通过融合不同的特征研究各种改进方法。目前对提取重叠语音特征的研究主要有3个方面: 一是提取短时的谱特征如Mel 频率倒谱系数(Mel frequency cepstral coefficient,MFCC)、线性预测编码(linear prediction coding,LPC)残差能量、均方根(root mean square,RMS)能量和谱平坦度等,及一些相关的特征如谐波能量比和峭度等[6-7],这些特征提取简单,但容易受到信道环境的干扰而影响检测正确率; 二是通过广义互相关相位变换加权(generalized cross correlation with phase transform weighting,GCC-PHAT)提取语音的空间特征[8]如时延特征(time delay of arrival,TDOA)、互相关峰值幅度和相邻峰值之间的分散程度等,这些空间特征主要适用于多麦克风环境下的重叠语音检测问题; 三是提取语言学特征,文[9]利用音素解码器获取语音的语言学单元,然后通过语言模型来检测重叠语音段,这种方法的鲁棒性较好,但计算量较大。此外,文[10]通过计算交谈中静音段、说话人变换和重叠语音的条件概率信息作为特征对重叠语音建模,也获得较好的实验结果。

本文提出了基于通用背景模型(universial background model,UBM)的语音高层信息特征提取方法,用这种特征研究单麦克风环境下的重叠语音建模和检测问题,并对处理后的语音进行说话人分割,分析重叠语音检测对说话人分割性能的影响。

1 语音的高层信息特征提取

根据语音识别的研究,在单一说话人的环境下,每帧语音对应特定的音素,相邻帧的语音在声学空间具有一定的连续性,对应音素转换频率相对平缓,而当2个或以上人同时发音时,音素的转换频率相对剧烈,每帧语音对应的语言学单元容易发生混淆。本文利用UBM替代音素解码器提取每帧语音的类音素信息。UBM的每个子分布可以看作特征空间中的类音素模型,计算一帧语音对UBM每个子分布的后验概率,其中概率最大的子分布标号可以作为对应帧的类音素类别。语音中相邻帧之间的类音素类别的转换率越大,则语音是重叠语音的概率越大。另外计算语音对UBM各子分布的似然打分,如果似然打分越接近,表明该语音对应的类音素类别的混淆度越大,则该语音为重叠语音的概率也越大,本文通过似然打分的比值来衡量相邻帧语音的接近程度。以上介绍的类音素符号转换率和子分布似然打分比等特征具有语言学特性,因此本文称之为语音的高层信息特征,并用这些特征分析重叠语音和非重叠语音的区别。

1.1 类音素符号转换率

首先,训练UBM模型,UBM模型是非特定说话人Gauss混合模型[11],定义如下:

${{\lambda }_{\text{UBM}}}=\{{{w}_{i}},{{\mu }_{i}},{{\Sigma }_{i}}\},\text{ }i=1,2,\ldots ,M.$ (1)

其中: wμσ分别表示模型的权重、均值和方差,M表示UBM的Gauss分布个数。

然后,计算每帧语音对UBM每个子分布的后验概率,并寻找后验概率最大的子分布的标号作为该帧语音的类音素标号:

${{l}_{j}}=\arg \underset{1\le l\le M}{\mathop{\text{max}}}\,p(\lambda _{\text{UBM}}^{l}|{{x}_{j}}),\text{ }j=1,2,\ldots ,N.$ (2)

其中: l为UBM模型中的子分布标号,j为语音帧标号,N表示语音帧的个数,xj为第j帧语音,lj为第j帧语音标号。

最后,计算类音素标号的变化率:

${{r}_{\text{hops}}}={{N}_{\text{hops}}}/{{N}_{\text{all}}}.$ (3)

其中: Nhops为语音中所有帧对应的子分布标号变化次数; 而Nall为语音中所有帧的数目; rhops为类音素符号变化率,等于1时表示语音中相邻帧的标号完全不同,等于0时表示语音中相邻帧的标号完全相同。

图 1显示重叠语音中说话人数目和rhops之间的关系,语音中混合的说话人数目从1到5,UBM的Gauss分布数分别为64、128和256,UBM模型采用TIMIT语音数据库的数据训练,重叠语音也由TIMTI语音库的数据生成。可以看出,随着重叠语音中说话人数目和UBM的Gauss分布数的增加,rhops在不断增加。这说明rhops特征可以用于区分重叠语音和非重叠语音。

图 1 不同数目说话人重叠语音rhops的值

1.2 子分布似然打分比

子分布似然打分比是UBM每个子分布对语音帧的似然打分的比值,可以衡量语音的混淆程度,从而区分重叠语音和非重叠语音。在具体计算中,本文提取UBM的Gauss子分布对已知语音的最高对数似然打分与次高似然打分比值的对数作为特征:

$\begin{align} & r_{\text{ls}}^{j}\text{=}\lg \left( {{p}^{\max }}\left( {{x}_{j}}\text{ }\!\!|\!\!\text{ }\lambda _{\text{UBM}}^{l} \right)/{{p}^{\text{sub }\!\!\_\!\!\text{ max}}}\left( {{x}_{j}}\text{ }\!\!|\!\!\text{ }\lambda _{\text{UBM}}^{l} \right) \right)\text{=} \\ & \lg {{p}^{\max }}\left( {{x}_{j}}\text{ }\!\!|\!\!\text{ }\lambda _{\text{UBM}}^{l} \right)-\lg {{p}^{\text{sub }\!\!\_\!\!\text{ max}}}\left( {{x}_{j}}\text{ }\!\!|\!\!\text{ }\lambda _{\text{UBM}}^{l} \right), \\ & j=1,2,\ldots ,N,\text{ }l=1,2,\ldots ,M. \\ \end{align}$ (4)

其中: pmax(xj|λUBMl)为UBM的Gauss子分布对第j帧语音xj打分的最大值,psub_max(xj|λUBMl)为UBM的Gauss子分布对xj打分的次大值,N表示语音帧数,M表示Gauss分布数,rlsj为第j帧语音的似然打分比。

图 2显示重叠语音中说话人数目和rls之间的关系,UBM模型训练和重叠语音的生成如节1.1所述。可以看出随着混叠说话人数和UBM Gauss分布数的增加,rls在不断下降,因此rls特征也可以用于区分重叠语音和非重叠语音。

图 2 不同数目说话人重叠语音rls的值

1.3 重叠和非重叠语音的高层信息特征对比

为了进一步验证节1.1和1.2所提特征对重叠语音检测的有效性,本文分析连续语音中重叠语音和非重叠语音的高层信息特征rhopsrls对比情况。由于rhops为基于语音段的特征,本文提出对应第j帧的rjhops特征可以通过以该帧为中心的窗对应的rhops特征来表示,如图 3所示。

图 3 基于帧的类音素符号转换率提取

重叠和非重叠语音的高层信息特征对比的实验结果见图 4,其中rls的值经过了归一化处理。每个窗内表示的是重叠语音部分。可以看出,重叠语音的rhops要高于非重叠语音的,而rls要低于对应的非重叠语音的,因此本文所提的高层信息特征适合用于重叠语音检测。

图 4 重叠语音和非重叠语音的高层信息特征对比

2 重叠语音检测系统

重叠语音检测系统主要包括2个部分: HMM模型训练过程(见图 5中虚线流程)和重叠语音检测过程(见图 5中实线流程)。

图 5 重叠语音检测的原理框图

2.1 HMM模型训练

在训练阶段,首先对训练语音进行预处理(包括分帧、预加重和语音激活检测等),去除静音段。然后分别提取语音的MFCC、 rhopsrls,其中rhopsrls的提取过程需要根据UBM模型计算,具体过程见节1。最后通过融合高层信息特征和MFCC特征训练两状态的HMM模型,每个状态由1个GMM模型表示,GMMs和GMMo分别表示非重叠语音状态和重叠语音状态。

2.2 重叠语音检测

在重叠语音检测阶段,首先待检测语音经过预处理和特征提取过程,然后利用训练好的HMM模型进行解码,判别重叠语音和非重叠语音。在解码过程中,为了降低重叠语音误检率,本文根据文[8]设定一个重叠插入惩罚因子(overlap insertion penalty,OIP),当重叠语音的HMM模型由单一说话人状态向重叠语音状态转移时,增加OIP项作为惩罚,反之则不增加,通过调整OIP可以改变重叠语音检测的结果。

3 实 验 3.1 实验数据和评价指标

本文的实验是在TIMIT语音数据库上进行的。TIMIT数据库有630个说话人的数据,每个人有10段语音。首先随机选取4 000段语音数据,提取每段语音的13维MFCC特征和其一阶、二阶差分特征用于训练UBM模型,UBM的Gauss分布数为256。 然后选取1 000段语音训练HMM模型,每段语音分别提取39维MFCC、 rhopsrls。 最后利用剩余的语音生成若干带有重叠语音的多说话人音段,分别作为发展集和测试集的数据,每个生成语音段的时长约60 s,其中重叠语音的长度占每段语音总长度的15%左右。

在重叠语音检测的实验中,本文在HMM模型框架下,对比分析MFCC特征和它与高层信息特征融合的特征对重叠语音的检测情况。采用准确率(precision,PRC)、召回率(recall,RCL)、 F1率和错误率(error,ERR)等指标评价重叠语音检测的性能。PRC反映检测到的真实重叠语音占所有检测结果的比例,RCL反映检测到的真实重叠语音占实际重叠语音的比例,F1为PRC和RCL的综合评价指标,ERR为重叠语音检测的虚警率和漏判率之和。因为重叠语音占每个音段总长度比例较小,所以ERR的比率可能大于100%。

在说话人分割实验中,本文以基于BIC(Bayesian information criterion,BIC)的说话人分割系统[12]作为基线系统,对比分析重叠语音检测对说话人分割性能影响。采用虚警率(false alarm rate,FAR)、漏检率(miss detection rate,MDR)和F1率等指标衡量说话人分割的性能。FAR是指虚警的变换点占检测到的所有变换点的比率,反映了说话人分割中过度切分的情况; MDR是指未检测到的变换点占所有真实变换点的比率,反映了说话人分割的准确程度。

3.2 实验结果和分析

实验1是在发展集的数据上,通过组合不同特征和调整OIP值比较系统对重叠语音检测的各项性能。实验中分别提取了MFCC、MFCC+rhops、 MFCC+rls、 MFCC+rhops+rls等特征,OIP的值从0到100区间以10为间隔调整,通过ERR、 F1、 RCL和PRC等指标对比来分析重叠语音检测的性能,具体的实验结果见图 6。因为重叠语音检测错误率可能会超过100%,所以纵坐标的最大值设为1.4。 可以看出,随着OIP的增加,PRC不断增加,RCL不断下降,ERR在OIP为10时达到最低点,然后不断提高,F1在OIP为10时达到最高点,然后不断下降。在说话人分割的任务中,一般要求重叠语音检测的错误率尽量的低,因此本文选择OIP等于10作为最佳工作点。

图 6 四种特征的重叠语音检测性能对比

实验2在测试集中分析重叠语音检测对说话人分割的影响,所参照的基线系统(baseline system)采用经典的基于BIC的说话人分割方法[12],重叠语音检测(overlapping speech detection,OSD)采用基于HMM的方法,具体的实验结果见表 1

表 1 重叠语音检测对说话人分割性能的影响
说话人分割方法MDR/%FAR/%F1
基线系统26.530.265.8
基线系统+OSD(MFCC)23.928.169.2
基线系统+OSD(MFCC+rhops+rls)22.527.471.8

可以看出,使用重叠语音检测对说话人分割的正确率有明显的提高。采用MFCC特征的重叠语音检测系统,说话人分割性能比基线系统在F1指标上有5.2%的相对提升,而融合本文所提出的高层信息特征后,说话人分割性能在F1指标上又相对提升了3.8%,因此本文提出的基于高层信息特征的重叠语音检测能有效地提高带重叠语音的说话人分割性能。

4 结 论

本文提出了基于UBM模型的语音高层信息特征提取方法,利用这种方法所提取的rhopsrls特征具有语言学信息、提取简单、不受噪声干扰的影响,能够有效区分重叠和非重叠的语音。实验表明: 在基于HMM模型的重叠语音检测系统中,融合高层信息特征和MFCC特征可以降低重叠语音检测的错误率。在说话人分割实验中,利用本文所提方法检测重叠语音后,说话人分割性能也得到明显提高。

参考文献
[1] Shriberg E, Stolcker A, Baron D. Observations on overlap:Finding and implications for automatic processing of multi-party conversation[C]//Proc 7th European Conference on Speech Communication and Technology. Aalborg, Denmark:ISCA, 2001:1359-1362.
[2] Sinclair M, King S. Where are the challenges in speaker diarization[C]//Proc International Conference on Acoustics, Speech, Signal and Signal Processing. Vancouver, Canada:IEEE, 2013:7741-7745.
[3] 马勇, 鲍长春. 说话人分割聚类研究进展[J]. 信号处理, 2013, 29(9): 1190–1199. MA Yong, BAO Changchun. Advance in speaker segmentation and clustering[J]. Journal of Signal Processing, 2013, 29(9): 1190–1199. (in Chinese)
[4] Kotti M, Moschou V, Kotropoulos C. Speaker segmentation and clustering[J]. Signal Processing, 2008.
[5] Otterson S, Ostendorf M. Efficient use of overlap information in speaker diarization[C]//Proc Conference Automatic Speech Recognition & Understanding, Kyoto, Japan:IEEE, 2007:683-686.
[6] Roakye K, Hornero B, Vinyals O, et al. Overlapped speech detection for improved diarization in multi-party meetings[C]//Proc International Conference on Acoustics, Speech, Signal and Signal Processing. Las Vegas, NV, USA:IEEE, 2008:4353-4356.
[7] Roakye K, Vinyals O, Friedland G. Improved overlapped speech handling for speaker diarization[C]//Proc International Speech Communication Association. Florence, Italy:ISCA, 2011:941-944.
[8] Zelenak M, Segura C, Luque J, et al. Simultaneous speech detection with spatial features for speaker diarization[J]. IEEE Transaction on Audio, Speech and Language Processing, 2012, 20(2): 436–446. DOI:10.1109/TASL.2011.2160167
[9] Geiger J T, Eyben F, Evans N, et al. Using linguistic information to detect overlapping speech[C]//Proc International Speech Communication Association. Lyon, France:ISCA, 2013:941-944.
[10] Yella S H, Bourlard H. Overlapping speech detection using long-term conversational features for speaker diarization in meeting room conversations[J]. IEEE Transaction on Audio, Speech and Language Processing, 2014, 22(12): 1688–1700. DOI:10.1109/TASLP.2014.2346315
[11] Reynolds D, Quatieri T, Dunn R. Speaker verification using adapted Gaussian mixture models[J]. Digital Signal Processing, 2000, 10(1): 19–41.
[12] Delacourt P, Wellekens C J. DISTBIC:A speaker-based segmentation for audio data indexing[J]. Speech Communication, 2000, 32(1): 111–126.