HMM ,MHMM,CRF 优缺点与区别

简介: 隐马尔科夫模型(HMM): 图1. 隐马尔科夫模型 隐马尔科夫模型的缺点:         1、HMM只依赖于每一个状态和它对应的观察对象:               序列标注问题不仅和单个词相关,而且和观察序列的长度,单词的上下文,等等相关。         2、目标函数和预测目标函数不匹配:               HMM学到的是状

隐马尔科夫模型(HMM):

图1. 隐马尔科夫模型

隐马尔科夫模型的缺点:

        1、HMM只依赖于每一个状态和它对应的观察对象:

              序列标注问题不仅和单个词相关,而且和观察序列的长度,单词的上下文,等等相关。

        2、目标函数和预测目标函数不匹配:

              HMM学到的是状态和观察序列的联合分布P(Y,X),而预测问题中,我们需要的是条件概率P(Y|X)。

 

最大熵隐马尔科夫模型(MEMM):

 

图2. 最大熵马尔科夫模型

        MEMM考虑到相邻状态之间依赖关系,且考虑整个观察序列,因此MEMM的表达能力更强;MEMM不考虑P(X)减轻了建模的负担,同时学到的是目标函数是和预测函数一致。

MEMM的标记偏置问题:

 

图3. Viterbi算法解码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.2 X 0.5 = 0.06,P(1->1->2->2)= 0.4 X 0.55 X 0.3 = 0.066。

        图3中状态1倾向于转换到状态2,同时状态2倾向于保留在状态2;但是得到的最优的状态转换路径是1->1->1->1,为什么呢?因为状态2可以转换的状态比状态1要多,从而使转移概率降低;即MEMM倾向于选择拥有更少转移的状态。这就是标记偏置问题。而CRF很好地解决了标记偏置问题。


CRF 模型


CRF模型解决了标注偏置问题,去除了HMM中两个不合理的假设,当然,模型相应得也变复杂了。
        

MEMM是局部归一化,CRF是全局归一化

        另一方面,MEMMs不可能找到相应的参数满足以下这种分布:

         a b c --> a/A b/B c/C      p(A B C | a b c) = 1

         a b e --> a/A b/D e/E      p(A D E | a b e) = 1

         p(A|a)p(B|b,A)p(C|c,B) = 1

         p(A|a)p(D|b,A)p(E|e,D) = 1

       但是CRFs可以找到模型满足这种分布。



1)生成式模型or判别式模型(假设 o 是观察值,m 是模型。

    a)生成式模型:无穷样本 -> 概率密度模型 = 产生式模型 -> 预测

        如果对 P(o|m) 建模,就是生成式模型。其基本思想是首先建立样本的概率密度模型,再利用模型进行推理预测。要求已知样本无穷或尽可能的大限制。这种方法一般建立在统计力学和 Bayes 理论的基础之上。

        HMM模型对转移概率和表现概率直接建模,统计共同出现的概率,是一种生成式模型。

  b)判别式模型:有限样本 -> 判别函数 = 判别式模型 -> 预测

         如果对条件概率 P(m|o) 建模,就是判别模型。其基本思想有限样本条件下建立判别函数,不考虑样本的产生模型,直接研究预测模型。代表性理论为统计学习理论。

         CRF是一种判别式模型。MEMM不是一种生成式模型,它是一种基于下状态分类的有限状态模型。

2)拓扑结构

    HMM和MEMM是一种有向图,CRF是一种无向图

3)全局最优or局部最优

    HMM对转移概率和表现概率直接建模,统计共现概率。

    MEMM是对转移概率和表现概率建立联合概率,统计时统计的是条件概率,由于其只在局部做归一化,所以容易陷入局部最优。

    CRF是在全局范围内统计归一化的概率,而不像是MEMM在局部统计归一化概率。是全局最优的解。解决了MEMM中标注偏置的问题。

   

4)优缺点比较

    优点:

   a)与HMM比较。CRF没有HMM那样严格的独立性假设条件,因而可以容纳任意的上下文信息。特征设计灵活(与ME一样)

   b)与MEMM比较。由于CRF计算全局最优输出节点的条件概率,它还克服了最大熵马尔可夫模型标记偏置(Label-bias)的缺点。

   c)与ME比较。CRF是在给定需要标记的观察序列的条件下,计算整个标记序列的联合概率分布,而不是在给定当前状态条件下,定义下一个状态的状态分布。

    缺点:

    训练代价大、复杂度高


目录
相关文章
|
自然语言处理 区块链 Python
传统的序列模型CRF与HMM区别
传统的序列模型CRF与HMM区别
|
10月前
|
机器学习/深度学习 算法 搜索推荐
联邦学习的未来:深入剖析FedAvg算法与数据不均衡的解决之道
随着数据隐私和数据安全法规的不断加强,传统的集中式机器学习方法受到越来越多的限制。为了在分布式数据场景中高效训练模型,同时保护用户数据隐私,联邦学习(Federated Learning, FL)应运而生。它允许多个参与方在本地数据上训练模型,并通过共享模型参数而非原始数据,实现协同建模。
1090 0
|
SQL 关系型数据库 MySQL
实时计算 Flink版操作报错之报错:Column 'o7' not found in any table 如何解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
传感器 存储 安全
智能标签:物品追踪与管理的革新
【10月更文挑战第19天】智能标签技术通过集成RFID、二维码和传感器等技术,实现了物品的高效追踪与管理,广泛应用于物流、零售、医疗、交通和工业等领域,正引领物品管理的革新。本文探讨其原理、技术、应用及未来趋势。
|
Shell 网络安全 开发工具
Git,GitHub,Gitee&IDEA集成Git
Git提交项目到GitHub简洁版、版本控制、安装、常用命令、分支、团队协作机制、Github、Gitee远程仓库、IDEA集成Git、IDEA集成Github、IDEA集成Gitee
Git,GitHub,Gitee&IDEA集成Git
|
SQL Java 数据库连接
Spring问题之@RequestMapping注解的作用和使用方式是啥
Spring问题之@RequestMapping注解的作用和使用方式是啥
250 3
|
分布式计算 大数据 数据处理
Apache Spark的应用与优势:解锁大数据处理的无限潜能
【8月更文挑战第23天】Apache Spark以其卓越的性能、易用性、通用性、弹性与可扩展性以及丰富的生态系统,在大数据处理领域展现出了强大的竞争力和广泛的应用前景。随着大数据技术的不断发展和普及,Spark必将成为企业实现数字化转型和业务创新的重要工具。未来,我们有理由相信,Spark将继续引领大数据处理技术的发展潮流,为企业创造更大的价值。
|
存储 关系型数据库 MySQL
PolarDB的特点
【5月更文挑战第13天】PolarDB的特点
654 1
【51单片机】一个简单的例子TMOD&TCON带你永远理解【(不)可位寻址】
【51单片机】一个简单的例子TMOD&TCON带你永远理解【(不)可位寻址】
|
存储 JSON C#
【Unity 3D】C#从JSON文件中读取、解析、保存数据(附源码)
【Unity 3D】C#从JSON文件中读取、解析、保存数据(附源码)
825 0