最大熵模型
熵
X={x1,x2,...,xn},X的熵为
联合熵
H(X,Y)=-ΣΣp(x,y)logp(x,y)
条件熵
X确定的前提下,Y新带来的熵。
H(Y|X) = H(X,Y) – H(X)
推导:
交叉熵
p(x) q(x) 是X中取值的两个概率分布,则p对q的交叉熵为:
在一定程度上可以度量两个随机变量的距离(比如度量特征与类之间的关系,用来特征提取)
互信息
其实是X/Y联合分布和独立分布成绩的相对熵
I(X,Y)=D(P(X,Y) || P(X)P(Y))
故有
H(Y|X) = H(X,Y) - H(X) (1)
H(Y|X) = H(Y) - I(X,Y) (2)
结合(1)(2)得
I(X,Y)= H(X) + H(Y) - H(X,Y) 为互信息定义
最大熵
为何最大化熵:在已知一部分知识的情况下,对未知不做任何假设,保持其最自然(无序)状态,故熵会最大化。
因此最大化目标函数:
其中P={p | p是X上满足条件的概率分布}
特征(x,y): y是特征中要确定的信息,x是特征中的上下文信息
样本:关于某个特征(x,y)的样本,特征所描述的语法现象在标准集合里的分布:(xi,yi)对,其中,yi是y的一个实例,xi是yi的上下文。
定义特征函数:
特征函数关于经验分布 在样本中的期望值是:
假设样本的分布已知,则对每一个特征(x,y),模型所建立的条件概率分布要与训练样本表现出来的分布相同。
如果能够获取训练数据中的信息,那么上述这两个期望值相等,即:
有了约束条件和目标条件,问题转换为最优化问题,可用拉格朗日乘子法解决,这个后面在写
摘自:http://www.tuicool.com/articles/6RzqeyF