在自然语言处理中,概率图模型极为重要,在中文分词、词性标注、命名实体识别等诸多场景中有著广泛的应用。概率图模型(Graphical Model)分为贝叶斯网路(Bayesian Network)和马尔科夫网路(Markov Network),其中贝叶斯网路可以用一个有向图结构表示,马尔科夫网路可以用无向图结构;进一步概率图模型包含朴素贝叶斯模型、最大熵模型、隐马尔可夫模型、条件随机场、主题模型等。此外,概率图模型常常会涉及表示、推断、参数学习三大问题。

概率图模型的三大问题

概率图模型涉及很多方面,本文仅仅介绍两个重要模型HMM和CRF,将有关的概率图串起来。本文不仔细介绍有关底层知识,仅是一篇汇总+总结文。

1、HMM VS NB,GMM

本小节从朴素贝叶斯模型(NB)和高斯混合模型(GMM)引出隐马尔可夫模型(HMM)。

1.1 朴素贝叶斯模型(NB)

NB的目标函数是后验概率最大化,其等价于0-1损失最小。NB是贝叶斯网路中最为简单的一个模型,贝叶斯网路中应熟悉概率因子分解和条件独立性判断(head to tail,tail to tail,head to head),而NB正是应用了tail to tail的条件独立性假设。

朴素贝叶斯模型(NB)

最大后验概率: y=max   P(y_{k} | x) =max  frac{P(x |y_{k})P(y_{k})}{P(x)}

条件独立性假设: P(x | y_{k})=prod_{i=1}^{n}P(x_{i} |y_{k})

NB的参数学习意味著需要估计 P(x |y_{k})P(y_{k}) ,可以采用极大似然估计(MLE);而采用MLE可能会出现估计概率为0的情况,这会影响后验概率的计算结果,使分类产生偏差。因此,可采用贝叶斯估计解决,如add-1-smoothing 或者 add-k-smoothing。

1.2 高斯混合模型(GMM)

再引出GMM之前,首先换个角度理解NB:把NB看做单一模型,即观测变数 x_{i}y_{k} 产生,而y_{k} 也是可以观测的;一旦给定y_{k},就可以估计 P(x |y_{k})

而对于GMM,观测变数虽然 x_{i}也是由y_{k} 产生的,但是y_{k} 确实不可以观测的。「混合」表示观测变数 x_{i} 会由多个隐变数 y_{k} 产生:

p(x)=sum_{k}^{K}{p(x,y_{k})}=sum_{k}^{K}{p(x|y_{k})p(y_{k})}

GMM也是一种常见的聚类演算法,使用EM演算法进行迭代计算;GMM假设每个簇的分布服从高斯分布。

1.3 隐马尔可夫模型(HMM)

在引入HMM之前,我们分别介绍了NB和GMM,那么它们与HMM有何关联?

当NB中的 y_{k} 变为隐变数时,即可得到「混合」的GMM模型;而当GMM模型中的隐变数展开为时间序列时,即可得到HMM。

隐马尔可夫模型(HMM)

学习HMM的口诀是「1-2-3」:

(1)1个参数包含: lambda={pi,A,B}

(2)2个假设:一阶马尔科夫假设+观测独立性假设;

(3)3个问题:概率计算问题(前向后向);参数学习问题(EM/MLE);预测问题(Viterbi);

2、CRF VS LR,ME

2.1 最大熵模型ME

最大熵模型(ME)

最大熵模型由最大熵原理导出,最大熵原理是概率学习和估计的一个准则。最大熵原理认为在所有可能的概率模型的集合中,熵最大的模型是最好的模型。最大熵模型的学习等价于约束最优化问题:

求解之后可以得到最大熵模型的表达式为:

最大熵模型最终可以归结为学习最佳的参数w。

2.2 从最大熵模型ME看逻辑回归LR

如果将看作 y 二元变数,并且将特征函数修改为: f(x,y)={g(x),y=y_{1};0,y=y_{0}}

即可得到sigmoid函数:

p(y_{1}|x)=frac{1}{1+exp(-w*g(x))}

从上所述,可以看出LR是最大熵模型ME的一个特例。 LR和ME均属于对数线性模型。

2.3 从最大熵模型ME看CRF

条件随机场(CRF)

条件随机场CRF可以看作是最大熵模型ME在时间序列上的延伸。

3、HMM、MEMM vs CRF

本小节对HMM、MEMM和CRF进行对比。

1)HMM是有向图模型,是生成模型;HMM有两个假设:一阶马尔科夫假设和观测独立性假设;但对于序列标注问题不仅和单个词相关,而且和观察序列的长度,单词的上下文,等等相关。

2)MEMM(最大熵马尔科夫模型)是有向图模型,是判别模型;MEMM打破了HMM的观测独立性假设,MEMM考虑到相邻状态之间依赖关系,且考虑整个观察序列,因此MEMM的表达能力更强;但MEMM会带来标注偏置问题:由于局部归一化问题,MEMM倾向于选择拥有更少转移的状态。这就是标记偏置问题。

最大熵模型(MEMM)

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

HMM、MEMM和CRF的优缺点比较:

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

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

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

首先,CRF,HMM(隐马模型),MEMM(最大熵隐马模型)都常用来做序列标注的建模,像分词、词性标注,以及命名实体标注

隐马模型一个最大的缺点就是由于其输出独立性假设,导致其不能考虑上下文的特征,限制了特征的选择最大熵隐马模型则解决了隐马的问题,可以任意选择特征,但由于其在每一节点都要进行归一化,所以只能找到局部的最优值,同时也带来了标记偏见的问题,即凡是训练语料中未出现的情况全都忽略掉。条件随机场则很好的解决了这一问题,他并不在每一个节点进行归一化,而是所有特征进行全局归一化,因此可以求得全局的最优值。

推荐阅读:

相关文章