我们可以coin tossing(扔硬币)的例子来讲解HMM相关的下列问题:
- 计算likelihood
- 找出最优tag
- 计算/学习模型参数
假设我们有2枚硬币,这两枚硬币与普通硬币不一样,他们扔出上面或反面的概率,并不是0.5。有可能是P(正)=0.7, P(负)=0.3,也有可能P(正)=0.4, P(负)=0.6,不过暂时我们都是不知道的。这个概率B我们可称之为Emission Probability。
然后有一个人,每次会依靠一定的规则从中拿出一枚硬币进行扔硬币的操作,这个规则也是确定的,比如符合以下概率:
1 | 2 | |
---|---|---|
1 | 0.7 | 0.3 |
2 | 0.2 | 0.8 |
纵轴表示当前扔的硬币,横轴表示下一次扔的硬币,例如 如果这次他扔了硬币1,那么他下次扔硬币1的概率为0.7,扔硬币2的概率为0.3。当然以上也只是假设,具体概率我们也不知道。我们可将该概率矩阵A称之为Transition Matrix。
然后文章开头的三个问题,我们可以转换成:
- 找出某种扔硬币方法的概率,例如P(y=正正正负负正|x)=?
- 找出可能性最大的扔硬币的方法
- 求出A、B