机器学习---hmm模型学习笔记

小鲨鱼~ 小鲨鱼~     2022-11-14     659

关键词:

HMM算法想必大家已经听说了好多次了,完全看公式一头雾水。但是HMM的基本理论其实很简单。因为HMM是马尔科夫链中的一种,只是它的状态不能直接被观察到,但是可以通过观察向量间接的反映出来,即每一个观察向量由一个具有相应概率密度分布的状态序列产生,又由于每一个状态也是随机分布的,所以HMM是一个双重随机过程。

     HMM是语音识别,人体行为识别,文字识别等领域应用非常广泛。

     一个HMM模型可以用5个元素来描述,包过2个状态集合和3个概率矩阵。其分别为

     隐含状态S,可观测状态O,初始状态概率矩阵π,隐含状态概率转移矩阵A,观测状态转移概率矩阵 B。

     HMM在实际应用中主要用来解决3类问题。

     1. 评估问题。

   即给定观测序列 O=O1O2O3…Ot和模型参数λ=(A,B,π),怎样有效计算这一观测序列出现的概率。(前向后向算法)

     2. 解码问题。

   即给定观测序列 O=O1O2O3…Ot和模型参数λ=(A,B,π),怎样寻找满足这种观察序列意义上最优的隐含状态序列S。(维特比算法)

     3. 学习问题。

     即HMM的模型参数λ=(A,B,π)未知,如何求出这3个参数以使观测序列O=O1O2O3…Ot的概率尽可能的大。(鲍姆-韦尔奇算法)

     这篇文章是针对第一个问题来说的,一般采用的是前向后向算法来解决评估问题。这里将的是前向算法。

     在此之前,先引入几个符号:

     at(i) :  表示到第t个观察值Ot时处于状态i。

     : 表示在状态i下产生观察值 的概率。

     现在来看一下前向算法的理论来源。

     因为我们要解决的是模型估计问题。即计算概率 。将其利用如下公式化简:

 

    

     因此首先要先计算

   ,其中Q为一给定的状态序列 。又有

   

     其中

   

     所以

   

     因此最后求得

   

     由此可以看见其计算复杂度非常大,为

    为了解决这个问题,前向算法就出现了。首先定义了一个前向变量 。表示从1到t,输出符号o序列,t时刻处于状态i的累计输出概率。

     因为前向变量有如下性质:

     初值:

    ,且

    ,最后有递推关系:

    

     为什么这样就可以简化计算复杂度呢?其原因很简单,因为每一次的at(i),我们都可以用at-1(i)来计算,就不用重复计算了。如下示意图可以帮助我们形象的理解:

 

    

     看了这么多公式,是不是头晕了?不急,下面看一个实例就会完全明白的。

     题目:HMM模型如下,试通过前向算法计算产生观察符号序列O=ABAB时每个时刻的 和总概率。

     当然初始概率矩阵π=(1,0,0),即开始处于状态1。按照上面的公式理论,我们的递推依次解出at(i)。解法如下:

     t=1时:

   

     t=2时:

   

     t=3时:

  

     t=4时:

 

     所以有最后的结果:

 

    

     最后将其计算过程示意图表示如下:

 

   

转载自:https://www.cnblogs.com/tornadomeet/archive/2012/03/24/2415583.html

用于学习笔记

机器学习hmm模型

...顾HMM问题一:求观测序列的概率1马尔科夫链1.1简介在机器学习算法中,马尔可夫链(Markovchain)是个很重要的概念。马尔可夫链(Markovchain),又称离散时间马尔可夫链(discrete-timeMarkovchain),因俄国... 查看详情

机器学习---算法学习

朴素贝叶斯公式Hmm隐马尔科夫动态规划:线性回归:逻辑回归(sigmoid):在线性组合的基础上加了个非线性的激活函数,用于解决二分类问题,softmax,用于解决多分类问题。集成学习(连续模型):针对错误的模型进行训练,设置多个模... 查看详情

大道至简机器学习算法之隐马尔科夫模型(hiddenmarkovmodel,hmm)详解---学习问题:baum-welch算法推导

