学习笔记:统计建模方法的比较分析
前言
本文介绍了隐马尔可夫模型 (HMM)、最大熵马尔可夫模型 (MEMM) 和条件随机场 (CRF) 的比较分析。 HMM、MEMM 和 CRF 是三种流行的统计建模方法,通常应用于模式识别和机器学习问题。 让我们更详细地探讨每种方法。
一、隐马尔可夫模型 (HMM)
“隐藏”一词象征着只有系统发布的符号是可观察的,而用户无法查看状态之间的底层随机游走。 该领域的许多人将 HMM 视为有限状态机。
![](/assets/blank.gif)
- HMM的优势
HMM 具有强大的统计基础和高效的学习算法,可以直接从原始序列数据中进行学习。 它允许以本地可学习方法的形式一致地处理插入和删除惩罚,并且可以处理可变长度的输入。 它们是序列概况最灵活的概括。 它还可以执行多种操作,包括多重对齐、数据挖掘和分类、结构分析和模式发现。 它也很容易组合到库中。
- HMM 的缺点
HMM 仅依赖于每个状态及其对应的观察对象:
序列标注,除了与单个词有关系外,还与观察到的序列长度、词上下文等方面有关。
目标函数和预测的目标函数不匹配:HMM得到的是状态和观测序列的联合分布P(Y, X),而在估计问题上,我们需要一个条件概率P(Y|X)。
二、最大熵马尔可夫模型 (MEMM)
![](/assets/blank.gif)
MEMM 考虑了相邻状态和整个观察序列之间的依赖关系,因此具有更好的表达能力。 MEMM不考虑P(X),减少建模工作量,学习目标函数与估计函数的一致性。
- MEMM 标签偏差
![](/assets/blank.gif)
在上图 中,状态 1 倾向于转换为状态 2,同时状态 2 倾向于停留在状态 2。
P(1-> 1-> 1-> 1)= 0.4 x 0.45 x 0.5 = 0.09, P(2->2->2->2)= 0.2 x 0.3 x 0.3 = 0.018,
P(1->2->1->2)= 0.6 x 0.2x 0.5 = 0.06,P(1->1->2->2)= 0.4 x 0.55 x 0.3 = 0.066。
然而,最佳状态转换路径是 1 > 1 > 1 > 1。 为什么?
这是因为 State 2 的可转换状态比 State 1 多,从而降低了转换概率——MEMM 倾向于选择可转换状态较少的状态。 这种选择被称为标签偏差问题。 CRF 很好地解决了标签偏差问题。
三、条件随机场(CRF 模型)
![](/assets/blank.gif)
CRF 模型解决了标注偏差问题,消除了 HMM 中两个不合理的假设。 当然,模型也变得更复杂了。MEMM采用局部方差归一化,CRF采用全局方差归一化。另一方面,MEMM 无法找到满足以下分布的相应参数,但是 CRF 可以:
![](/assets/blank.gif)
1.生成模型或判别模型
假设 o 是观测值,m 是模型。
a) 生成模型:无限样本>概率密度模型=生成模型>预测
如果你对 P(o|m) 建模,它就是一个生成模型。 其基本思想是,首先建立样本的概率密度模型,然后利用该模型进行推理预测。 样本无限大或尽可能大的要求是常识。 该方法借鉴了统计力学和贝叶斯理论。
HMM直接对转移概率和表型概率进行建模,计算共现概率。 因此,它是一个生成模型。
b) 判别模型:有限样本>判别函数=判别模型>预测
如果你在条件概率 P(m|o) 上建模,它就是判别模型。 其基本思想是以有限样本建立判别函数,不考虑样本的生成模型,直接研究预测模型。 其代表理论是统计学习理论。
CRF是一种判别模型。 MEMM 不是生成模型,而是基于状态分类的具有有限状态的模型。
2.拓扑结构
HMM和MEMM是有向图,而CRF是无向图。
3.全局最优或局部最优
HMM直接对转移概率和表型概率进行建模,计算共现概率。
MEMM 基于转移概率和表型概率建立共现概率。 它计算条件概率,只采用局部方差归一化,容易陷入局部最优。
CRF 在全局范围内计算归一化概率,而不是像 MEMM 那样在局部范围内计算。 它是一个最优的全局解决方案,解决了 MEMM 中的标签偏差问题。
4.CRF的优点和缺点
(1)优点
与HMM相比:由于CRF没有HMM那样严格的独立性假设,它可以容纳任何上下文信息。 其功能设计灵活(与ME相同)。
与MEMM相比:由于CRF计算的是全局最优输出节点的条件概率,因此克服了MEMM中label bias的弊端。
与ME相比:CRF计算的是在有待标记的观察序列时,整个标记序列的联合概率分布,而不是定义给定当前状态条件下下一个状态的状态分布。
(2)缺点
CRF 在算法的训练阶段具有高度的计算复杂性。 当更新的数据可用时,很难重新训练模型。
结论
这篇博客详细介绍了隐马尔可夫模型 (HMM)、最大熵马尔可夫模型 (MEMM) 和条件随机场 (CRF) 之间的比较分析。 在这篇文章中,我们明确了解到 CRF 和 MEMMS 主要是判别序列模型,而 HMM 主要是生成序列模型。 贝叶斯规则构成了 HMM 的基础。 相反,CRF 和 MEMM 基于过渡和可观察特征的 MaxEnt 模型。
学习笔记:统计建模方法的比较分析相关推荐
- 2020-4-5 深度学习笔记17 - 蒙特卡罗方法 3 ( 马尔可夫链蒙特卡罗方法MCMC-先验分布/后验分布/似然估计,马尔可夫性质)
第十七章 蒙特卡罗方法 中文 英文 2020-4-4 深度学习笔记17 - 蒙特卡罗方法 1 (采样和蒙特卡罗方法-必要性和合理性) 2020-4-4 深度学习笔记17 - 蒙特卡罗方法 2 ( 重要 ...
- 深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)
深度学习笔记(一):logistic分类 深度学习笔记(二):简单神经网络,后向传播算法及实现 深度学习笔记(三):激活函数和损失函数 深度学习笔记:优化方法总结 深度学习笔记(四):循环神经 ...
- USB学习笔记(3)HID应用分析
USB学习笔记(3)HID应用分析 本文根据前面对USB系统的了解,和USB协议的学习,列出鼠标,键盘,多媒体控制器,自定义HID设备等HID设备的各种描述符. 前景提要:每个设备有且仅有一个设备描述 ...
- AD学习笔记(四)PCB布局分析
文章目录 AD学习笔记 第四讲 PCB布局分析 一.PCB导入以及常见报错解决方法 二.常见绿色报错的消除 三.PCB板框的评估及叠层设计 四.快捷键设置及推荐 五.PCB布局注意事项 AD学习笔记 ...
- Laravel学习笔记汇总——Collection方法详解
## Laravel学习笔记汇总--Collection方法详解 本文参考:https:// laravel.com/docs/8.x/collections // 返回整个底层的数组 collect ...
- Windows事件等待学习笔记(三)—— WaitForSingleObject函数分析
Windows事件等待学习笔记(三)-- WaitForSingleObject函数分析 要点回顾 WaitForSingleObject NtWaitForSingleObject KeWaitFo ...
- 安卓逆向学习笔记:native层开发、分析和调试基础
安卓逆向学习笔记:native层开发.分析和调试基础 本笔记主要是自己看,所以如果有看不懂的地方也请多多包涵,这一篇的笔记主要是<Android应用安全防护和逆向分析>的部分内容. 一 A ...
- Python学习笔记Task11.魔法方法
Python学习笔记Task11.魔法方法 魔法方法格式__init__ 1.基本 init(self[,-]) new(cls[,-]) del(self) str(self) repr(self) ...
- nrf52832 学习笔记(二)SDK框架分析
nrf52832 学习笔记(二)SDK框架分析 个人对SDK框架的一些理解,如有错误欢迎斧正. flash 分区 在不包含DFU的情况下,nrf52832 flash划分为: MBR 0x000000 ...
最新文章
- java程序无法连接redis 正常启动但是无法访问
- Android SDK打包
- hdu 1159(最长公共子序列)
- 怎么得到自增列的下一个会插入的id
- SpringBoot—项目启动时几种初始化操作及SpringApplication类详解
- pycharm+anaconda编译器运行程序时一直显示“ImportError: DLL load failed: 找不到指定的模块”的解决办法
- 对于当前时点不能进行事物的事后确认。
- 如何自己去写一个鼠标驱动_方法 - 做手写电子笔记的方法——如何在Windows电脑/平板上做手写笔记(包括非触屏电脑)(MacOS也可以)...
- rust进水器怎么用_RO反渗透净水器的正确使用方式 你都Get了吗?
- 微信支付之H5页面WAP端接入
- SONY 系列手机 Android 5.1 系统 Root 方法
- 办公本推荐计算机专业,口碑最好的办公笔记本排行 五款最受欢迎的办公笔记本推荐...
- Gspay 和 95epay
- 2019.6.7 一场搜索专题的考试【including 洛谷·血色先锋队,入门OJ·兴建高铁,珠光宝气阁
- Zeppelin-0.9.0 开启kerberos登陆认证
- 一个故事,一段代码告诉你如何使用不同语言(GolangC#)提供相同的能力基于Consul做服务注册与发现
- 代码表征预训练语言模型学习指南:原理、分析和代码
- Leecode 刷题记录 1217 玩筹码
- IT猿涨工资必备技能--GCT答题技巧
- 5.1(Spring)Spring和IOC学习