常见30种数学建模模型_数学建模_隐马尔可夫模型HMM

1:要解决的问题?

例如: 

1:我要用键盘输入一大段文字,如果在手动输入时,能不能有一个输入法能猜测出我想要录入的句子供我选择?

2: 和别人对话,听到一串连续的声音,能不能有个机器能预测他实际想要表达的内容?

3:希望根据当前天气的情况来预测未来天气情况

现在打字写笔记,我在键盘上敲出来的一系列字符就是观测序列,

而我实际想写的一段话就是隐藏序列。输入法的任务就是从敲入的一系列字符尽可能的猜测我要写的一段话,并把最可能的词语放在最前面让我选择,这就可以看做一个HMM模型了。再举一个,我在和你说话,我发出的一串连续的声音就是观测序列,而我实际要表达的一段话就是状态序列,你大脑的任务,就是从这一串连续的声音中判断出我最可能要表达的话的内容。

隐马尔科夫模型(Hidden Markov Model,以下简称HMM)是比较经典的机器学习模型了,它在语言识别,自然语言处理,模式识别等领域得到广泛的应用。

HMM模型时我们的问题一般有这两个特征:

我们的问题是基于序列的,比如时间序列,或者状态序列

我们的问题中有两类数据,一类序列数据是可以观测到的,即观测序列;而另一类数据是不能观察到的,即隐藏状态序列,简称状态序列。

2:数学知识:

马尔可夫过程 (Markov Process):

马尔科夫过程描述的是空间状态经过一个状态到另一个状态转换的随机过程Markov Property(马尔科夫的性质):

104175e9-842b-eb11-8da9-e4434bdf6706.svg

t+1时刻的状态与t时刻之前的状态已经没有关系

马尔可夫过程:

满足马尔可夫性质的过程,就叫做马尔可夫过程。

马尔可夫链

时间和状态都是离散的马尔可夫过程称为马尔可夫链。

马尔可夫链的实际应用:预测股市广告收益预测

状态转移概率:

是指从一个马尔科夫状态s跳转到后继状态s'的概率

马尔科夫随机序列由元组表示。S 代表有限状态集,P 是状态转移概率矩阵。公式114175e9-842b-eb11-8da9-e4434bdf6706.svg,描述了一个状态转移到另一个状态发生的概率。

所有状态的转移概率:

6eea4aea35969828a9a0eb1ae6dc53a5.png

模型

生成模式(Generating Patterns)

确定性模式(Deterministic Patterns)交通信号灯

因为状态间的转移是完全已知的。

非确定性模式(Non-deterministic patterns): 天气预报

一个马尔科夫过程是状态间的转移仅依赖于前n个状态的过程。这个过程被称之为n阶马尔科夫模型,其中n是影响下一个状态选择的(前)n个状态。最简单的马尔科夫过程是一阶模型,它的状态选择仅与前一个状态有关。

 对于有M个状态的一阶马尔科夫模型,共有M^2个状态转移,因为任何一个状态都有可能是所有状态的下一个转移状态。每一个状态转移都有一个概率值,称为状态转移概率——这是从一个状态转移到另一个状态的概率。所有的M^2个概率可以用一个状态转移矩阵表示。注意这些概率并不随时间变化而不同——这是一个非常重要(但常常不符合实际)的假设。

3: 隐马尔科夫模型(Hidden Markov Models):

定义(Definition of a hidden Markov model):

数学符号:

模型包含两个状态集合和三组概率:

隐藏状态:Q ={ 144175e9-842b-eb11-8da9-e4434bdf6706.svg}     一个系统的(真实)状态         

观察状态:在这个过程中可视的状态  V ={ 154175e9-842b-eb11-8da9-e4434bdf6706.svg}

164175e9-842b-eb11-8da9-e4434bdf6706.svg向量:包含了(隐)模型在时间t=1时一个特殊的隐藏状态的概率

 164175e9-842b-eb11-8da9-e4434bdf6706.svg ={ 1b4175e9-842b-eb11-8da9-e4434bdf6706.svg}  (初始概率)

状态转移矩阵:一个隐藏状态到另一个隐藏状态的转移概率

    A  = 1d4175e9-842b-eb11-8da9-e4434bdf6706.svg   

    1e4175e9-842b-eb11-8da9-e4434bdf6706.svg 表示状态i直接转移到状态j的概率。

混淆矩阵:状态生成观测序列的概率也称发射矩阵

204175e9-842b-eb11-8da9-e4434bdf6706.svg

