隐马尔科夫模型教学PPT

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

隐马尔科夫模型可以用五个元素来描述
λ=(N , M, A, B, π )
其中:
N= {q1,...qN}:状态的有限集合,隐状态的数目 M = {v1,...,vM}:观察值的有限集合,可能的观测值 A = {aij},aij = p(Xt+1 = qj |Xt = qi):状态转移概率 B = {bik},bik = p(Ot = vk | Xt = qi):观察值状态分布 π = {πi}, πi = p(X1 = qi):初始状态空间概率分布
Baum-Welch算法(续)
• 定义:
给定模型和观察序列条件下,从i到j的
转移概率定义为t (i, j)
t (i, j) P(st i, st1 j | X , )

t (i)aijbj (Ot1)t1( j)
NN
t (i)aijbj (xt1)t1( j)
• 知道了小球颜色的序列,我们并不能直接 确定缸子之间转换的序列。即如果给定一 个观察序列,不能直接确定状态转换序列, 因为状态转换的过程被隐藏起来了,所以 这类随机过程称为隐马尔科夫过程。
• 在实验中可以看出,隐马尔科夫过程是比 马尔科夫的更为复杂,在马尔科夫过程中, 每个状态只有一个输出。而在这个实验中, 可以从每个缸子中拿出不同颜色的小球, 即每个状态能产生多个输出,观察到的事 件并不是与一个状态一一对应,而是通过 一组概率分布相联系。
– 一般随机过程:另一个随机过程是小球颜色
的观察值和缸子转换序列之间的对应关系,因 为站在观察者的角度,只能看到观察值,不能 直接看到状态,而是通过一个随机过程去感知 状态的存在及其特性。
HMM实例——总结
• 用模型五元组 =( N, M, π ,A,B)用来描述HMM, 或简写为 =(π ,A,B)
参数λ,使得观察值出现的概率p(σ|λ)最大。
针对以上三个问题,人们提出了相应的算法
• 评估问题:向前算法
– 定义向前变量 – 采用动态规划算法,复杂度O(N2T)
• 解码问题:韦特比(Viterbi)算法
– 采用动态规划算法,复杂度O(N2T)
• 学习问题:向前向后算法
EM算法的一个特例,带隐变量的最大似然估计
给定 ,状态转换序列 q (q1, q2 ,...qT ) 的概率可以由下式计算:
则联合概率为:
p(q | ) p a q1 q1q2aq2q3...aqT 1qT
p(X , q | ) p(X | q,) p(q | ) 时间复杂度:
考虑所有的状态转换序列,则:
O(NT)
p(X | ) p(X , q | )
t
T ,1
j

N
t ( j) arg max[t1(i)aij ], 2 t T ,1 j N
1i N
• 终结:
P*

max[
1i N
T
(i)])
qT* arg max[T (i)]
1i N
• 求S序列: qt* t1(qt*1), t T 1,T 2,...,1
Reestimate :
aˆij

expected count expected
of transitions from count of stays at i
i
to
j
t (i, j)
t
t (i, j)
tj
bˆj (k) expected
number of times in state j and observing expected number of times in state j
• 图像处理
– 图像去噪 – 图像识别
• 生物医学分析
– DNA/蛋白质序列分析
问题一
• 给定 ,以及状态转换序列 q (q1, q2 ,...qT ) 产生的观测序列
X (x1, x2 ,... xT ) 的概率可以通过下面的公式计算:
P( X | q, ) bq1(x1)bq2 (x2 )...bqT (xT )
Baum-Welch算法(模型训练算法)
• 目的:给定观察值序列O,通过计算确定一个模型 , 使得P(O| )最大。
• 算法步骤:
1. 初始模型(待训练模型) 0, 2. 基于0 以及观察值序列O,训练新模型 ; 3. 如果 log P(X|) - log(P(X|0) < Delta,说明训练已经达到预期效果, 算法结束。 4. 否则,令0 = ,继续第2步工作
| ]
我们所要找的,就是T时刻最大的 T (i) 所代表 的那个状态序列
Viterbi算法(续)
• 初始化: 1(i) p ibi (O1), 1 i N
1(i) 0, 1 i N
• 递归:
t ( j)
max
1i N
[
t
1
(i)aij
]b
j
(Oi
),
2
问题一(2)
后向算法(2): 初始化 迭代公式
Viterbi算法
• 目的:给定观察序列O以及模型λ,如何选择一
个对应的状态序列S ,使得S能够最为合理的 解释观察序列O?
• N和T分别为状态个数和序列长度
定义:
t (i)

