最大熵(maximum entropy model)由最大熵原理推导实现。这里首先叙述一般的最大熵原理,然后讲解最大熵模型的推导,最后给出最大熵模型学习的形式。
最大熵原理
最大熵原理是概率模型学习的一个准则。最大熵原理认为,学习概率模型时,在所有可能的概率模型(分布)中,熵最大的模型是最好的模型。
最大熵原理也可以表述为在满足约束条件的模型中选取熵最大的模型。
假设离散型随机变量X的概率分步是 <nobr> P(X) </nobr>,则其熵
<nobr> H(P)=−∑xP(x)logP(x) </nobr>
熵满足下列不等式:
<nobr> 0≤H(P)≤log|X| </nobr>
式中, <nobr> |X| </nobr>是X的取值个数,当且仅当X的分步是均匀分布时右边的等号成立。
当X服从均匀分布时,熵最大。
最大熵模型的定义
最大熵原理应用到分类得到最大熵模型。
假设分类模型是一个条件概率分布 <nobr> P(Y|X) </nobr>。
给定一个训练集T,学习的目标是用最大熵原理选择最好的分类模型。
首先考虑模型应该满足的条件。给定训练集,可以确定联合分步 <nobr> P(X,Y) </nobr>的经验分步和边缘分布 <nobr> P(X) </nobr>的经验分布,分别以 <nobr> P˜(X,Y) </nobr>和 <nobr> P˜(X) </nobr>。
用特征函数(feature function) <nobr> f(x,y) </nobr>描述输入x和输出y之间的某一个事实。其定义是
<nobr> f(x,y)={10x与y满足某一事实否则 </nobr>
特征函数 <nobr> f(x,y) </nobr>关于经验分布 <nobr> P˜(X,Y) </nobr>的期望值,用 <nobr> EP˜(f) </nobr>表示。
<nobr> EP˜(f)=∑x,yP˜(x,y)f(x,y) </nobr>
特征函数 <nobr> f(x,y) </nobr>关于模型 <nobr> P(Y|X) </nobr>与经验分布 <nobr> P˜(x) </nobr>的期望值,用 <nobr> Ep(f) </nobr>表示。
<nobr> EP(f)=∑x,yP˜(x)P(y|x)f(x,y) </nobr>
如果模型能够获取训练数据中的信息,那么就可以假设这两个期望值相等,即
<nobr> Ep(f)=EP˜(f)(6.10) </nobr>
或
<nobr> ∑x,yP˜(x)P(y|x)f(x,y)=∑x,yP˜(x,y)f(x,y)(6.11) </nobr>
我们将式(6.10)或式(6.11)作为模型学习的约束条件。假如由n个特征函数 <nobr> fi(x,y),i=1,...,n, </nobr>那么就有n个约束条件。
最大熵模型的学习
将约束最优化的原始问题转换为无约束最优化的对偶问题。通过求解对偶问题求解原始问题。
极大似然估计
参考资料