隐马尔可夫模型维特比算法尝试
更新时间:2024-05-08 06:34:01 阅读量: 综合文库 文档下载
隐马尔可夫模型维特比算法尝试
(一)隐马尔可夫模型基本概念
隐马尔可夫模型是关于时序的概率模型,描述由一个隐藏的马尔可夫链随机生成不可观测的状态随机序列,再由各个状态生成一个观测而产生观测随机序列的过程。
隐藏的马尔可夫链随机生成的状态序列,称为状态序列(state sequence);
每个状态生成一个观测,而由此产生的观测的随机序列,称为观测序列(observation sequence)。
序列的每个位置又可以看作是一个时刻。
隐马尔可夫模型由初始概率分布、状态转移概率分布以及观测概率分布确定。
隐马尔可夫模型的形式定义如下:
设Q是所有可能的状态的集合,V是所有可能的观测的集合。
Q?{q1,q2,?,qN}V?{v1,v2,?,vM}
I是长度为T的状态序列,O是对应的观测序列。
I?{i1,i2,?,iT}O?{o1,o2,?,oT}
A是状态转移概率矩阵:
A?[aij]N?N
其中,
aij?P(it?1?qjit?qi)i?1,2,?,N;j?1,2,?,N
是在时刻t处于状态qi的条件下在时刻t?1转移到状态qj的概率。
B是观测概率矩阵:
B?[bj(k)]N?M
其中,
bj(k)?P(ot?vkit?qj)k?1,2,?,M;j?1,2,?,N
是在时刻t处于状态qj的条件下生成观测vk的概率。
?是初始状态概率向量:
??(?i)
其中,
?i?P(i1?qi)i?1,2,?,N
是时刻t?1处于状态qi的概率。 隐马尔可夫模型的3个基本问题:
(1) 概率计算问题。给定模型和观测序列,计算在模型下观测序列
出现的概率。
(2) 学习问题。已知观测序列,估计模型参数,使得在该模型下观
测序列概率最大。即用极大似然估计的方法估计参数。 (3) 预测问题,也称为解码(decoding)问题。已知模型和观测序
列,求对给定观测序列条件概率最大的状态序列。即给定观测序列,求最有可能的对应的状态序列。
(二)Viterbi算法原理
维特比算法实际是用动态规划解隐马尔可夫模型预测问题,即用
动态规划(dynamic programming)求概率最大路径(最优路径)
输入:模型??(A,B,?)和观测O?(o1,o1,?,oT);
**输出:最优路径I*?(i1*,i2,?,iT)。
(1)初始化
?1(i)??ibi(o1)i?1,2,?,N ?1(i)?0i?1,2,?,N
(2)递推对t?2,3,?,T
?t(i)?max[?t?1(j)aji]bi(ot)i?1,2,?,N
1?j?N?t(i)?argmax[?t?1(j)aji]i?1,2,?,N
1?j?N(3)终止
P*?max?T(j)
1?j?N*iT?argmax[?T(i)]
1?i?N(4)最优路径回溯对t?T?1,T?2,?,1
it*??t?1(it*?1)
**求得最优路径I*?(i1*,i2,?,iT)
(三)例子
三个盒子均有红白两种球,但每个盒子里面红白球的比例不同,从摸出来的球的颜色来判断盒子的状态序列。
模型??(A,B,?),
?0.50.20.3??0.50.5?????A??0.30.50.2?,B??0.40.6?,??(0.2,0.4,0.4)T ?0.20.30.5??0.70.3?????已知观测序列O=(红,白,红),试求最优状态序列,即最优路
**径I*?(i1*,i2,i3)。
解:要在所有可能的路径中选择一条最优路径,按照以下步骤处理:
(1)初始化。在t?1时,对每一个状态i,i?1,2,3,求状态为i观测o1为红的概率,记此概率为?1(i),则
?1(i)??ibi(o1)??ibi(红),i?1,2,3
代入实际数据
?1(1)?0.10?1(2)?0.16?1(3)?0.28
记?1(i)?0i?1,2,3
(2)在t?2时,对每一个状态i,i?1,2,3,求在t?1时状态为j观测为红并在t?2时状态为i观测o2为白的路径的最大概率,记此最大概率为
?2(i),则
?2(i)?max[?1(j)aji]bi(o2)
1?j?3同时,对每个状态i,i?1,2,3,记录概率最大路径的前一个状态j:
?2(i)?argmax[?1(j)aji]i?1,2,3
1?j?3计算:
?2(1)?max[?1(j)aj1]b1(o2)1?j?3
?max?0.10?0.5,0.16?0.3,0.28?0.2}?0.5
j=0.028
?2(1)?3
?2(2)?0.0504?2(2)?3 ?2(3)?0.042?2(3)?3
同样,在t?3时,
?3(i)?max[?2(j)aji]bi(o3)
1?j?3?3(i)?argmax[?2(j)aji]
1?j?3?3(1)?0.00756?3(1)?2
?3(2)?0.01008?3(2)?2 ?3(3)?0.0147?3(3)?3
(3)以P*表示最优路径的概率,则
P*?max?3(j)?0.0147
1?j?3最优路径的终点是i3*:
*i3?argmax[?3(i)]?3
i(4)由最优路径的终点i3*,逆向找到i2*,i1*:
**在t?2时,i2??3(i3)??3(3)?3 *在t?1时,i1*??2(i2)??2(3)?3
**于是求得最优路径,即最优状态序列I*?(i1*,i2,i3)?(3,3,3)。
(四)程序实现
A <- matrix(c(0.5,0.2,0.3,0.3,0.5,0.2,0.2,0.3,0.5),nrow = 3, ncol = 3, byrow = T) B <- matrix(c(0.5,0.5,0.4,0.6,0.7,0.3),nrow = 3, ncol = 2, byrow = T) O <- c(0 ,1, 0)#T=3 pi <- t(t(c(0.2,0.4,0.4)))
N=3#N kind state
M=2#M kind of observation T=3
#initialize:
Delta <- matrix(,nrow=3,ncol=3) for (i in 1:N){
Delta[1,i]=pi[i]*B[i,1]}
#Recursion:
psi <- matrix(,nrow=3,ncol=3) Psi <- matrix(,nrow=3,ncol=3) Psi[1,] <- c(0,0,0) t=2
for (i in 1:N){ for (j in 1:N){
psi[i,j] <- Delta[t-1,j]*A[j,i] }
Delta[t,i] <- max(psi[i,])*B[i,2]
Psi[t,i] <- which.max(psi[i,]) }
psi1 <- matrix(,nrow=3,ncol=3) t1=3
for (i in 1:N){
for (j in 1:N){
psi1[i,j] <- Delta[t,j]*A[j,i] }
Delta[t1,i] <- max(psi1[i,])*B[i,1] Psi[t1,i] <- which.max(psi1[i,]) }
#以p表示最优路径的概率,则
p <- max(Delta[3,])
i[3] <- which.max(Delta[3,]) i[2] <- Psi[3,i[3]] i[1] <- Psi[2,i[2]]
print(\每种盒子在每一步路径的最大概率矩阵如下:\ Delta
cat(paste(\第一步选盒子\ paste(\第二步选盒子\ paste(\第三步选盒子\
结果:
每种盒子在每一步路径的最大概率矩阵如下:
Delta
[,1] [,2] [,3] [1,] 0.10000 0.16000 0.2800 [2,] 0.02800 0.05040 0.0420 [3,] 0.00756 0.01008 0.0147
第一步选盒子 3 ;第二步选盒子 3 ;第三步选盒子
参考:《统计学习方法》
3 。
正在阅读:
隐马尔可夫模型维特比算法尝试05-08
小学家长开放周活动总结06-13
三年级数学乘除法巧算11-08
体育教育毕业论文07-03
2002年LA医师上岗证考试试题103-04
初中英语教研组工作计划01-07
4季度医疗质量与医疗安全分析与通报07-10
药剂题库03-14
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 可夫
- 马尔
- 特比
- 算法
- 模型
- 尝试
- 苏教版三年级下册第七单元认识几分之一教学设计
- KTV各岗位职责大全
- 数学备课笔记
- 重点关系数据库练习卷09 SQL 题目及答案单项选择题
- 本科毕业论文 - 即时通信系统的开发与设计论文(论文)
- 2014届高考数学(理)一轮复习单元测试(配最新高考+模拟)第二
- 2018江西财经大学《会计学原理》MOOC答案
- 语言文字会议记录
- 出租车计价器课程设计
- 7特殊作业管理与审批制度
- 社会实践报告
- 2014年江苏省对口单招机械专业综合理论试卷 三
- 第五课完整1
- 水文地质学复习考点
- 旋转机械转子不平衡的诊断案例分析综述
- 林崇德 发展心理学
- 2017年教师招聘《教育学》、《教育心理学》知识点总结最新版
- 应收账款风控制度
- 盐城市20132014学年度第一学期高二学业水平必修科目期终考试地理
- 团史知识题目