HMM

概率图模型学习笔记:HMM、MEMM、CRF

孤街浪徒 提交于 2020-03-17 14:40:46
作者:Scofield 链接:https://www.zhihu.com/question/35866596/answer/236886066 来源:知乎 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。 so far till now, 我还没见到过将CRF讲的个明明白白的。一个都没。就不能不抄来抄去吗? 我打算搞一个这样的版本,无门槛理解的。 ——20170927 陆陆续续把调研学习工作完成了,虽然历时有点久,现在put上来。评论里的同学也等不及了时不时催我,所以不敢怠慢啊…… 总结的还算比较体系化,蛮长的,请读者慢慢看,肯定有收获的。 (好痛苦,这么多公式都要在知乎上重输;是在MD上写的,在知乎上没想到格式这么难看……) ——20180129 概率图模型学习笔记:HMM、MEMM、CRF 一、Preface 二、Prerequisite 2.1 概率图 2.1.1 概览 2.1.2 有向图 vs. 无向图 2.1.3 马尔科夫假设&马尔科夫性 2.2 判别式模型 vs. 生成式模型 2.3 序列建模 三、HMM 3.1 理解HMM 3.2 模型运行过程 3.2.1 学习过程 3.2.2 序列标注(解码)过程 3.2.3 序列概率过程 四、MEMM 4.1 理解MEMM 4.2 模型运行过程 4.2.1 学习过程 4.2.2 序列标注(解码)过程 4.2.3

条件随机场CRF HMM,MEMM的区别

孤街醉人 提交于 2020-03-14 03:45:47
http://blog.sina.com.cn/s/blog_605f5b4f010109z3.html 首先,CRF,HMM(隐马模型),MEMM(最大熵隐马模型)都常用来做序列标注的建模,像词性标注,True casing。但 隐马模型一个最大的缺点就是由于其输出独立性假设,导致其不能考虑上下文的特征,限制了特征的选择, 而最大熵隐马模型则解决了这一问题,可以任意的选择特征, 但由于其在每一节点都要进行归一化,所以只能找到局部的最优值,同时也带来了标记偏见的问题(label bias),即凡是训练语料中未出现的情况全都忽略掉 ,而条件随机场则很好的解决了这一问题,他并不在每一个节点进行归一化,而是 所有特征进行全局归一化,因此可以求得全局的最优值。 目前,条件随机场的训练和解码的开源工具还只支持链式的序列,复杂的尚不支持,而且训练时间很长,但效果还可以。 这三个模型都可以用来做序列标注模型。但是其各自有自身的特点,HMM模型是对转移概率和表现概率直接建模,统计共现概率。而MEMM模型是对转移 概率和表现概率建立联合概率,统计时统计的是条件概率。MEMM容易陷入局部最优,是因为MEMM只在局部做归一化,而CRF模型中,统计了全局概率,在 做归一化时,考虑了数据在全局的分布,而不是仅仅在局部归一化,这样就解决了MEMM中的标记偏置的问题。 举个例子,对于一个标注任务,

隐马尔科夫模型HMM

