1、概率模型
机器学习中的很多模型可以根据概率分布形式分为生成模型和判别模型,其中生成模型以输入输出的联合分布P(X,Y)为基础建模,如朴素贝叶斯、隐马尔可夫模型;判别模型以条件概率分布P(Y|X)为基础建模,如最大熵模型、条件随机场等。这几个模型之间有一定的关系,它们的关系如下:
其中,NB表示朴素贝叶斯,ME表示最大熵,HMM表示隐马尔科夫,CRF表示条件随机场。joint联合分布,conditional条件分布。single class输出单一类别,sequence输出序列。例如,朴素贝叶斯将输出y扩展成序列 (y1,y2,...,yn) ,就可以以此为基础构造HMM;在满足输入条件下的HMM可以扩展成CRF。
这里面,朴素贝叶斯假设最强 ,因为它要求所有输入特征之间条件独立,如 P(y|x1,x2,...,xn)=∏i=1nP(y|xi) ;这是一种为计算方便而做的近似假设,然而现实中基本不会有模型符合输入特征间的独立,因此以朴素贝叶斯建模一般会有精度损失。
隐马尔科夫模型进了一步,它考虑一定的变量相关性,如马尔科夫假设状态序列中,当前状态只与其前一个状态有关,如:
但是HMM只考虑了状态之间的邻接关系,没有考虑观测序列间的关系,条件随机场刚好弥补了这个缺陷。所以条件随机场是一个相对比较完善的模型,但代价是计算复杂性的提高。
2、概率图模型
上面讲到的概率模型可以用图的形式表示出来,称为概率图模型。概率图模型用图中结点表示随机变量,结点之间的边表示变量间的概率相关关系。
在概率图中,两结点没有边相连,说明两节点是条件独立的,比如 P(a,b|c)=P(a|c)⋅P(b|c) 。在概率图中,结点间全连接是不包含任何概率分布信息的,所以我们更关注的是哪些边是缺失的,这些缺失的边表示边连接的结点条件独立。
下图中的两个图是概率图的两种表示形式,一个是独立图,一个是因子图。通过条件独立的条件,可以将一个复杂的概率分布分解成简单的概率分布乘积,如下图中(a),联合概率分布 P(x1,x2,y)=P(x1)⋅P(x2)⋅P(y|x1,x2) 。
若定义因子,也称势函数 Ψs 为概率分布的分解因子,对任意概率图G=(V,E),有:
其中,s表示随机变量构成的集合, Vs 表示该集合中包含的变量。
则可以将 P(x1,x2