最大熵模型及其算法

最大熵模型表面意义上来讲是使信息熵或者条件熵最大,一般来讲最大熵模型是使条件熵最大的模型。

最大熵模型的一些特点:

1、最大熵模型的输入输出为X,Y,求解时需要代入p(x,y)的联合概率,即p(x,y)*log(y|x)求和的模型,

这个模型里,我们需要求解的是p(y|x)的条件概率,但这里还有p(x,y)的概率,这里为了能够有效的计算模型,

这里的p(x,y)用p'(x)*p(y|x)来代替,其中p'(x)是训练数据集中的先验概率,即用p'(x)来代替p(x)。

2、这里的最大熵模型一般指带特征函数约束的模型,特征函数 f(x,y) 一般是一个二值函数,输入x,y,输出1或者0,

为了能够利用好这些特征函数,我们需要将其转换成可计算的约束条件,这里转换成的约束条件为:特征函数在

训练数据集上的期望等于在模型上的期望。这样设计的约束条件真是太完美了。当然还有一个约束条件是:

p(y|x)在y上求和为1。

3、模型得到的结果为p(y|x),即给定一个输入x,分别得到不同的y对应的条件概率,根据概率的大小可以将x划分

到不同的y中,因此可以用作分类模型使用。这里特征函数的设计是根据训练数据集来设计的。

最大熵模型的求解算法常用的算法为迭代尺度算法(IID)

关于最大熵模型的推导可以参考:

1、李航的《统计学习方法》

2、博客:http://blog.csdn.net/itplus/article/details/26550201

————————————————————————————————————————————————————

线性链条件随机场的模型及求解与最大熵模型很相似,二者都是用一些特征函数作为约束条件,求解方法也类似,

均可用迭代尺度算法来求解。二者最大区别在于迭代过程中根据参数求解P(y|x)的方法有所不同,线性链条件随机场

根据前向后向算法来求解(其概率不仅包括P(Yi|Xj),还包括P(Yi-1,Yi|Xj)),最大熵模型仅包括P(Yi|Xj)。

关于线性链条件随机场的具体推导可以参考《统计学习方法》

你可能感兴趣的:(最大熵模型及其算法)