栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

隐马尔可夫模型

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

隐马尔可夫模型

文章目录
    • 1. 基本思想
    • 2. 三个基本问题与求解
      • 2.1 似然计算
      • 2.2 最可能序列
      • 2.3 EM问题

1. 基本思想

隐马尔可夫模型是一种常用于处理时间序列的概率图模型,其概率图如下图所示,其中 s I s_I sI​是隐状态, y i y_i yi​是观测变量; p ( s i ∣ s i − 1 ) p(s_i|s_{i-1}) p(si​∣si−1​)是概率转移, p ( y i ∣ s i ) p(y_i|s_i) p(yi​∣si​)是观测概率。

根据概率图的计算公式,很容易得出两组变量的联合分布:


2. 三个基本问题与求解 2.1 似然计算

问题:给定参数集 θ theta θ和观测序列{ y 1 , y 2 , . . . , y m y_1,y_2,...,y_m y1​,y2​,...,ym​},如何高效计算似然 p ( Y ∣ θ ) p(Y|theta) p(Y∣θ)的概率?
分析:如果采用扩充法扩充出所有变量地联合概率,复杂度是 O ( ∣ S ∣ n ) O(|S|^n) O(∣S∣n),计算复杂度较高。考虑采用递推法将复杂度降为 O ( n ∣ S ∣ ) O(n|S|) O(n∣S∣)

得到如下的递推式

2.2 最可能序列

问题:给定参数 θ theta θ和观测集 Y Y Y,求最可能的状态序列 X X X
分析:即 a r g m a x X argmax_X argmaxX​ p ( X ∣ Y , θ ) p(X|Y,theta) p(X∣Y,θ),
只要将上面的递推式的求和号改为argmax即可,这就是维特比算法

2.3 EM问题

寻找最好的 θ theta θ使得 p ( Y ∣ θ ) p(Y|theta) p(Y∣θ)最大,由于隐变量X未知所以采用EM算法
EM算法分为E步和M步
1)E步:计算概率 p ( X ∣ Y , θ i − 1 ) p(X|Y,theta^{i-1}) p(X∣Y,θi−1)
2) M步: max ⁡ θ Q ( θ ) max_theta {Q(theta)} maxθ​Q(θ), Q ( θ ) = ∑ y ∑ x p ( x ∣ y , θ i − 1 ) l o g p ( y , x , θ i ) Q(theta)=sum_ysum_xp(x|y,theta^{i-1})logp(y,x,theta^i) Q(θ)=∑y​∑x​p(x∣y,θi−1)logp(y,x,θi)

暑期编程PK赛 得CSDN机械键盘等精美礼品!
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1016019.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号