大兔子大兔子 提交于 2020-03-05 15:46:51
隐马尔科夫模型(Hidden Markov Model,以下简称HMM)是比较经典的机器学习模型了,它在语言识别,自然语言处理,模式识别等领域得到广泛的应用。 HMM初探 什么样的问题需要HMM模型 使用HMM模型时我们的问题一般有这两个特征: 问题是基于序列的,比如时间序列,或者状态序列。 问题中有两类数据,一类序列数据是可以观测到的,即观测序列;而另一类数据是不能观察到的,即隐藏状态序列,简称状态序列。 有了这两个特征,那么这个问题一般可以用HMM模型来尝试解决。这样的问题在实际生活中是很多的。比如:我现在在打字写博客,我在键盘上敲出来的一系列字符就是观测序列,而我实际想写的一段话就是隐藏序列,输入法的任务就是从敲入的一系列字符尽可能的猜测我要写的一段话,并把最可能的词语放在最前面让我选择,这就可以看做一个HMM模型了。再举一个,我在和你说话,我发出的一串连续的声音就是观测序列,而我实际要表达的一段话就是状态序列,你大脑的任务,就是从这一串连续的声音中判断出我最可能要表达的话的内容。 HMM模型的定义 对于HMM模型,首先我们假设 Q Q Q 是所有可能的隐藏状态的集合, V V V 是所有可能的观测状态的集合,即: Q = { q 1 , q 2 , . . . , q N } ,    V = { v 1 , v 2 , . . . v M } Q = \{q_1,q_2,

Machine Learning系列--CRF条件随机场总结

对着背影说爱祢 提交于 2020-03-02 22:57:08
根据《统计学习方法》一书中的描述,条件随机场(conditional random field, CRF)是给定一组输入随机变量条件下另一组输出随机变量的条件概率分布模型,其特点是假设输出随机变量构成马尔科夫随机场。 条件随机场是一种判别式模型。 一、理解条件随机场 1.1 HMM简单介绍 HMM即 隐马尔可夫模型 ,它是处理序列问题的统计学模型,描述的过程为:由隐马尔科夫链随机生成 不可观测的状态随机序列 ,然后各个状态分别生成一个观测,从而产生观测随机序列。 在这个过程中,不可观测的序列称为状态序列(state sequence), 由此产生的序列称为观测序列(observation sequence)。 该过程可通过下图描述: 上图中, $X_1,X_2,…X_T$是隐含序列,而$O_1, O_2,..O_T$是观察序列。 隐马尔可夫模型由三个概率确定: 初始概率分布 ,即初始的隐含状态的概率分布,记为$\pi$; 状态转移概率分布 ,即隐含状态间的转移概率分布, 记为$A$; 观测概率分布 ,即由隐含状态生成观测状态的概率分布, 记为$B$。 以上的三个概率分布可以说就是隐马尔可夫模型的参数,而根据这三个概率,能够确定一个隐马尔可夫模型$\lambda = (A, B, \pi)$。 而隐马尔科夫链的三个基本问题为: 概率计算问题 。即给定模型$\lambda = (A,

HMM(隐马尔科夫模型)之 Viterbi 算法

社会主义新天地 提交于 2020-02-29 08:50:23
背景 HMM(隐马尔科夫模型)有 两类变量:(变量序列) 1. Hidden States:xi 2. Events:ei 模型的三要素: 1. State priors 2. Transition matrix 3. Emission matrix 三种求解问题: 1. 已知 模型三要素 和 Events,求Hidden States:Viterbi算法 2. 已知 模型三要素 和 Events,求这一系列Events发生的概率:Forward/Backward 算法 3. 已知 Events,求 模型三要素: Baum-Welch算法 以下为我个人对三种算法的理解: Viterbi算法 和 Forward/Backward 算法都是 动态规划 的一种特例 Baum-Welch算法 是 EM算法 的一种特例(迭代的方法估计参数基本都是EM算法) Viterbi 算法 简单了解Viterbi算法的思想可以看: https://www.zhihu.com/question/20136144/answer/763021768 在一个HMM模型的例子中来讲解可以看: https://www.zhihu.com/question/20136144/answer/239971177 代码如下: 来源: https://www.cnblogs.com/sbj123456789/p

(KWS-DNN)Small-footprint keyword spotting using deep neural networks

半世苍凉 提交于 2020-02-19 11:47:31
会议:ICASSP 2014 论文: Small-footprint keyword spotting using deep neural networks 作者:Guoguo Chen ; Carolina Parada ; Georg Heigold Abstract 我们的应用程序需要具有内存占用量小,计算成本低和精度高的关键字查找系统。为了满足这些要求,我们提出了一种基于深度神经网络的简单方法。训练深度神经网络以直接预测关键词或关键词的子词单元,然后采用后处理方法产生最终的置信度得分。相对于基于竞争性的基于隐马尔可夫模型的系统,关键字识别结果实现了45%的相对改进,而在有杂音的情况下,性能则显示了39%的相对改进。 INTRODUCTION 由于智能手机和平板电脑的快速发展,使用语音与技术进行交互变得司空见惯。例如,Google提供了在Android设备上通过语音搜索[1]的功能,而Apple的iOS设备配备了名为Siri的会话助手。这些产品允许用户点击设备,然后说出查询或命令。 我们有兴趣通过开发一个系统来连续不断地收听特定的关键字来启动语音输入,从而使用户拥有完全的免提体验。这在开车等情况下尤其有用。所提出的系统必须高度准确,低延迟,占用空间小,并且必须在计算受限的环境(例如现代移动设备)中运行。在设备上运行系统避免了连接到服务器进行识别的延迟和功耗问题。 关键字搜寻

Atitit 语音识别的技术原理

醉酒当歌 提交于 2020-02-15 22:57:23
Atitit 语音识别的技术原理 1.1. 语音识别技术,也被称为 自动语音识别 Automatic Speech Recognition , (ASR) , 2 1.2. 模型 目前,主流的大词汇量语音识别系统多采用统计 模式识别技术 2 1.3. 基本方法 般来说 , 语音识别的方法有三种:基于声道模型和语音知识的方法、模板匹配的方法以及利用人工神经网络的方法。 2 1.3.1. 模板匹配的方法 2 1.4. 一般来说 , 语音识别的方法有三种:基于声道模型和语音知识的方法、模板匹配的方法以及利用人工神经网络的方法。 2 1.5. 提及 语音识别 ,就不能不说 Nuance, Nuance的语音技术是以统计推断方法为基础,着眼于音素(音节的声音)和语境来识别话语 2 1.6. , 神经网络 。 这种技术可使得精确度提升 25%以上,这是一个巨大的飞跃,因为这个行业只需要提升5%就具备革命意义 3 1.7. 语音信号预处理与特征提取 3 1.7.1. 基于语音学和声学的方法 3 1.8. PCM 文件,也就是俗称的 wav 文件。 4 1.9. VAD 静音切除 4 1.10. 要对声音进行分析,需要对声音分帧,也就是把声音切开成一小段一小段,每小段称为一帧。 4 1.11. 一个完整的基于统计的语音识别系统可大致分为三部分: 5 1.12. MFCC 特征 特征主要用

HMM

廉价感情. 提交于 2020-01-28 19:15:13
1、什么是HMM? 1.1 马尔可夫过程 马尔可夫性质是一种很有效的简化模型的工具,只要你说某过程具有马尔可夫性质,就说明该过程无后效性,什么意思呢? 就是说下一刻的状态只和我这一刻的状态有关,和我之前的状态是没有关系的。 马尔可夫链的极限分布,就是马尔可夫链经过无限长时间的转移,达到的最终状态,这个状态之和转移矩阵有关,与初始状态无关。 https://zhuanlan.zhihu.com/p/26453269 1.2 隐马尔可夫模型(Hidden Markov Model,HMM) 它用来描述一个含有隐含未知参数的马尔可夫过程。其难点是从可观察的参数中确定该过程的隐含参数。然后利用这些参数来作进一步的分析,例如模式识别。 任何一个HMM都可以通过下列五元组来描述: :param obs:观测序列 :param states:隐状态 :param start_p:初始概率(隐状态) :param trans_p:转移概率(隐状态) :param emit_p: 发射概率 (隐状态表现为显状态的概率) HMM典型应用: 根据掷骰子的结果序列,求解最可能的掷骰子方法: 此HMM包含掷骰子方法的信息 (掷骰子和掷骰子结果之间的联系) https://www.cnblogs.com/fulcra/p/11065474.html 根据拿球的结果序列,求解最可能的拿球方法:

猪猪的机器学习笔记(十七)隐马尔科夫模型HMM

老子叫甜甜 提交于 2020-01-20 04:43:54
隐马尔科夫模型 HMM 作者:樱花猪 摘要: 本文为七月算法( julyedu.com ) 12 月机器学习第十七次课在线笔记。 隐马尔可夫模型(Hidden Markov Model,HMM)是统计模型 ,它用来描述一个含有隐含未知参数的马尔科夫过程 。其难点是从可观察的参数中确定该过程的隐含参数,然后利用这些参数来作进一步的分析。在早些年HMM模型被非常广泛的应用,而现在随着机器学习的发展HMM模型的应用场景越来越小然而在图像识别等领域HMM依然起着重要的作用。 引言: 隐马尔科夫模型 是马尔科夫链 的一种,它的状态不能直接观察到,但能通过观测向量序列观察到,每个观测向量都是通过某些概率密度 分布表现为各种状态,每一个观测向量是由一个具有相应概率密度分布的状态序列产生。所以,隐马尔科夫模型 是一个双重随机过程----具有一定状态数的隐马尔科夫链 和显示随机函数集。自20世纪80年代以来,HMM被应用于语音识别 ,取得重大成功。到了90年代,HMM还被引入计算机文字识别和移动通信核心技术“多用户的检测”。HMM在生物信息科学、故障诊断等领域也开始得到应用。 本次课程以中文分子算法为实践背景基础来讲述隐马尔科夫模型。本次课程主要分享了隐马尔科夫模型的概率计算、参数估计和模拟预测等方法,结合课程上提到的实力,我们能够感受大HMM能够经久不衰的强大力量。

three HMM algorithms with python

牧云@^-^@ 提交于 2020-01-16 05:15:49
轻易不赞美,这个不得不赞,几个例子看一看 三个算法就全部明白了。 看来自己属于learning by example/doing 的类型。 An Introduction to 隐马尔科夫模型(viterbi算法) 关键词 : Introduction 隐马尔科夫模型 viterbi算法 An Introduction to 隐马尔科夫模型(viterbi算法) 我要推荐给大家这个网站 http://www.comp.leeds.ac.uk/roger/HiddenMarkovModels/html_dev/main.html 这是一个介绍HMM的网页,里面的内容言简意赅,而且深入浅出,特别介绍了在一阶HMM模型下的两个常用算法: Viterbi algorithm 和 Forward-Backward Algorithm 。给我留下深刻印象的就是那个小实验程序: http://www.comp.leeds.ac.uk/roger/HiddenMarkovModels/html_dev/viterbi_algorithm/s3_pg3.html 给人一目了然的感觉。 说了很多,Viterbi算法在模式识别领域有很广的应用空间,这个网站对于入门级的研究人员有很大帮助。 原文地址 http://nishuixingzhou.bokee.com/6099780.html 来源: