隐马尔科夫模型

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
1点 2点 3点 4点 5点 6点
一次连续掷骰子的过程模拟
时间 骰子 掷出 点数
1 A 3 2 A 3 3 A 4 4 B 5 5 A 1 6 A 6 7 A 2 明序列 隐序列
查封赌场后, 调查人员发现了一些连续掷骰子的记录, 其中有一个骰子掷出的点数记录如下: 33451625536634411346254453342233 …
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
3. 计算P(O|λ)
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
学习问题
• 给定一系列观察序列样本, 确定能够产生出这些序列的模 型=(π, A, B) • 如何从大量的点数序列样本中学习得出“作弊模型”的参数 “ ”
三个基本问题的求解算法
识别问题/评估问题
评估问题:给定观察序列O和HMM λ =( π, A, B), 计算观察序列O出现的概率P(O| λ )。 识别问题:给定观察序列O和多个HMM (λ 1 , …, λ K), 判断O是由哪个HMM产生出来的。 O HMM 识别问题依赖于评估问题 :
DNA系列的对比 基因发现
例子: 赌场的欺诈
某赌场在掷骰子根据点数决定胜负时 , 暗中采取 了如下作弊手段 在连续多次掷骰子的过程中 , 通常使用公平骰子 A, 偶而混入一个灌铅骰子 B
0.8 0.9 A 0.1 B 0.2
公平骰子 A与灌铅骰子 B的区别
骰子A 1/6 1/6 1/6 1/6 1/6 1/6 骰子B 0 1/8 1/8 3/16 3/16 3/8
HMM中的两条基本假设
1. 状态独立性 :
状态序列具有马氏性 P(qt|q1,…,qt-1) = P(qt|qt-1) 第t次所用的骰子类型只依赖于第t-1次的骰子类型
2. 观察独立性 :
观察到的明字符仅与当前时间的状态有关 P(ot|o1,…,ot-1,q1,…,qt) = P(ot|qt) 第t次掷出的点数只依赖于第t次所用的骰子类型
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
解码问题
所求的 Q应当在某个准则下是“最优”的 , 因此也称 Q为最优路径 , 解码问题即是确定 最优路径的问题。
全路径整体最优准则
Viterbi算法
qt=Si产生出 o1,…ot的最大概率,即
Viterbi算法
1.初始化 2.递归 3.终结
上述的 Viterbi 算法也是类似于前向算法的一 种格型结构。同样 , 由后向算法的思想出发 , 亦可推导出 Viterbi 算法的另一种实现方式。 Viterbi 算法得到的 max Q P(O,Q|λ) 和前向 后向算法计算出的∑Q P(O,Q|λ) 之间的联系
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
HMM的定义
赌场的例子中
隐状态集: S={骰子 A, 骰子 B} 明字符集: V={1,2,3,4,5,6} 初始状态概率: π1=1, π2=0 隐状态转移概率 :
a11=0.9, a12=0.1 a21=0.8, a22=0.2
初始状态
1: 2: 3: 1.0 4: 5: 骰子A 6: 1/6 1/6 1/6 1/6 1/6 1/6
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
问题 1 – 评估问题
给定 一个骰子掷出的点数记录
124552646214614613613666166466163661636616361651561511514612356234
Baidu Nhomakorabea
问题 会出现这个点数记录的概率有多大 ?
问题 2 – 解码问题
给定 一个骰子掷出的点数记录
124552646214614613613666166466163661636616361651561511514612356234
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
α(t,i)
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
1. 初始化
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
三个基本问题
识别问题/评估问题
• 给定观察序列O和HMM λ =(π, A, B), 判断O是由λ产 生出来的可能性有多大. • 计算骰子点数序列的确由“作弊”模型生成的可能性 “ ”
解码问题
• 给定观察序列O和HMM λ =(π, A, B), 计算与序列 O相 对应的状态序列是什么 • 在骰子点数序列中, 判断哪些点数是用骰子B掷出的
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
观察序列O
o1
o2
o3
o4
...
oT
HMM λ
状态序列Q
q1
q2
q3
q4
...
qT
赌场的例子中:
隐状态 AAAABAAAAABAAAAAAAAAAAAAAAAAAAAAAABAABAAAAAAAAA… 明观察 3 3 4 5 4 1 4 1 5 5 3 6 6 3 4 4 1 1 3 4 6 2 5 4 4 5 3 3 4 2 2 3 3 3 2 1 2 4 2 2 5 6 3 1 3 4 1…
0.9
0.1 骰子B 0
1: 2: 3: 4: 5: 6: 0 1/8 1/8 3/16 3/16 3/8
0.8
明字符生成概率
b11 = b12=…=b16=1/6 b21=0, b22=b23=1/8, b24=b25=3/16, b26=3/8
0.2
一阶离散HMM是一个关于时间 序列的随机生 成模型 基本要素
隐马尔科夫模型(HMM)
内容提要
1.
HMM的概述与应用 HMM的定义及三个基本问题 三个基本问题的求解算法
2.
3.
HMM的概述与应用
HMM模型是一项发展多年的建模技术 , 它曾 经在语音识别、光字符识别 (OCR)等领域得 到过最成功的应用。 上世纪八九十年代,HMM开始应用于生物信 息学 , 对于研究蛋白质家族同源性 , 揭示进化 保守性发挥了重要作用。 在生物信息学中的主要应用
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
2. 递归
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
• 例如在估值问题中, 作为牺牲一定性能换取效率 的折衷策略 , 往往用在上式的等号右边用
学习问题
也称训练问题、参数估计问题
化准则
P(λ): P(λ|O): P(O|λ):
HMM的典型应用
基因识别问题
• 状态: 编码区域与非编码区域 • 字符: ATCG
多序列比对 结构分析与模式识别 语音识别
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
前向算法过程演示
i=N i=N-1 i=5 i=4 i=3 i=2 i=1 t=1 t=2 t=3 t=4 t=5 t=6 t=7 t=T-1 t=T
--- Thanks! ---
有限隐状态集 离散明字符集 初始状态概率矢量 状态转移概率矩阵 明字符生成概率矩阵 S={S1,…,SN} V={V1, ,VM} ,…,V π=(π1,…, πN) A=(aij)N× N B=(bjk)N× M
aij, bjk及πi均为概 率, 需满足概率的 性质(非负性, 正则 性等)
HMM记作 λ=(S, V, π, A, B) 或 λ=(π, A, B)
问题 点数序列中的哪些点数是用骰子 B掷出的 ?
问题 3 – 学习问题
给定 一个骰子掷出的点数记录
124552646214614613613666166466163661636616361651561511514612356234
问题 作弊骰子掷出各点数的概率是怎样的?公平骰子 掷出各点数的概率又是怎样的 ? 赌场是何时 换用骰子的 ?
λ* = max {P(O|λk): k=1,…,K}
两种可行的计算方法 前向算法 后向算法
前向算法
定义前向变量为
“在时间步 t, 得到t之前的所有明符号序列 , 且时间 步 t的观察符号是Si”这一事件的概率
α (t, i) = P(o1,…,ot, qt = Si| λ) 则
算法过程
前向算法过程演示
HMM将两个序列相联系起来
1. 由离散隐状态组成的状态序列 (路径)
Q = (q1,…,qT), 每个qt∈ S是一个状态 由初始状态概率及状态转移概率(π, A)所决定
2. 由 明字符组成的观察序列
O = (o1,…,oT), 每个ot∈ V均为一个离散明字符 由状态序列及各状态的明字符生成概率(Q,B)所决定
例子
赌场作弊模型 λ=(π,A,B)
π: π1=1, π2=0 (总使用公平骰子开始) A:
a11=0.9, a12=0.1, a21=0.8, a22=0.2
B:
b1k = 1/6 (k=1,…,6) b21=0, b22=b23=1/8, b24=b25=3/16, b26=3/8
O:
334541
相关文档
最新文档