声纹识别GMM-UBM

背景:

 说话人识别过程主要有三个模块,分别为:特征提取,模型训练以及模式匹配与判决。训练模块的内容是:从说话人提供的若干语音中 提取能反映个性的特征,并为其建立说话人模型,等待识别模块调用;识别模块的内容是:提取 待测语音特征并判断待测语音的身份。
声纹识别GMM-UBM_第1张图片
 GMM(高斯混合模型)–用多个高斯概率密度函数的加权可以平滑的逼近任意形状的概率密度函数,对实际数据有极强的表现力。GMM规模越庞大,表征力越强,但随着参数规模等比例的膨胀,需要更多的数据来驱动GMM的参数训练才能得到一个更加通用(或称泛化)的GMM模型。
声纹识别GMM-UBM_第2张图片
 UBM(Universal Background Model, 通用背景模型)—可以用UBM和少量的说话人数据,通过自适应算法(如最大后验概率MAP、最大似然线性回归MLLR等,本文选择阐述MAP算法)来得到目标说话人模型。
 GMM-UBM实际上是一种对GMM的改进方法,我们既然没法从目标用户那里收集到足够的语音,那就换一种思路,可以从其他地方收集到大量非目标用户的声音,我们将这些非目标用户数据(声纹识别领域称为背景数据)混合起来充分训练出一个GMM,这个GMM可以看作是对语音的表征,但它是从大量身份的混杂数据中训练而成,不具备表征具体身份的能力。我们可以把这种模型看作是某一个具体说话人模型的先验模型。形象的比方就是说你准备去相亲,媒人给你看了小莉的照片,你耳边浮现的肯定是小莉各种可能的温柔的声音,而不是你家旺财的叫声(会接近想要学习的某特征类边缘)。
 我们可以提前训练GMM,然后将目标用户的数据在这个模型上进行参数的微调即可。GMM-UBM模型最重要的优势就是通过MAP算法对模型参数进行自适应,不必调整目标用户GMM的所有参数(权重,均值,方差)只需要对各个高斯成分的均值参数进行估计,就能实现最好的识别性能。 根据实验表明,这可以让待估的参数减少超过一半,越少的参数也意味着更快的收敛,不需要那么多的目标用户数据即可模型的良好训练。
声纹识别GMM-UBM_第3张图片

 使用大量的目标用户训练数据直接训练GMM的过程如上图左所示
 使用GMM-UBM的方法如上图右所示,首先用背景数据训练一个UBM模型,然后用目标用户数据对GMM模型进行自适应。
EM算法:期望最大化算法
MAP自适应算法
(1)使用目标说话人的训练数据计算出UBM模型的新参数(高斯权重、均值和方差)
(2)将得到的新参数和UBM模型的原参数进行融合,从而得到说话者模型。
声纹识别GMM-UBM_第4张图片
因为UBM训练的是一个均一化模型,当要让它迁移到特定说话人 X = X 1 , X 2 , X 3 , . . . , X n X={X_1,X_2,X_3,...,X_n} X=X1,X2,X3,...,Xn的特征,需要计算UBM的第i个高斯分布和X的高斯分布 X i X_i Xi的相似度,然后得到新的权重、均值、方差,用新的参数去更新原来的UBM,就得到特定说话者X的自适应模型。

参考博客:
【1】声纹识别之GMM-UBM系统框架简介 https://blog.csdn.net/weixin_38206214/article/details/81084456
【2】ivector的计算提取
https://blog.csdn.net/weixin_38206214/article/details/81096092

你可能感兴趣的:(合成基础)