JFA方法的思想是使用GMM超矢量空间的子空间对说话人差异和信道差异分别建模,从而可以方便的分类出信道干扰。然而,Dehak注意到,在JFA模型中,信道因子中也会携带部分说话人的信息,在进行补偿时,会损失一部分说话人信息。
所以Dehak提出了全局差异空间模型,将说话人差异和信道差异作为一个整体进行建模。这种方法相比JFA具有以下优点:
- 改善了JFA对训练语料的要求
- 计算复杂度相比JFA更低,可以应对更大规模的数据
- 性能与JFA相当,结合PLDA的信道补偿,其信道鲁棒性更强。
1 I-vector算法原理
对于给定的utterance,其GMM supervector可分解为:
其中:
- \(M\): GMM Supervector
- \(m\):说话人无关超矢量(UBM超矢量)
- \(T\): 全局差异空间矩阵,低秩
- \(w\): 全局差异因子,它的后验均值即为i-vector矢量,服从\(N(0,1)\)先验分布 本征信道矩阵,低秩
1.1 Training
对于全局差异空间矩阵的训练,与JFA中本征音矩阵的训练一致。
1.2 Evalution
对于i-vector,可以采用余弦距离(cosine distance)对目标speaker和测试speaker的判决打分:
其识别框架如下:
2 PLDA
PLDA是一个概率生成模型,为了解决人脸识别的问题而提出。后被广泛应用的声纹领域,并产生了多重变种。主要有以下三种:
-
Standard
-
Simplified
-
Two Covariance
Reference [6]中将上述三种PLDA统一到了同一框架中,并实验验证Two-Covariance对声纹具有最好的性能
本文的讨论的主要是Reference [6]中提出的PLDA(Two Covariance PLDA,kaldi中采用的版本). 在介绍PLDA前,先简单介绍下LDA.
2.1 LDA
LDA 假设数据服从高斯分布,并且各类的协方差相同。各类的先验概率为\(\pi_k\),且
各类的概率分布为
对于观测数据,其类别的后验概率为
为了对数据进行分类,计算各类后验的似然比
由于假设协方差相同,似然比是关于输入 \(x\) 的线性函数。LDA 用一系列超平面划分数据空间,进而完成分类。 如下图
LDA还可以对数据进行降维,但它无法出类训练数据中未出现的类别数据。
2.2 Two Covariance PLDA
如果把类别\(\boldsymbol{y}\)当作隐变量,对其进行建模,就可以处理未知类别的样本数据。
其中
- \(\Phi_w\)为正定矩阵,反映了类内差异
- \(\Phi_b\)为半正定矩阵,反映了类间差异
此时可以对\(\Phi_w\)和\(\Phi_b\)做合同对角化,即
其中 \(\Psi\)为对角阵,\(I\)为单位阵。
令\(A = V^{-1}\), PLDA可以等价为
其中,\(\Psi\)反映类间差异,\(I\)反映类内差异
2.2.1 Evaluation
对每个观测变量\(x\),可以先做变换得到
对给定的一组同类观测数据\(u_1, …, u_n\),类别\(v\)的后验概率为
其中\(\bar{u} = \frac{1}{n}\sum_{i=1}^{n} u_i\)。
因此,对于未知的数据点\(u^p\)和已知某类的若干数据点\(u_1^g, …, u_n^g\), \(u^p\)的属于该类的概率为
\(u^p\)不属于任何类的概率为
其中\(C = - \frac{1}{2} d\ln 2 \pi\)为常量,与数据无关,\(d\)为数据的维度。
因此,利用PLDA做说话人识别时,
-
对于说话人识别,计算最大似然度
-
对于说话人验证,计算似然比
更多关于PLDA打分的内容可参考Reference [8]
2.2.2 Training
PLDA中,需要估计的参数有\(A\), \(\Psi\), \(m\)。
- 对于每类样本数相同(若样本数不一致,可做上采样)的场景,可以直接求解。可参考【Reference 6】
- EM算法,参考【Reference 7】
之后有时间再补上
2.3 Length Normalization
经过PLDA变换之后,我们一般还有在做Length Normalization,可以进一步提升性能,为何要做Length Normalization?主要基于以下两点考虑:
- PLDA基于高斯假设
- 样本较少时数据服从学生$t$分布,通过whithen和 Length Norm进行补偿。
那么Length Normalization 是如何做的呢?主要分为两步:
- Centering and whitening(PLDA变换中已完成)
- Scaling
or (Kaldi中采用的方式)
更多可参考【Reference 5,9】
Reference
[1] Front-End Factor Analysis for Speaker Verification
[2] A Straightforward and Efficient Implementation of the Factor Analysis Model for Speaker Verification
[3] A Small Footprint i-Vector Extractor
[4] Probabilistic Linear Discriminant Analysis for Inferences About Identity
[5] Analysis of I-vector Length Normalization in Speaker Recognition Systems
[6] Probabilistic Linear Discriminant Analysis
[7] Unifying Probabilistic Linear Discriminant Analysis Variants in Biometric Authentication
[8] From single to multiple enrollment i-vectors: Practical PLDA scoring variants for speaker verification
[9] ROBUST SPEAKER RECOGNITION BASED ON LATENT VARIABLE MODELS