关于隐马尔可夫模型在模式识别中应用的探讨
来源:互联网 发布:c cgi编程 编辑:程序博客网 时间:2024/06/05 02:42
隐马儿可夫模型的要点如下:
1、存在2种类型的状态,内部状态和外部状态:内部状态是一种外部不可见的、但决定外部状态的一群状态;外部状态是直接被人们认识和利用的一群状态,或者说是一种最终的结果。
2、内部状态可以相互转移;而外部状态不会相互转移,只和其内部状态有关。因此只要涉及到状态转移,都是指内部状态。
3、内部状态的转移存在时间型、阶段性、步骤性:该模型的状态转移是一步一步、一个时间点一个时间点、一个阶段一个阶段进行的,并非连续。很重要的一点就是:每一个时刻只会处于一种内部状态,并且该内部状态只会表现出一种外部状态。
4、内部状态的转移有一定的概率,比如T1时刻,状态W1,可能会在T2时刻转换为状态W2,其概率为80%。
5、每个内部状态必定会在某个时刻显现出一种外部状态,且存在一定概率。
上面这个图,说明了一些问题:
1、W1、W2、W3代表该模型有3个内部状态,V1、V2、V3代表该模型有3个外部状态。
2、a12表示W1转换为W2的概率,并且a11+a12+a13=100%
3、b12代表状态W1发出V2状态的概率,用条件概率表达,即:P(V2|W1)
假设,起始状态为W2,那么我们想要在2个时间点,观察到V3、V12个外部状态(注意:是有顺序的)的概率为:(1*b23)+(a22*b21+a21*b11+a23*b31)。第一个括号里面的概率是指第一个时间点,也即初始状态,W2发出V3的概率;第二个括号由3项组成,分别代表W2转移到下一个状态的概率乘上在其基础上发出V3的概率。
对于模式V3V2V2V1V3V2,要想知道其出现的概率,那么我们需要知道初始状态是谁,转移状态概率矩阵,以及,每个状态产生外部形态的概率。通过这些信息我们可以轻易得到该模式出现的几率,但是有一个问题值得关注的是算法复杂度,如果按照我们刚才的思路,那么这个模式的概率将由36项相加所得,如果内部状态为50个,模式的长度(时间段)为60个呢?那么项的个数估计是天文数字了。对于这个问题,感兴趣的可以参考HMM向前算法。
刚才我们讨论的其实就是隐马尔可夫模型中的估值问题,现在我们来探讨和模式匹配密切相关的解码问题。解码问题的描述为:已知模式V3V2V2V1V3V2,已知状态转移概率矩阵(aij),以及,每个内部状态产生外部状态的概率(bjk),求产生这个外部状态序列的内部状态的序列,比如:W1W3W1W3W3W1。要产生这个外部状态序列的内部序列肯定会有很多,因此问题的答案也会有很多,但是每个答案都有自己的概率,并且所有答案相加为1。最大概率的那个答案,可以被认为是最接近事实的答案。
求解这个解码问题的思路其实很简单,也就是遍历所有的可能序列而已,然后找出概率最大的那条路径。为了清楚表达思路,我们将上面的有限状态机图转换为网络图,将每个状态和时间对应起来:
上图的黄色圈圈就是初始状态,那么要产生V2的概率就是b22
现在要产生V2V1的内部状态序列可能有3种:W2W1其概率为b22*a21*b11 、W2W2其概率为b22*a22*b21、W2W3其概率为b22*a23*b31,挑选一个概率最大的,那么其内部状态路径就是所谓的最佳答案了。
现在要产生V2V1V3呢?路径就有9种了;外部序列越长,内部状态数越多,那么路径数就会成指数上升。幸运的是,在大部分的问题上,总有那么一个外部状态只有一个内部状态能显现它,这就意味着其他内部状态显现它的概率为0,这在很大程度上可以进行算法改进,也即:当遇到这样的外部状态时,我们可以开始清算之前的最优路径了,清算完毕后将这个对应的内部状态设为起始状态,继续开始寻找这样的外部状态。这种算法就在很大程度上阻止了算法复杂度的指数上升
- 关于隐马尔可夫模型在模式识别中应用的探讨
- 关于在呼叫中心业务中应用语音识别技术的探讨
- 贪心算法在背包背包问题中应用的探讨
- 关于几种多线程模型的探讨
- 关于几种多线程模型的探讨
- 人力资源管理的3P模型在ERP顾问团队的应用探讨
- 计算机视觉及模式识别技术在农业领域的应用
- 探讨:如何提高软件测试的水平 关于应用RPT在性能测试的思考
- hjr学习-模式识别:隐马尔可夫模型
- GIS在财政行业应用的探讨
- 探讨IOS应用在中国的盈利模式
- 关于Unity在2D的UGUI和3D模型交错时渲染顺序的一点探讨
- 探讨opencv中mask的应用
- 关于性能测试模型的探讨(转)
- 云计算在教育资源均衡化中应用的探讨
- 关于oracle中rownum的使用探讨
- 关于C++中enum的探讨
- 关于C++中enum的探讨
- SQL企业管理器打不开
- 解决AutoCAD启动出现fail to get CommcntrController
- ASP内置对象
- 求Flex的问题,大侠们来看看!
- CI 1.7.2 IN IIS6.0 配置和问题汇总
- 关于隐马尔可夫模型在模式识别中应用的探讨
- 微软繁体正黑字体下载
- oracle 数据库 监听器配置
- 句句深入人心
- 今天篮球赛赢15分,爽
- 使用WAMP5搭建Apache+MySQL+PHP环境
- Dom操作的基础知识
- 用宁静的心拥抱世界
- 网络购物广场商务系统