max
q1 ,q2 ,...qt1
P[q1q2...qt
1,
qt
i, O1,O2,…Ot,
参数
含义
实例
N
状态数目
缸的数目
M
每个状态可能的观察值数 彩球颜色数目

A
与时间无关的状态转移概 在选定某个缸的情况下,
率矩阵
选择另一个缸的概率
B
给定状态下,观察值概率 每个缸中的颜色分布
分布
p
初始状态空间的概率分布 初始时选择某口缸的概率
HMM的应用领域
• 语音识别 • 机器视觉
– 人脸检测 – 机器人足球
隐马尔可夫模型(HMM)的三个基本问题
令 λ = {A,B,π} 为给定HMM的参数,
令 σ = O1,...,OT 为观察值序列,
1、评估问题:对于给定模型,求某个观察值序列
的概率p(σ|λ) ;
2、解码问题:对于给定模型和观察值序列,求可 能性最大的状态序列;
3、学习问题:对于给定的一个观察值序列,调整
隐马尔可夫模型HMM
主要讲述的内容
1
随机过程
2
马尔科夫链
3
隐马尔科夫模型
4
三种问题及相应算法
5
应用举例
2.马尔科夫链 设S是一个由有限个状态组成的集合。 S={1, 2, 3, …,n-1, n} 可以把马尔科夫链看做小球随时间在n种 状态跳动的过程。
S
n

......
3• •
2•
1•
i1 j 1
N
t (i) t (i, j) t时刻处于状态Si的概率 j 1
T 1
t (i) 整个过程中从状态Si转出的次数(number of time)的预期
t 1
T 1
t
(i,
j)

从Si
跳转到S
次数的预期
j
t 1
Baum-Welch算法(续2)
• 参数估计:
0123
......
t
T
由小球的跳动产生的状态序列X
如果序列X在t时刻处在状态 qt ,若有
P
q t
it
| qt1
it1, qt2
it2,L
q0
i0
P
q t
it
| qt1
it1
则随机序列X构成一个一阶马尔科夫链。 (Markov Chain)
状态转移概率矩阵
隐马尔科夫概括和简介
• 隐马尔可夫模型是马尔可夫链的一种,它的状态不能直接 观察到,但能通过观测向量序列观察到,每个观测向量都 是通过某些概率密度分布表现为各种状态,每一个观测向 量是由一个具有响应概率密度分布的状态序列产生。所以, 隐马尔可夫模型是一个双重随机过程 ----具有一定状态数 的隐马尔可夫链和显示随机函数集。自20世纪80年代以来, HMM被应用于语音识别,取得重大成功。到了90年代, HMM还被引入计算机文字识别和移动通信核心技术“多 用户的检测”。近年来,HMM在生物信息科学、故障诊 断等领域也开始得 到应用。
p b q1 q1(x1)aq1q2bq2 (x2 )...aqT 1qT bqT (xT )
q
q1,q2 ,...qT
问题一(1)
前向算法:
前向变量:
问题一(1)
初始化 迭代公式
终止
时间复杂度: O(N2T)
问题一
Numerical Example:
问题一(2)
后向算法(1):
后Байду номын сангаас变量:
HMM的应用领域
• 语音识别 • 机器视觉
– 人脸检测 – 机器人足球
• 图像处理
– 图像去噪 – 图像识别
• 生物医学分析
– DNA/蛋白质序列分析
•.
Urn 1
HMM实例
Urn 2
Urn 3
Veil
Observed Ball Sequence
HMM实例——描述
• 假设在一个房间中,有N个缸子,每个缸子里都 装有不同颜色的小球,记小球的总颜色为M种, 一个人在房间中首先随机地选择一个缸子,再从 这个缸子中随机的选择一个小球,并把小球的颜 色报告给房间外面的人记录下来作为观察值,记 为O1,然后这个人再把球放回缸子中,以当前的 缸子为条件再随机选择一个缸子,从中随机选择 一个小球,并报告小球颜色,记为O2,长此以往, 房间外的人会得到由这个过程产生的小球颜色的 序列。
symbol
k
t( j)
t,Ot k
t( j)
t
pµi 当t=1时处于Si的概率 1(i)
HMM实例——总结
• 在上述实验中,总结以下几个注意点:
• 不能直接观察缸间的转移 • 从缸中所选取的球的颜色和缸并不是 • 一一对应的 • 每次选取哪个缸由一组转移概率决定
HMM实例——总结
• HMM是一个双重随机过程,两个组成部分: – 马尔可夫链:首先是缸子选择的过程,每一
个缸子对应一个状态,就可以用一个一阶的马 尔科夫过程来表示缸子的选择过程。
相关文档
最新文档