zoukankan      html  css  js  c++  java
  • 自然语言处理基础:HMM与CRF模型比较

    一、HMM模型

    1.HMM模型的原理?
    马尔科夫假设:当前状态仅与上一个状态有关;
    观测独立性假设: 任意时刻的观察状态仅仅依赖于当前时刻的隐藏状态
    图中Q是状态序列,O是观察序列
    举例:词性标注【我爱美丽的中国】
    状态集合S={名词N,动词V,形容词A}
    状态序列Q={N,V,A}
    转移矩阵aij :
      N   V    A
    N 0.1 0.2 0.7
    V 0.2 0.7 0.1
    A 0.7 0.2 0.1
    输出观察序列O={N,V,A,N}
    求P(O) = P(N)*p(V|N)*P(A|V)*P(N|A)
     
    2.隐状态是什么含义?
    模型的状态转换过程是不可观察的,可观察事件是状态的随机函数。
     
    3.三个基本问题?
    概率计算问题:前向算法,后向算法 --> 求观察序列O的概率
    预测问题:维特比算法-->求解最优路径Q
    学习问题:loss函数,最大似然估计-->训练模型参数,如何调节模型(A,B,u)的参数使得P(O|u)最大化
     
    二、CRF模型
    1.CRF模型的原理?
    (1)假设满足马尔可夫性:当前状态与前一个和后一个状态及观测序列(有线相连的节点)有关,与其他状态无关;
    (2)无观测独立性假设;
    (3)由于限制更少,CRF利用了更多的信息,如观测序列上下文信息,以及观测序列元素本身的特征(是否是数字,是否大写,是否以某字符串开头或结尾)
     
    图中Y是输出标注状态序列,X是输入文本的观察序列
    举例:词性标注【我爱美丽的中国】
    Y = {N,V,A,N}
    X = {我,爱,美丽的,中国}
    求条件概率P(Y|X)
    t(y,x,i)是转移函数,表示标注序列Y在i及i-1位置上标记的转移概率。
    s(y,x,i)是状态函数,表示观察序列X在i位置的标记概率。
    lamda和u分别是各自的权重。
     
    三、综合比较
    (1)HMM与CRF都具有三个基本问题:概率计算问题,预测问题,学习问题
    (2)CRF没有HMM的独立性假设的严格要求,对序列内部信息和外部观察信息都可以有效利用,避免了标注偏置的问题。
    (3)对于概率计算问题,HMM是模拟参数的随机分布,而CRF是求解问题的特征函数。
     
     
     
     
  • 相关阅读:
    找出优先要作的工作
    我要作技术研发了
    确定配色方案
    今天公司搬家
    要作界面原型了
    使用自已的命名空间
    进行审核了
    那里有皮肤软件工开发包的源码???
    发葡萄
    作业务规则挺难
  • 原文地址:https://www.cnblogs.com/zhongzihao/p/12727385.html
Copyright © 2011-2022 走看看