前言

本文介绍了隐马尔可夫模型 (HMM)、最大熵马尔可夫模型 (MEMM) 和条件随机场 (CRF) 的比较分析。 HMM、MEMM 和 CRF 是三种流行的统计建模方法,通常应用于模式识别和机器学习问题。 让我们更详细地探讨每种方法。

一、隐马尔可夫模型 (HMM)

“隐藏”一词象征着只有系统发布的符号是可观察的,而用户无法查看状态之间的底层随机游走。 该领域的许多人将 HMM 视为有限状态机。

    • HMM的优势

HMM 具有强大的统计基础和高效的学习算法,可以直接从原始序列数据中进行学习。 它允许以本地可学习方法的形式一致地处理插入和删除惩罚,并且可以处理可变长度的输入。 它们是序列概况最灵活的概括。 它还可以执行多种操作,包括多重对齐、数据挖掘和分类、结构分析和模式发现。 它也很容易组合到库中。

    • HMM 的缺点
  • HMM 仅依赖于每个状态及其对应的观察对象:

  • 序列标注,除了与单个词有关系外,还与观察到的序列长度、词上下文等方面有关。

  • 目标函数和预测的目标函数不匹配:HMM得到的是状态和观测序列的联合分布P(Y, X),而在估计问题上,我们需要一个条件概率P(Y|X)。

二、最大熵马尔可夫模型 (MEMM)

MEMM 考虑了相邻状态和整个观察序列之间的依赖关系,因此具有更好的表达能力。 MEMM不考虑P(X),减少建模工作量,学习目标函数与估计函数的一致性。

    • MEMM 标签偏差

在上图 中,状态 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 模型)

CRF 模型解决了标注偏差问题,消除了 HMM 中两个不合理的假设。 当然,模型也变得更复杂了。MEMM采用局部方差归一化,CRF采用全局方差归一化。另一方面,MEMM 无法找到满足以下分布的相应参数,但是 CRF 可以:

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 模型。

学习笔记:统计建模方法的比较分析相关推荐

  1. 2020-4-5 深度学习笔记17 - 蒙特卡罗方法 3 ( 马尔可夫链蒙特卡罗方法MCMC-先验分布/后验分布/似然估计,马尔可夫性质)

    第十七章 蒙特卡罗方法 中文 英文 2020-4-4 深度学习笔记17 - 蒙特卡罗方法 1 (采样和蒙特卡罗方法-必要性和合理性) 2020-4-4 深度学习笔记17 - 蒙特卡罗方法 2 ( 重要 ...

  2. 深度学习笔记:优化方法总结(BGD,SGD,Momentum,AdaGrad,RMSProp,Adam)

    深度学习笔记(一):logistic分类  深度学习笔记(二):简单神经网络,后向传播算法及实现  深度学习笔记(三):激活函数和损失函数  深度学习笔记:优化方法总结  深度学习笔记(四):循环神经 ...

  3. USB学习笔记(3)HID应用分析

    USB学习笔记(3)HID应用分析 本文根据前面对USB系统的了解,和USB协议的学习,列出鼠标,键盘,多媒体控制器,自定义HID设备等HID设备的各种描述符. 前景提要:每个设备有且仅有一个设备描述 ...

  4. AD学习笔记(四)PCB布局分析

    文章目录 AD学习笔记 第四讲 PCB布局分析 一.PCB导入以及常见报错解决方法 二.常见绿色报错的消除 三.PCB板框的评估及叠层设计 四.快捷键设置及推荐 五.PCB布局注意事项 AD学习笔记 ...

  5. Laravel学习笔记汇总——Collection方法详解

    ## Laravel学习笔记汇总--Collection方法详解 本文参考:https:// laravel.com/docs/8.x/collections // 返回整个底层的数组 collect ...

  6. Windows事件等待学习笔记(三)—— WaitForSingleObject函数分析

    Windows事件等待学习笔记(三)-- WaitForSingleObject函数分析 要点回顾 WaitForSingleObject NtWaitForSingleObject KeWaitFo ...

  7. 安卓逆向学习笔记:native层开发、分析和调试基础

    安卓逆向学习笔记:native层开发.分析和调试基础 本笔记主要是自己看,所以如果有看不懂的地方也请多多包涵,这一篇的笔记主要是<Android应用安全防护和逆向分析>的部分内容. 一 A ...

  8. Python学习笔记Task11.魔法方法

    Python学习笔记Task11.魔法方法 魔法方法格式__init__ 1.基本 init(self[,-]) new(cls[,-]) del(self) str(self) repr(self) ...

  9. nrf52832 学习笔记(二)SDK框架分析

    nrf52832 学习笔记(二)SDK框架分析 个人对SDK框架的一些理解,如有错误欢迎斧正. flash 分区 在不包含DFU的情况下,nrf52832 flash划分为: MBR 0x000000 ...

最新文章

  1. java程序无法连接redis 正常启动但是无法访问
  2. Android SDK打包
  3. hdu 1159(最长公共子序列)
  4. 怎么得到自增列的下一个会插入的id
  5. SpringBoot—项目启动时几种初始化操作及SpringApplication类详解
  6. pycharm+anaconda编译器运行程序时一直显示“ImportError: DLL load failed: 找不到指定的模块”的解决办法
  7. 对于当前时点不能进行事物的事后确认。
  8. 如何自己去写一个鼠标驱动_方法 - 做手写电子笔记的方法——如何在Windows电脑/平板上做手写笔记(包括非触屏电脑)(MacOS也可以)...
  9. rust进水器怎么用_RO反渗透净水器的正确使用方式 你都Get了吗?
  10. 微信支付之H5页面WAP端接入
  11. SONY 系列手机 Android 5.1 系统 Root 方法
  12. 办公本推荐计算机专业,口碑最好的办公笔记本排行 五款最受欢迎的办公笔记本推荐...
  13. Gspay 和 95epay
  14. 2019.6.7 一场搜索专题的考试【including 洛谷·血色先锋队,入门OJ·兴建高铁,珠光宝气阁
  15. Zeppelin-0.9.0 开启kerberos登陆认证
  16. 一个故事,一段代码告诉你如何使用不同语言(GolangC#)提供相同的能力基于Consul做服务注册与发现
  17. 代码表征预训练语言模型学习指南:原理、分析和代码
  18. Leecode 刷题记录 1217 玩筹码
  19. IT猿涨工资必备技能--GCT答题技巧
  20. 5.1(Spring)Spring和IOC学习

热门文章

  1. 全基因组完整数据实战
  2. 编译原理之算符优先分析语法程序
  3. 【编程题】【Scratch二级】2021.09 画正多边形
  4. servicenow CSA考试 可用学习资料
  5. thinkphp源码讲解——配置管理C函数
  6. Tomcat 警告之“资源添加到Web应用程序[]的缓存中,因为在清除过期缓存条目后可用空间仍不足 - 请考虑增加缓存的最大空间”
  7. 有关STC15W系列硬件SPI的配置问题
  8. ES搜索--轻量搜索语法
  9. 爆炸电容器:一个真实的故事从过去的爆炸---凯利讯半导体
  10. 音视频交流群又来啦~~~