作为一种生物特征识别技术,语音识别与指纹识别、人脸识别等技术,在模式识别领域发挥着重要作用。考虑到语音信号的采集属于非接触式、易于获取,且在保护人类隐私具有独特优势,采用语音信号对人类身份进行认证,即说话人识别,一直受到国内外专家学者的广泛关注。具体的说话人识别过程涉及声学特征的获取、识别模型的构建2个方面。目前在语音识别领域普遍采用的声学特征主要包括线性预测系数(linear predictive cepstrum coefficients, LPCC)、梅尔频率倒谱系数、语谱图等[1]。特别地,由于语谱图所包含的语音信息更加完备,以及图像处理技术的发展,使得语谱图在众多声学特征中的地位更加突出。文献[2]提出了一个基于语谱图的说话人识别系统,该系统利用Radon变换获得语谱图中有效的声学特征,并通过离散余弦变换降低特征向量的维度。文献[3]通过图像增强的方法,求取窄带语谱图上谐波成分的分布区域,然后求和得到共振峰谐波能量参数作为特征来构建语音和端点检测系统。
随着模式识别技术的不断进步,在说话人识别领域也出现了众多富有成效的识别模型,常见的有高斯混合模型(gaussian mixture models, GMMs)[4]、GMM结合通用背景模型(gaussian mixture model-universal background model, GMM-UBM)[5]、联合因子分析(joint factor analysis, JFA)[6]等。值得一提的是,近年来在这些模型使用上述声学特征进行说话人识别的过程中,演化出一种新的声学特征向量,即身份认证向量,引起了研究者的极大兴趣。传统的JFA建模过程主要基于2个不一样的空间:由本征音空间(eigenvoice space)矩阵定义的说话人空间,以及由本征信道空间(eigenchannel space)矩阵定义的信道空间[7]。在JFA理论的基础上,Dehak[8]从GMM均值超向量(高维向量)中提取一个更为紧凑的向量,称为身份认证向量(i-vector),它是由总体变化因子组成的向量,用来表示说话人的身份标识。身份认证向量方法采用一个新空间(total variability space, 即总体变化空间)来代替本征音空间和本征信道空间,通过EM算法获得映射矩阵(表示从身份认证向量到高斯均值超向量的映射),该映射矩阵不仅包含不同说话人之间的差异信息,同时也包含了信道之间的差别信息[9]。因此,i-vector的建模过程在GMM均值超向量中并不严格区分说话人的影响以及信道的影响。这种建模方法基于Dehak的另一个研究:JFA建模后的信道因子中不但包含了信道效应,同时也夹杂着说话人的信息[10]。
现有的i-vector方法采用的是MFCC特征,但MFCC降低了各维度之间的相关性,说话人特征的信息并不完整。而语谱图由于综合了时域波形和频谱图的优点,有可能弥补这些缺点。因此,提出了基于语谱特征的i-vector说话人识别方法。整个识别过程主要分为训练阶段和测试阶段。在训练阶段,先对输入的语音信号进行预加重、分帧加窗,以完成预处理,其中,预加重即发送端对输入信号高频分量的提升,分帧指对语音信号划分为多个短时的语音段,而加窗是为了使帧和帧之间能够平滑地过渡。预处理的语音信号通过短时傅立叶变换(short-time fourier transform, STFT)转换成语谱图;接着对语谱图进行i-vector建模,并将提取到的i-vector存入说话人模型库中。在测试阶段,也用同样的方法对语音信号进行预处理、语谱特征提取以及i-vector建模。最后采用对数似然比(LLR)方法对2个阶段的i-vector进行比对,完成说话人识别。
1 基于语谱特征的i-vector说话人识别方法 1.1 语谱图语谱图(spectrogram),即语音频谱图,其x轴表示时间,y轴表示频率。另外,语谱图通过图像中每个点的强度或颜色隐含了第三维来表示能量值的大小,颜色越深,该点的语音能量越强[11]。其基本数学表达式为[12]
$x\prime \left( t \right) = {\rm{STFT}}\left\{ {x\left( t \right)} \right\} \equiv X\left( {\tau ,\omega } \right) = \int\limits_{\tau = 0}^n {x\left( \tau \right)} \omega \left( {t - \tau } \right){{\rm{e}}^{ - j\omega \tau }}{\rm{d}}t,$ | (1) |
其中:x(t)表示语音的时间信号,t表示时间;ω(t)表示窗函数。采用的是海明(Hamming)窗。通常情况下,X(τ, ω)是x(τ)ω(t-τ)的傅立叶变换形式,表示信号随时间和频率变化的相位和大小。为了抑制STFT的相位的跳跃不连续性,在时间轴τ和频率轴ω进行相位展开。时间指数τ通常被认为是“慢”时间,不会在与时间t同样的高分辨率上进行表示。需要指出的是,实际的计算机仿真中,使用的是离散语音信号,因此采用STFT的离散形式,即
${\rm{STFT}}\left\{ {x\left[ n \right]} \right\} \equiv X\left( {m,\omega } \right) = \sum\limits_{m = - \infty }^\infty {x\left[ m \right]} \omega \left[ {n - m} \right]{{\rm{e}}^{ - j\omega m}},$ | (2) |
其中,x[n]表示语音信号ω[n]表示窗函数。
1.2 i-vector说话人识别模型得到语谱图之后,就将语谱图中的第三维,即能量值,作为声学特征输入到i-vector说话人模型中进行训练和测试。i-vector说话人建模方法基于GMM-UBM模型,其基本思想是假设说话人信息(包含说话人个性特征的信息)和信道信息(指语音信号采集通道的特征信息)同时处于GMM高维均值超向量空间中的一个低维线性子空间流型结构中[13],表示为
$\mathit{\boldsymbol{M}} = \mathit{\boldsymbol{m}} + \mathit{\boldsymbol{T}}\cdot\mathit{\boldsymbol{w}},$ | (3) |
其中,M表示GMM均值超向量;m表示UBM超向量,该向量与说话人和信道无关[14];T表示总体变化矩阵;w表示空间里的一个正态分布随机向量,也称总体因子,即i-vector。在这种方法中,假定T作为协方差矩阵、m作为均值向量,对M进行正态分布。
假设说话人s的声学特征为xs, t,其总体因子w的估计过程如下:
1) 计算xs, t相对于UBM均值超向量m的零阶统计量Nc, s、一阶统计量Fc, s以及二阶统计量Sc, s:,用来分别表示混合权值、均值向量、协方差矩阵所对应的Baum-Welch统计量[13]
${N_{c,s}} = \sum\limits_t {{\gamma _{c,s,t}}} ,$ | (4) |
${F_{c,s}} = \sum\limits_t {{\gamma _{c,s,t}}} ({\mathit{\boldsymbol{x}}_{s,t}} - {\mathit{\boldsymbol{m}}_c}),$ | (5) |
${S_{c,s}} = {\rm{diag}}\left\{ {\sum\limits_t {{\gamma _{c,s,t}}} ({\mathit{\boldsymbol{x}}_{s,t}} - {\mathit{\boldsymbol{m}}_c}){{({\mathit{\boldsymbol{x}}_{s,t}} - {\mathit{\boldsymbol{m}}_c})}^{\rm{T}}}} \right\},$ | (6) |
其中:t表示时间帧索引;γc, s, t表示UBM第c个高斯分量的后验概率;mc表示m中的第c个高斯均值分量;diag{·}表示取对角运算。
2) 估计因子w的一阶统计量以及二阶统计量
${\mathit{\boldsymbol{L}}_s} = I + {\mathit{\boldsymbol{T}}^{\rm{T}}}{\sum ^{ - 1}}{\mathit{\boldsymbol{N}}_s}\mathit{\boldsymbol{T}},$ | (7) |
$E[{\mathit{\boldsymbol{w}}_s}] = \mathit{\boldsymbol{L}}_s^{ - 1}{\mathit{\boldsymbol{T}}^{\rm{T}}}{\sum ^{ - 1}}{F_s},$ | (8) |
$E[{\mathit{\boldsymbol{w}}_s},\mathit{\boldsymbol{w}}_s^{\rm{T}}\left] { = E} \right[{\mathit{\boldsymbol{w}}_s}\left] E \right[\mathit{\boldsymbol{w}}_s^{\rm{T}}] + {\mathit{\boldsymbol{L}}^{ - 1}}_s,$ | (9) |
其中:Ls是临时变量;∑表示UBM的协方差矩阵;Ns是由Nc, s作为主对角元拼接成的FC×FC维矩阵;Fs是由Fc, s向量拼接成的FC×1维向量。
3) 更新T矩阵
$\sum\limits_s {{\mathit{\boldsymbol{N}}_s}\mathit{\boldsymbol{TE}}} [{w_s},w_s^{\rm{T}}] = \sum\limits_s {{\mathit{\boldsymbol{F}}_s}\mathit{\boldsymbol{E}}} [{w_s}]。$ | (10) |
4) 更新协方差矩阵∑
$\sum = {\mathit{\boldsymbol{N}}^{ - 1}}\sum\limits_s {{\mathit{\boldsymbol{S}}_s} - {\mathit{\boldsymbol{N}}^{ - 1}}} {\rm{diag}}\left\{ {\sum\limits_s {{\mathit{\boldsymbol{F}}_s}} \mathit{\boldsymbol{E}}[w_s^{\rm{T}}]{\mathit{\boldsymbol{T}}^{\rm{T}}}} \right\},$ | (11) |
其中:Ss是由Sc, s进行矩阵对角拼接成的FC×FC维矩阵;N=∑Ns。
对上述步骤反复迭代,进行6到8次后,可近似认为T和∑收敛。
由于上述步骤没有采用鉴别性准则,还需要利用线性鉴别性分析(linear discriminant analysis, LDA)对初始i-vector进行鉴别性降维。
利用EM算法从观测值中学习高斯概率LDA(gaussian probabilistic linear discriminant analysis, G-PLDA)模型。观测值为从开发集(development set)中计算得到的i-vector。其因子分析(factor analysis, FA)模型如下所示
$\mathit{\boldsymbol{w}} = \mathit{\boldsymbol{m}} + \mathit{\boldsymbol{ \boldsymbol{\varPhi} }} \cdot y + {\rm{ \mathsf{ ε} }}12,$ | (12) |
其中:w是i-vector;m表示训练i-vector的均值;Φ是因子载荷矩阵(factor loading matrix),即本征音空间;y是一个服从标准正态分布N(0, I)的潜在因子向量;ε为残差。
最后用对数似然比来计算得分
$llr = {\rm{ln}}\frac{{p({w_1},{w_2}|{H_1})}}{{p({w_1}|{H_0}) \cdot p({w_2}|{H_0})}},$ | (13) |
其中:H0和H1假设分别定义为
① H0:w1,w2来自不同的说话人;
② H1:w1,w2来自相同的说话人;
则p(x|H)表示w在假设H下的似然度。
2 实验结果及讨论针对所提到的基于语谱特征的i-vector说话人识别方法的性能进行数值仿真验证。实验中采用TIMIT标准语料库来对模型进行训练和测试。TIMIT标准语料库里一共有630个说话人,每人有10句话。将进行2组对比实验:1) 选择其中的400个说话人来训练背景模型,剩下的230个说话人,取每个人的5句话用来训练每个说话人的i-vector,剩下1句话用来测试;2) 选择其中的530个说话人来训练背景模型,剩下的100个说话人,取每个人的9句话用来训练每个说话人的i-vector,剩下1句话用来测试,如表 1所示。
基于语谱特征的i-vector说话人识别方法流程如图 1所示。
图 2表示了说话人1对句子“She had your dark suit in greasy wash water all year.”的发音的语音信号波形图以及对应的语谱图。波形图中的x轴表示时间,y轴表示振幅;语谱图中的x轴同样表示时间,而y轴表示频率。
实验中使用的UBM混合数设置为256,高斯概率密度的方差采用对角阵。I-vector中总体变化子空间矩阵T的子空间维数即列数设置为400,训练时迭代次数为5次。取LDA矩阵降维后的维数为200。图 3表示说话人1分别使用MFCC和语谱特征训练背景模型计算得到的i-vector特征向量。其中,实线和虚线分别表示训练和测试时提取的i-vector向量。
本实验采用NIST等错误率和DETDET(detection error trade-offs)曲线作为评测指标[15]。图 4给出了基于不同特征下i-vector系统的DET曲线以及等错误率EER。DET曲线表示(false negative rate, FNR)与(positive rate, FPR)之间的关系。
其中,加粗实线表示以MFCC为特征的i-vector说话人识别系统的DET曲线,加粗虚线表示以语谱图为特征的i-vector说话人识别系统的DET曲线,它们与斜线的交点即为对应的EER值,此时FNR=FPR。从图中可以看出,实验(1) 中,以MFCC为特征的系统等错误率为3.753 6%,以语谱图为特征的系统等错误率为2.608 7%;实验(2) 中,以MFCC为特征的系统等错误率为2.424 2%,以语谱图为特征的系统等错误率为0.060 6%。
实验结果表明,以语谱图为特征可以有效i-vector识别系统的。
3 结论探索性地研究了利用语谱特征作为声学特征的i-vector识别方法,并与基于MFCC作为特征的识别性能进行比较。以TIMIT标准语料库为训练和测试数据库的实验结果表明,语谱特征相对于MFCC,能够更好地表征说话人的信息,基于语谱特征的i-vector说话人识别方法的性能比以MFCC作为特征的方法等错误率更低。
[1] | Misra S, Das T K, Saha P, et al. Comparison of MFCC and LPCC for a fixed phrase speaker verification system, time complexity and failure analysis[C]//Circuit, Power and Computing Technologies (ICCPCT), 2015 International Conference on.[S.L.]:IEEE, 2015:1-4. |
[2] | Ajmera P K, Jadhav D V, Holambe R S. Text-independent speaker identification using Radon and discrete cosine transforms based features from speech spectrogram[J]. Pattern Recognition, 2011, 44(10): 2749–2759. |
[3] |
刘红星, 戴蓓蒨, 陆伟.
基于共振峰谐波能量的语音端点检测[J]. 清华大学学报:自然科学版, 2008(S1): 24–30.
LIU Hongxing, Dai Peiqian, LU Wei. Speech endpoint detection based on the formant consonance energy[J]. Journal of Tsinghua Unversity, 2008(S1): 24–30. (in Chinese) |
[4] | Chen M G, Sui B C, Gao Y, et al. Efficient video cutout based on adaptive multilevel banded method[J]. Science China Information Sciences, 2012, 55(5): 1082–1092. DOI:10.1007/s11432-012-4560-4 |
[5] | Yuan D, Liang L U, Xian Y Z, et al. Studies on model distance normalization approach in text-independent speaker verification[J]. Acta Automatica Sinica, 2009, 35(5): 556–560. DOI:10.1016/S1874-1029(08)60086-5 |
[6] | Verma P, Das P K. i-Vectors in speech processing applications:a survey[J]. International Journal of Speech Technology, 2015, 18(4): 529–546. DOI:10.1007/s10772-015-9295-3 |
[7] | Aronowitz H, Barkan O. New developments in joint factor analysis for speaker verification[C]//Twelfth Annual Conference of the International Speech Communication Association.[S.L.]. IEEE, 2011. |
[8] | Dehak N, Karam Z N, Reynolds D A, et al. A channel-blind system for speaker verification[C]//Acoustics, Speech and Signal Processing (ICASSP).[S.L.]:IEEE, 2011:4536-4539. |
[9] | Li M, Narayanan S. Simplified supervised i-vector modeling with application to robust and efficient language identification and speaker verification[J]. Computer Speech & Language, 2014, 28(4): 940–958. |
[10] | Dehak N. Discriminative and generative approaches for long-and short-term speaker characteristics modeling:application to speaker verification[M]. Canada:Ecole de Technologie Superieure, 2009. |
[11] | Cadore J, Valverde-Albacete F J, Gallardo-Antolín A, et al. Auditory-inspired morphological processing of speech spectrograms:Applications in automatic speech recognition and speech enhancement[J]. Cognitive Computation, 2013, 5(4): 426–441. DOI:10.1007/s12559-012-9196-6 |
[12] | Lu W, Zhang Q. Deconvolutive short-time Fourier transform spectrogram[J]. Signal Processing Letters, IEEE, 2009, 16(7): 576–579. DOI:10.1109/LSP.2009.2020887 |
[13] |
栗志意, 张卫强, 何亮, 等.
基于总体变化子空间自适应的i-vector说话人识别系统研究[J]. 自动化学报, 2014, 40(8): 1836–1840.
LI Zhiyi, ZHANG Weiqiang, He Liang, et al. Total variability subspace adaptation based speaker recognition[J]. Journal of Automatica Sinca, 2014, 40(8): 1836–1840. (in Chinese) |
[14] | Li W, Fu T, Zhu J. An improved i-vector extraction algorithm for speaker verification[J]. Eurasip Journal on Audio, Speech and Music Processing, 2015, 2015(1): 1–9. DOI:10.1186/s13636-014-0045-2 |
[15] | Hu Y, Loizou P C. Evaluation of objective quality measures for speech enhancement[J]. Audio, Speech and Language Processing, IEEE Transactions on, 2008, 16(1): 229–238. DOI:10.1109/TASL.2007.911054 |