triphone通常是用在“连续语音识别”的系统里的,这样的系统中viterbi不会用在单个的triphone HMM上。“数字识别”这类离散识别的任务可能会出现viterbi用在单个HMM上的情况,其中每个数字用一个HMM表示,包含十几到几十个状态。这种情况下不需要用到beam,因为状态不多,viterbi算起来也很快。然后是beam search。beam search是viterbi的一种近似解法。需要近似的原因是通常”连续语音识别“的解码图通常很大(由上千个HMM加上词典和语言模型生成),状态数都是以万记。在这个图上运行标准的viterbi太慢,所以用一个beam来进行剪枝,降低复杂性。而且发现beam pruning之后的结果并没有很差,所以大型系统的viterbi都用beam。

链接:https://www.zhihu.com/question/265061248/answer/289710782

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