隐马尔可夫模型(HMM)的训练与预测
一、HMM模型训练
首先我们的语料库为三段文本 :
1.今天 天气 真 不错 。
2. 麻辣肥牛 好吃 !
3. 我 喜欢 吃 好吃 的 !
那么每一个字都有一个标识(“隐藏状态”)可以根据语料库得到所有标识
B:词语开始 M:词语中间 E:词语结束 S:单独出现
二、HMM模型预测
对于给定的待预测文本,需要通过HMM模型进行预测,待预测文本不一定存在语料库中,通过初始概率矩阵、转移概率矩阵、发射矩阵计算所有可能性的概率,最后通过维比特算法计算出最终结果。
三、初始概率矩阵
初始矩阵一开始统计的都是每一个字出现在文本中的频次。初始概率矩阵中存放的是归一化之后的值。
四、转移概率矩阵
可以从右下角的表格中简单的验证一下,例如BE有6个…,并计算概率
在转移概率矩阵当中有一个很重要的特征,每一行之和为1
五、发射概率矩阵
发射概率矩阵的行表示标识数目,每一列表示一个字,综合起来看就是,在某个标识的条件下,发射到某个字的概率。
发射概率矩阵有一个很重要的特征就是,每一行的概率之和为1
六、模型预测
这里只列出来了一种计算,如果通过穷举法:一共有47 次计算。
因此需要采用维特比算法降低算法复杂度,降低计算次数。
维特比算法下节会仔细讲解!敬请期待!