☕️本文往期系列文章:【大道至简】机器学习算法之隐马尔科夫模型(HiddenMarkovModel,HMM)详解(1)---开篇:基本概念和几个要素_尚拙谨言的博客-CSDN博客【大道至简】机器学习算法之隐马尔科夫模型(HiddenMarkovModel,... 查看详情

机器学习之隐马尔科夫模型hmm

...的分析。在早些年HMM模型被非常广泛的应用,而现在随着机器学习的发展HMM模型的应用场景越来越小,然而在图像识别等领域HMM依然起着重 查看详情

机器学习hmm模型算法实例(代码片段)

目录1前向算法求HMM观测序列的概率1.1流程梳理1.2算法总结1.3HMM前向算法求解实例1.4用后向算法求HMM观测序列的概率1.4.1流程梳理1.4.2后向算法流程1.5小结2维特比算法解码隐藏状态序列2.1HMM最可能隐藏状态序列求解概述2.2维特比算... 查看详情

机器学习笔记

机器学习笔记(三)文章目录机器学习笔记(三)线性模型简介线性回归线性几率回归线性模型简介线性模型最简单的案例是最小二乘法:在机器学习的术语中,当预测值为连续值时,称为“回归问题... 查看详情

机器学习笔记

机器学习笔记(三)文章目录机器学习笔记(三)线性模型简介线性回归线性几率回归线性模型简介线性模型最简单的案例是最小二乘法:在机器学习的术语中,当预测值为连续值时,称为“回归问题... 查看详情

概率机器学习(开篇)

最近的机器学习这一块一直卡在概率机器学习上,尤其是CRF上,有点浮,先将学习到的好好总结一下。一、EM算法的基础和贝叶斯基础  1)EM算法的基本原理和推导  2)EM算法的基本应用,k-means和高斯混合模型二、隐马可夫... 查看详情

斯坦福大学andrewng-机器学习笔记--神经网络模型

  大概用了一个月,AndrewNg老师的机器学习视频断断续续看完了,以下是个人学习笔记,入门级别,权当总结。笔记难免有遗漏和误解,欢迎讨论。  鸣谢:中国海洋大学黄海广博士提供课程视频和个人笔记,在此深表感谢... 查看详情

机器学习笔记之生成模型综述监督学习与无监督学习(代码片段)

机器学习笔记之生成模型综述——监督学习与无监督学习引言回顾:生成模型介绍判别方式:生成模型VS\\textVSVS判别模型生成模型的建模手段监督学习与无监督学习监督学习模型基于监督学习的非概率模型基于监督学习... 查看详情

机器学习基础笔记一

监督学习非监督学习:学习结构化知识强化学习 监督学习:线性回归模型:输出y是连续的Logistic回归模型(实际上不是回归问题,是分类问题):输出y是0,1离散的 Logistic回归模型:Sigmoid函数:将任何输入变成0与1之间的... 查看详情

机器学习笔记模型评估与选择

2.模型评估与选择2.1经验误差和过拟合不同学习算法及其不同参数产生的不同模型,涉及到模型选择的问题,关系到两个指标性,就是经验误差和过拟合。1)经验误差错误率(errorrate):分类错误的样本数占样本总数的比例。如果... 查看详情

机器学习笔记

10:281.引言(Introduction)1.1Welcome1.2什么是机器学习(WhatisMachineLearning)1.3监督学习(SupervisedLearning)1.4无监督学习(UnsupervisedLearning)2单变量线性回归(LinearRegressionwithOneVariable)2.1模型表示(ModelRepresentation)2.2代价函数( 查看详情

大道至简机器学习算法之隐马尔科夫模型(hiddenmarkovmodel,hmm)详解---预测问题:维特比算法(viterbialgorithm)详解

...题:Baum-Welch算法❤️本文隶属专栏:大道至简之机器学习系列❤️更多精彩文章持续发布,敬请关注本人主页~目录写在前面一、从青蛙跳台阶问题引入动态规划思想二、从序列标注到维特比算法三、维特比算法四、... 查看详情

机器学习第2章学习笔记模型评估与选择

1.训练误差:学习器在训练集上的误差,也称“经验误差”2.泛化误差:学习器在新样本上的误差显然,我们的目标是得到在新样本上表现更好的学习器,即泛化误差要小 3.过拟合:学习器把训练样本学的太好了,导致... 查看详情

机器学习笔记:参数&超参数

1参数简单来说,模型参数就是模型内部的配置变量1.1参数的特征具体来讲,模型参数有以下特征:(1)进行模型预测时需要模型参数(2)模型参数值可以定义模型功能(3)模型参数用数据估... 查看详情

学习笔记spark——sparkmllib应用——机器学习简介sparkmllib简介

一、机器学习简介1.1、机器学习概念机器学习就是让机器能像人一样有学习、理解、认识的能力。机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能。机... 查看详情

学习笔记spark——sparkmllib应用——机器学习简介sparkmllib简介

一、机器学习简介1.1、机器学习概念机器学习就是让机器能像人一样有学习、理解、认识的能力。机器学习是一门人工智能的科学,该领域的主要研究对象是人工智能,特别是如何在经验学习中改善具体算法的性能。机... 查看详情