关于HMM的训练困惑
searover
2007-12-01
以下数据使用java的开源项目 jahmm 测试得出,版本 0.6.1
程序执行步骤: 1.先构建一个HMM 2.根据这个HMM生成10000个随机观察序列 3.根据生成的观察序列用k-Means算法得到一个初始模型 4.使用Baum-Welch算法对生成的观察序列以及这个初始模型进行训练得到学习后的模型 5.然后用了一个观察序列{3 1 2 1 3 0}来检测原始模型和训练后的模型得到的结果是否一样。 训练序列数:10000 观察序列:3 1 2 1 3 0 原始HMM(该模型为手动构建,用于生成10000个随机观察序列,也就是说,是正确的HMM): 队列概率: 1.143374199295044E-4 状态序列:2 1 2 1 2 1 HMM with 3 state(s) State 0 Pi: 0.63 Aij: 0.5 0.25 0.25 Opdf: Integer distribution --- 0.6 0.2 0.15 0.05 State 1 Pi: 0.17 Aij: 0.375 0.125 0.375 Opdf: Integer distribution --- 0.25 0.25 0.25 0.25 State 2 Pi: 0.2 Aij: 0.125 0.675 0.375 Opdf: Integer distribution --- 0.05 0.1 0.35 0.5 学习后的HMM: 队列概率: 9.816993989119631E-5 状态队列:2 0 1 0 2 0 HMM with 3 state(s) State 0 Pi: 0.620299999999948 Aij: 0.51 0.242 0.249 Opdf: Integer distribution --- 0.622 0.378 0 0 State 1 Pi: 0.20129999999999415 Aij: 0.477 0.252 0.271 Opdf: Integer distribution --- 0 0 1 0 State 2 Pi: 0.17839999999999667 Aij: 0.465 0.256 0.279 Opdf: Integer distribution --- 0 0 0 1 结果发现,两个模型出入很大。所以得到的结果{2 1 2 1 2 1 }-- 正确的 和 {2 0 1 0 2 0 } -- 错误的 也差距不 小。 想请教有这方面经验的朋友,是训练的样本太少还是本来就是这样的结果,或者说我什么地方做错了? |
|
qwjcool
2008-11-16
很复杂的样子~
|
|
linliangyi2007
2009-07-23
没头没脑的一个帖子,知道的在说隐码模型,不知道的就是天书
|
|
searover
2009-09-20
LS有头脑?
不知道的问了也没用, 我需要解释这么清楚吗? 知道的看解释是浪费人家时间, 有必要吗? |
|
lsshappy007
2010-07-01
楼主,能把代码贴出来吗?我也正在学习这个。
|
相关讨论
相关资源推荐
- GMM-HMM kaldi 详解
- 关于HMM的相关论文(3)-N-gram语言模型
- matlab hmm工具箱怎么用,MATLAB Murphy的HMM工具箱
- 一文读懂NLP之隐马尔科夫模型(HMM)详解加python实现
- 通俗理解隐马尔可夫模型(HMM)及其案例代码实现
- 语音识别中的HMM-GMM模型:从一段语音说起(通俗易懂版)
- HMM topology and transition modeling
- 在Linux服务器上部署BERT预训练模型——展示了如何在Linux服务器上使用Docker容器部署BERT预
- 【Python机器学习】隐马尔可夫模型讲解及在中文分词中的实战(附源码和数据集)
- kaldi aishell2数据集训练以及生成文件详细分析(步骤+部分代码解释)