机器学习——最大熵模型

机器学习——最大熵模型


最大熵是概率模型学习的一个准则,将其推广到分类问题得到最大熵模型(maximum entropy model)。 逻辑回归和最大熵模型都属于对数线性回归。

最大熵原理

最大熵原理认为,学习概率模型时,在所有可能的概率模型(分布)中,熵最大的模型是最好的模型。
假设离散随机变量 X X X的概率分布是 P ( X ) P(X) P(X),则其熵是
H ( P ) = − ∑ x P ( x ) log ⁡ P ( x ) H ( P ) = - \sum _ { x } P ( x ) \log P ( x ) H(P)=xP(x)logP(x)
熵满足下列不等式:
0 ⩽ H ( P ) ⩽ log ⁡ ∣ X ∣ 0 \leqslant H ( P ) \leqslant \log | X | 0H(P)logX
式中, ∣ X ∣ |X| X X X X的取值个数, X X X服从均匀分布时,熵最大。

最大熵模型

训练集的联合分布和边缘分布分别以 P ~ ( X , Y ) \tilde { P } ( X , Y ) P~(X,Y) P ~ ( X ) \tilde { P } ( X ) P~(X)来表示:
P ~ ( X = x , Y = y ) = ν ( X = x , Y = y ) N P ~ ( X = x ) = ν ( X = x ) N \begin{array} { l } \tilde { P } ( X = x , Y = y ) = \frac { \nu ( X = x , Y = y ) } { N } \\ \tilde { P } ( X = x ) = \frac { \nu ( X = x ) } { N } \end{array} P~(X=x,Y=y)=Nν(X=x,Y=y)P~(X=x)=Nν(X=x)
用特征函数(feature function) f ( x , y ) f(x,y) f(x,y)来描述输入 x x x和输出 y y y之间的某一个事实,其定义是:
f ( x , y ) = { 1 , x  与  y  满足某一事实  0 ,  否则  f ( x , y ) = \left\{ \begin{array} { l l } 1 , & x \text { 与 } y \text { 满足某一事实 } \\ 0 , & \text { 否则 } \end{array} \right. f(x,y)={1,0,x  y 满足某一事实  否则 
特征函数 f ( x , y ) f(x,y) f(x,y)关于经验分布 P ~ ( X , Y ) \tilde { P } ( X , Y ) P~(X,Y)的期望值,表示成 E P ~ ( f ) = ∑ x , y P ~ ( x , y ) f ( x , y ) E _ { \tilde { P } } ( f ) = \sum _ { x , y } \tilde { P } ( x , y ) f ( x , y ) EP~(f)=x,yP~(x,y)f(x,y)
特征函数 f ( x , y ) f(x,y) f(x,y)关于模型 P ( Y ∣ X ) P ( Y \mid X ) P(YX)与经验分布 P ~ ( X ) \tilde { P } ( X ) P~(X)的期望值,表示成 E P ( f ) = ∑ x , y P ~ ( x ) P ( y ∣ x ) f ( x , y ) E _ { P } ( f ) = \sum _ { x , y } \tilde { P } ( x ) P ( y \mid x ) f ( x , y ) EP(f)=x,yP~(x)P(yx)f(x,y)
那么我们就可以假设这两个期望值相等 E P ( f ) = E P ~ ( f ) E _ { P } ( f ) = E _ { \tilde { P } } ( f ) EP(f)=EP~(f),得到模型学习的约束条件。

条件概率分布 P ( Y ∣ X ) P(Y|X) P(YX)熵的条件熵 H ( P ) = − ∑ x , y P ~ ( x ) P ( y ∣ x ) log ⁡ P ( y ∣ x ) H ( P ) = - \sum _ { x , y } \tilde { P } ( x ) P ( y \mid x ) \log P ( y \mid x ) H(P)=x,yP~(x)P(yx)logP(yx) H ( P ) H(P) H(P)最大的模型称为最大熵模型。式中的对数为自然对数。

最大熵模型的学习

min ⁡ P ∈ C − H ( P ) = ∑ x , y P ~ ( x ) P ( y ∣ x ) log ⁡ P ( y ∣ x )  s.t.  E P ( f i ) − E P ~ ( f i ) = 0 , i = 1 , 2 , ⋯   , n ∑ y P ( y ∣ x ) = 1 \begin{array} { l l } \min _ { P \in \mathbf { C } } & - H ( P ) = \sum _ { x , y } \tilde { P } ( x ) P ( y \mid x ) \log P ( y \mid x ) \\ \text { s.t. } & E _ { P } \left( f _ { i } \right) - E _ { \tilde { P } } \left( f _ { i } \right) = 0 , \quad i = 1,2 , \cdots , n \\ & \sum _ { y } P ( y \mid x ) = 1 \end{array} minPC s.t. H(P)=x,yP~(x)P(yx)logP(yx)EP(fi)EP~(fi)=0,i=1,2,,nyP(yx)=1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值