我一直在阅读有关HMM理论的文章。据我了解,我们需要初始概率,过渡概率和发射概率来与HMM相结合。我看到的有关HMM实施的示例在开始时就定义了所有这些概率。但是问题是我想使用HMM识别手势,而且我还无法弄清楚如何定义概率(即转移概率和发射概率矩阵)。我知道如何使用维特比算法来获得最佳序列,或者如何使用向前-向后进行推理,这只是我担心的起始概率
谁能指导我这一点。
最佳答案
实际上,隐藏马尔可夫模型有三种主要算法,您提到了三种算法中的两种:
向前-向后算法。
维特比算法
Baum Welch algorithm:从训练数据中推断参数(初始概率,过渡概率,发射概率)。
Baum-Welch算法基本上是一种期望最大化算法,其中您从随机起始参数开始,然后使用前向后向算法计算初始参数的最大似然值并进行迭代。 this lecture note中给出了一个很好的带有伪代码的算法说明。它还讨论了语音识别的相关问题,这是HMM的非常成功的应用。不幸的是,它没有讨论Baum-Welch或其他算法通常很难在实践中实现的事实,因为概率变得非常小。因此,在实践中,您要么必须谨慎使用缩放比例,使用对数概率,要么使用sci-kit Learn对HMM的实现,其中包括所有三种主要HMM算法。
关于machine-learning - HMM混淆与手势识别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/16598010/