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) ;这是一种为计算方便而做的近似假设,然而现实中基本不会有模型符合输入特征间的独立,因此以朴素贝叶斯建模一般会有精度损失。
隐马尔科夫模型进了一步,它考虑一定的变量相关性,如马尔科夫假设状态序列中,当前状态只与其前一个状态有关,如:
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,y) 写成 P(x1,x2,y)=Ψ1⋅Ψ2⋅Ψ3 ,这里的 Ψi 分别与独立图中的概率对应。
概率图模型可大致分为两类:一类是有向图模型,表示变量间的依赖关系,也称为贝叶斯网;一类是无向图模型,表示变量间的相关关系,也称为马尔科夫网或马尔科夫随机场。
2.1 有向图模型
在有向图中,边表示了变量之间的一种依赖关系。联合分布概率可以写作是所有变量在在父节点条件下的概率乘积:
如下图所示的隐马尔可夫有向图,联合概率可以写作:
2.2 无向图模型
在无向图模型中,有个团和最大团的概念,表示了变量之间的关系。团的意思是一些随机变量结点构成的子集中,两两结点都有边相连,如下图中(1,2)、(1,2,5)等;最大团表示结点构成的团中再添加任何一个新结点后都不会构成团,如(1,4,5)。在一些线性链结构的无向图,如线性链条件随机场中,最大团只考虑( yj−1,yj,x )。
下面介绍一下常用的线性链条件随机场,
线性链CRFs是条件随机场中的一种特殊结构,与隐马尔科夫一样,输出形成一个线性序列,如下图:
根据上面的公式,其条件概率可以写作,