214175e9-842b-eb11-8da9-e4434bdf6706.svg表示在状态234175e9-842b-eb11-8da9-e4434bdf6706.svg生成观察 244175e9-842b-eb11-8da9-e4434bdf6706.svg的概率

隐马尔可夫模型三大假设:

1:齐次马尔可夫假设。又叫一阶马尔可夫假设,即任意时刻的状态只依赖前一时刻的状态,与其他时刻无关。符号表示为:

2:观测独立性假设。任意时刻的观测只依赖于该时刻的状态,与其他状态无关

推广:n阶马儿可夫模型:任意时刻的状态只依赖前面n个时刻的状态,与其他时刻无关。

3:参数不变性假设。上面介绍的三大要素不随时间的变化而改变,即在整个训练过程中一直保持不变。

隐马尔可夫模型三个问题:

应用(Uses associated with HMMs):

第一个问题: 概率计算问题

已知模型 b148239fe0d139bb329452943d0b35df.png, 和观测序列O={ 264175e9-842b-eb11-8da9-e4434bdf6706.svg},求274175e9-842b-eb11-8da9-e4434bdf6706.svg观察序列的概率

方法: 

  1. 直接计算(暴力求解)

  2. 前向算法 forward

  3. 后向算法 backward

第二个问题: 学习问题

已知观测序列O={ 264175e9-842b-eb11-8da9-e4434bdf6706.svg},估计模型参数b148239fe0d139bb329452943d0b35df.png,使得在该模型下274175e9-842b-eb11-8da9-e4434bdf6706.svg出现的概率最大。(极大释然估计)

方法:

  1. 训练数据如果有对应的隐藏状态,监督学习 极大释然估计

  2. 无监督学习,b148239fe0d139bb329452943d0b35df.png参数学习可以由EM算法实现(Baum-Welch)

第三个问题:deconding 解码问题(预测问题)

已经模型b148239fe0d139bb329452943d0b35df.png,和观测序列O={ 264175e9-842b-eb11-8da9-e4434bdf6706.svg},和状态Q ={ 144175e9-842b-eb11-8da9-e4434bdf6706.svg}  求给的观测序列条件概率P(I | O)最大的状态序列,搜索最有可能生成一个观察序列的隐藏状态序列(解码)

方法:

  1. 近似算法:(贪心)

  2. 维特比算法 动态规划

4: 观测序列的生成过程

根据隐马尔可夫模型定义,可以将一个长度为T的观测序列 c40e2784346351d3fa67c86e8672a9fa.png的生成过程描述如下:

算法(观测序列的生成)

输入:隐马尔可夫模型670545b4fdea7406103af74be93843cc.png,观测序列长度

输出:观测序列c40e2784346351d3fa67c86e8672a9fa.png

(1)按照初始状态分布e0b962397415e8e63c01e17fed4ce06a.png产生状态f327d39750c12c5ec99a8f681f171b7a.png

(2)令t=1

(3)按照状态f327d39750c12c5ec99a8f681f171b7a.png的观测概率分布334dd55333885c0779a4121cdd02b69a.png生成a898821323d40eab7d90c5520f3848f2.png

(4)按照状态f327d39750c12c5ec99a8f681f171b7a.png的状态转移概率分布8f8bb84e343f81644d67b0d7007d2af1.png产生状态54d947189447c82b304934ba8c94b416.png

532c2425b9353863b679f48825d09cf0.png;如果dfdc2c56ff8a53b4826a4fe738261988.png则转步(3);否则,终止。

5:概率计算算法

1:暴力求解 :不可取

给定模型,求给定长度为T的观测序列的概率,直接计算法的思路是枚举 所有 的长度T的状态序列,计算该状态序列与观测序列的联合概率(隐状态发射到观测),对所有的枚举项求和即可。在状态种类为N的情况下,一共有N^T种排列组合,每种组合计算联合概率的计算量为T,总的复杂度为 bfcfcd65d726beb1e7793f1585a7f50d.png

2:前向算法: 

定义(前向概率)给定隐马尔可夫模型74a479e7ce86e0eed7fe47472e4d7b27.png,定义到时刻t为止的观测序列为d6c8a3003b1750df8d0a8f8d35ff4577.png且状态为4a3b2659b97fdeaf881205b3159ec886.png的概率为前向概率,记作

d36e7542633de4d9ebc0ddcf12d20cec.png

可以递推地求得前向概率284676b0c1a25ad2cb53a41da6a4ad70.png及观测序列概率04d5bf5f82cd1c676ad8161935eb776c.png

算法(观测序列概率的前向算法)

输入:隐马尔可夫模型74a479e7ce86e0eed7fe47472e4d7b27.png,观测序列

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值