MAP(Maximum A Posteriori,最大后验准则)算法

一、意义

训练过程中,UBM通过MAP自适应,可以得到每个说话人的GMM模型。
在这里插入图片描述

二、算法示意图

在这里插入图片描述

三、算法过程
1. 与EM算法中的E-Step相同
  • 已知
    a. O = { o 1 , o 2 , . . . , o T } O=\{o_1, o_2, ..., o_T\} :某一个说话人的矢量特征。
    b. i i :UBM的某个高斯分量。
    c. λ = { w i , u i , Σ i i = 1 , 2 , . . . , M } \lambda=\{w_i, u_i, \Sigma_i|i=1, 2, ..., M\} :UBM的参数,共有M阶高斯分量。
  • 目标:计算该矢量特征序列中 每个向量 对于UBM中每个高斯分量的后验概率分布。
  • 公式
    P ( i o t , λ ) = w i p ( o t u i , Σ i ) j = 1 M w j p ( o t u j , Σ j ) P(i|o_t, \lambda)=\frac{w_ip(o_t|u_i, \Sigma_i)}{\sum_{j=1}^Mw_jp(o_t|u_j, \Sigma_j)}
  • 导出公式
    a. 训练语音 属于第 i i 个高斯分量的帧数( T T :训练语音的帧数)
    n i = t = 1 T P ( i o t , λ ) n_i=\sum_{t=1}^TP(i|o_t, \lambda)
    b. E i [ o ] = 1 n i t = 1 T P ( i o t , λ ) o t E_i[o]=\frac{1}{n_i}\sum_{t=1}^TP(i|o_t, \lambda)o_t
    c. E i [ o o T ] = 1 n i t = 1 T P ( i o t , λ ) o t o t T E_i[oo^T]=\frac{1}{n_i}\sum_{t=1}^TP(i|o_t, \lambda)o_to_t^T
2. 用 n i n_i 得到的修正因子更新旧的UBM参数 λ \lambda
  • 已知
    a. β i = n i n i + γ \beta_i=\frac{n_i}{n_i+\gamma} :高斯分量的权重、均值向量、协方差矩阵的修正因子。
    作用:平衡GMM模型的新旧参数。(值越大说明数据越充分,新参数越可信)
    b. γ \gamma :关系因子。
    作用:约束修正因子 β i \beta_i 的变化尺度,让所有混合权值和为1。(常取16)
  • 更新公式
    a. w ^ i = [ β i n i T + ( 1 β i ) w i ] γ \hat{w}_i=[\frac{\beta_in_i}{T}+(1-\beta_i)w_i]\gamma
    b. u ^ i = β i E i [ o ] + ( 1 β i ) u i \hat{u}_i=\beta_iE_i[o]+(1-\beta_i)u_i
    c. Σ ^ i = β i E i [ o o T ] + ( 1 β i ) ( Σ i + u i u i T ) u ^ i u ^ i T \hat{\Sigma}_i=\beta_iE_i[oo^T]+(1-\beta_i)(\Sigma_i+u_iu_i^T)-\hat{u}_i\hat{u}_i^T

参考论文:基于GMM-UBM模型的说话人识别系统的第39-40页。

发布了37 篇原创文章 · 获赞 0 · 访问量 756

猜你喜欢

转载自blog.csdn.net/weixin_40680322/article/details/103832924