机器学习笔记(十九)——最大熵原理和模型定义

来源:互联网 发布:自学plc编程先学什么 编辑:程序博客网 时间:2024/05/16 07:14

一、最大熵原理

    最大熵原理是概率模型学习的一个准则。最大熵原理认为,在学习概率模型时,在所有可能的概率分布中,熵最大的模型是最好的模型。通常用约束条件来确定概率模型的集合,所以,最大熵模型也可以表述为在满足约束条件的模型集合中选取熵最大的模型。
    假设离散型随机变量X的概率分布式P(X),则其熵是:

H(P)=xP(x)logP(x)

熵满足下列不等式:
0H(P)log|x|

式中,|X|X取值个数,当且仅当X的分布是均匀分布时右边的等号成立。这就是说,当X服从均匀分布时,熵最大。

二、最大熵模型的定义

     假设分类模型是一个条件概率分布P(Y|X)XXRn, 表示输入, YY表示输出,X,Y分别是输入和输出的集合。这个模型表示的是对于给定的输入X,以条件概率P(Y|X)输出Y.
    给定一个训练数据集

T={(x1,y1),(x2,y2),,(xN,yN)}

学习的目标是用最大熵原理选择最好的分类模型。
     对于给定的数据集,我们可以确定联合分布的经验分布和边缘分布的经验分布。用特征函数f(x,y)描述x,y之间的一个事实,即:
f(x,y)={1,0,xy

特征函数f(x,y)关于经验分布P˜(X,Y)的期望值, 用Ep¯(f)表示。

Ep¯(f)=x,yP˜(x,y)f(x,y)

特征函数f(x,y)关于模型P(Y|X)与经验分布 P˜(X)的期望值, 用Ep(f)表示

Ep(f)=x,yP˜(x)P˜(y|x)f(x,y)

如果模型可以获得训练数据中的信息, 我们就可以假设这两个期望相等:

Ep¯(f)=Ep(f)

定义(最大熵模型) 假设满足所有约束条件的模型集合为

C{PP|Ep¯(fi)=Ep(fi),i=1,2,n}

定义在条件概率分布P(Y|X)上的条件熵为:
H(P)=x,yP˜(x)P(y|x)logP(y|x)

则模型集合C中条件熵H(P)最大的模型称为最大熵模型,对数为自然对数。后续将继续给出求解最大熵模型的过程。

0 0