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

一、意义

训练过程中,UBM通过MAP自适应,可以得到每个说话人的GMM模型。
MAP(Maximum A Posteriori,最大后验准则)算法_第1张图片

二、算法示意图

MAP(Maximum A Posteriori,最大后验准则)算法_第2张图片

三、算法过程
1. 与EM算法中的E-Step相同
  • 已知
    a. O = { o 1 , o 2 , . . . , o T } O=\{o_1, o_2, ..., o_T\} O={o1,o2,...,oT}:某一个说话人的矢量特征。
    b. i i i:UBM的某个高斯分量。
    c. λ = { w i , u i , Σ i ∣ i = 1 , 2 , . . . , M } \lambda=\{w_i, u_i, \Sigma_i|i=1, 2, ..., M\} λ={wi,ui,Σii=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)} P(iot,λ)=j=1Mwjp(otuj,Σj)wip(otui,Σi)
  • 导出公式
    a. 训练语音 属于第 i i i个高斯分量的帧数( T T T:训练语音的帧数)
    n i = ∑ t = 1 T P ( i ∣ o t , λ ) n_i=\sum_{t=1}^TP(i|o_t, \lambda) ni=t=1TP(iot,λ)
    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 Ei[o]=ni1t=1TP(iot,λ)ot
    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 Ei[ooT]=ni1t=1TP(iot,λ)ototT
2. 用 n i n_i ni得到的修正因子更新旧的UBM参数 λ \lambda λ
  • 已知
    a. β i = n i n i + γ \beta_i=\frac{n_i}{n_i+\gamma} βi=ni+γni:高斯分量的权重、均值向量、协方差矩阵的修正因子。
    作用:平衡GMM模型的新旧参数。(值越大说明数据越充分,新参数越可信)
    b. γ \gamma γ:关系因子。
    作用:约束修正因子 β i \beta_i β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 w^i=[Tβini+(1βi)wi]γ
    b. u ^ i = β i E i [ o ] + ( 1 − β i ) u i \hat{u}_i=\beta_iE_i[o]+(1-\beta_i)u_i u^i=βiEi[o]+(1βi)ui
    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 Σ^i=βiEi[ooT]+(1βi)(Σi+uiuiT)u^iu^iT

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

你可能感兴趣的:(论文基础知识点)