-
【微信群搬运】关于HMM相关对齐问题的讨论
——来自《语音算法:前沿与应用- 第一期》·70浏览
辛苦, 内容很全面~, 个人一点建议,可以针对问题主要内容进行抽离和总结。
比如:
【问题】GMM建模为什么更适合用MFCC而不是FBank?
【回答讨论】:
lucas 03:54
[引用:gmm是求hmm中某个状态的对应当前帧的发射概率。你说的部分是采用em算法的时候找到某个状态对应一组mfcc,用来更新gmm参数,并且由于fbank的各个向量存在相关性,不可以使用在hmm模型中,而采用进行了dct最后mfcc作为输入]
理论也不是不可以相关输入,只是为了大量减少参数估计,如传统一般把gmm协方差矩阵假设只为对角矩阵,然后通过对特征维度去相关变换来做。李先刚 | Xiangang Li 10:03
[引用:我认为实际上可以,因为你可以忽略这些要求,直接送入fbank,实际准确率就会比使用mfcc来得低;理论上反倒是不可以,因为hmm的2个假设的其中一个是观察独立性假设,这个独立性可以从2层理解,第一从上下文的角度,第二从向量本身。第一条其实是不成立的,因为各帧之间就是有关联的;而第二点我们可以通过去相关性得到满足。
]
13维mfcc的各维独立主要还是为了降低gmm复杂度考虑的,与hmm本身关系不是很大,之前有很多研究讨论这一块。此外在实际操作的时候本身其实做得比较糙,13维mfcc做了一阶二阶差分后,其实是有一些相关性的,例如之前就有研究修改对应的gmm等,但是收益其实不是很大。axego 10:17
[引用:13维mfcc的各维独立主要还是为了降低gmm复杂度考虑的,与hmm本身关系不是很大,之前有很多研究讨论这一块。此外在实际操作的时候本身其实做得比较糙,13维mfcc做了一阶二阶差分后,其实是有一些相关性的,例如之前就有研究修改对应的gmm等,但是收益其实不是很大。]
我理解了,就是让每个高斯之间区分性更好,非常感谢李先刚 | Xiangang Li 10:31
[引用:我理解了,就是让每个高斯之间区分性更好,非常感谢]
需要从这个角度理解会更合适:对于gmm建模来说,当特征的各维不独立的时候,例如fbank,就需要把一整个向量来统计均值方差,就意味着gmm中的每个高斯都的均值矩阵和方差矩阵都需要得是全矩阵。当特征各维独立的时候,如13维mfcc,则可以把每一维特征单独来看,也就是说,这时候gmm的每一个高斯的均值方差矩阵都可以直接是对角矩阵。刚才提到的从13mfcc差分后到39mfcc,严格来说,从这个角度来考虑,需要将39维mfcc特征做一些特殊排列后,采用三对角矩阵是更合理的,但实际操作大家没这么做。实际操作中为什么那么倾向于只用对角矩阵,主要还是因为参数量的考虑,参数量少了就对数据库规模要求就更低,参数量少了就使得计算也更高效
李先刚 | Xiangang Li 10:35mfcc、fbank、gmm这些事,一般的教程里面都不太会讲到,大家能讨论到这个点上,挺好的。希望对大家的理解有帮助
