Kaldi GMM-HMM中GMM成分更新过程

Kaldi GMM-HMM中GMM成分更新过程

在使用kaldi的脚本的时候,发现在训练gmm-hmm模型的时候,就指定了总的混合高斯的数量totgauss,但是每个phone的发射状态是一个gmm,每个gmm的成分是多少呢?查了好久没找到答案,看了kaldi里的源码,才发现,真是厉害啊。
在这里插入图片描述
kaldi里是每次分配给一个gmm一个成分,然后每次进行迭代增加的,有一个参数指定最大增加迭代次数:max_iter_inc,表示的是高斯成分增加的轮数。这样用总的高斯数和增加的轮数就可以计算每轮最多增加多少个高斯成分了:

incgauss=$[($totgauss-$numgauss)/$max_iter_inc] # per-iter increment for #Gauss

那每次哪些gmm的成分进行增加呢?

kaldi里面每次根据每个gmm的占有情况来进行gmm成分的修改,其实就是统计每个gmm的帧数,帧数越多的gmm优先拿来进行成分的增加。
假设一个gmm的分布如下:
图1
单个成分的gmm分布:

  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值