二十二.最大熵模型的数学原理

1.最大熵原理

最大熵原理是指在对随机变量的概率分布进行预测时,对未知概率不做任何假设。也就是说,预测概率分布为均匀分布时,熵最大,预测风险最小。

2.特征函数

数据集有 m m m个样本,每个样本有 n n n个特征和一个标签 y y y
( x 1 1 , x 2 1 , x 3 1 , . . . , x n 1 , y 1 ) , ( x 1 2 , x 2 2 , x 3 2 , . . . , x n 2 , y 2 ) , . . . , ( x 1 m , x 2 m , x 3 m , . . . , x n m , y m ) (x_{1}^{1},x_{2}^{1},x_{3}^{1},...,x_{n}^{1},y^{1}),(x_{1}^{2},x_{2}^{2},x_{3}^{2},...,x_{n}^{2},y^{2}),...,(x_{1}^{m},x_{2}^{m},x_{3}^{m},...,x_{n}^{m},y^{m}) (x11,x21,x31,...,xn1,y1),(x12,x22,x32,...,xn2,y2),...,(x1m,x2m,x3m,...,xnm,ym)
特征函数 f ( x , y ) f(x,y) f(x,y)表示 x , y x,y x,y之间存在某种关系:
f ( x , y ) { 1 x , y 相 关 0 x , y 不 相 关 f(x,y)\left\{\begin{matrix} 1 &x,y相关 \\ 0 &x,y不相关 \end{matrix}\right. f(x,y){10x,yx,y
例如,数据集中出现了 ( x 2 , y 2 ) (x^{2},y^{2}) (x2,y2),则 x 2 , y 2 x^{2},y^{2} x2,y2相关;未出现 ( x 2 , y 3 ) (x^{2},y^{3}) (x2,y3),则 x 2 , y 3 x^{2},y^{3} x2,y3不相关。

3.最大熵模型推导

已知数据集,可以根据频率求出经验分布:
P ‾ ( X = x , Y = y ) = c o n u t ( X = x , Y = y ) m P ‾ ( X = x ) = c o u n t ( X = x ) m \overline{P}(X=x,Y=y)=\frac{conut(X=x,Y=y)}{m}\\ \overline{P}(X=x)=\frac{count(X=x)}{m} P(X=x,Y=y)=mconut(X=x,Y=y)P(X=x)=mcount(X=x)
特征函数 f ( x , y ) f(x,y) f(x,y)关于经验分布 P ‾ ( x , y ) \overline{P}(x,y) P(x,y)的期望:
E p ‾ ( f ( x , y ) ) = ∑ x , y P ‾ ( x , y ) f ( x , y ) E_{\overline{p}}(f(x,y))=\sum_{x,y}\overline{P}(x,y)f(x,y) Ep(f(x,y))=x,yP(x,y)f(x,y)
由于真实分布未知,特征函数 f ( x , y ) f(x,y) f(x,y)关于真实分布 P ( x , y ) P(x,y) P(x,y)的期望,可以用经验分布 P ‾ ( x ) \overline{P}(x) P(x)和条件概率 P ( y ∣ x ) P(y|x) P(yx)近似:
E p ( f ( x , y ) ) = ∑ x , y P ( x , y ) f ( x , y ) ≈ ∑ x , y P ( y ∣ x ) P ‾ ( x ) f ( x , y ) E_{p}(f(x,y))=\sum_{x,y}P(x,y)f(x,y)\approx \sum_{x,y}P(y|x)\overline{P}(x)f(x,y) Ep(f(x,y))=x,yP(x,y)f(x,y)x,yP(yx)P(x)f(x,y)
同样, y y y关于 x x x的条件熵也可以用经验分布 P ‾ ( x ) \overline{P}(x) P(x)近似:
H ( Y ∣ X ) = − ∑ x , y P ( x , y ) log ⁡ P ( y ∣ x ) ≈ − P ( y ∣ x ) P ‾ ( x ) log ⁡ P ( y ∣ x ) H(Y|X)=-\sum_{x,y}P(x,y)\log P(y|x)\approx -P(y|x)\overline{P}(x)\log P(y|x) H(YX)=x,yP(x,y)logP(yx)P(yx)P(x)logP(yx)
最大熵原理,要求求出熵 H ( Y ∣ X ) H(Y|X) H(YX)最大时的条件概率 P ( y ∣ x ) P(y|x) P(yx),因此,目标函数为:
max ⁡ p H ( Y ∣ X ) = − ∑ x , y P ( y ∣ x ) P ‾ ( x ) log ⁡ P ( y ∣ x ) \max_{p}H(Y|X)= -\sum_{x,y}P(y|x)\overline{P}(x)\log P(y|x) pmaxH(YX)=x,yP(yx)P(x)logP(yx)
并且假设条件概率 P ( y ∣ x ) P(y|x) P(yx)可以从数据集中学习,也就是说特征函数 f ( x , y ) f(x,y) f(x,y)关于经验分布 P ‾ ( x , y ) \overline{P}(x,y) P(x,y)的期望和关于真实分布 P ( x , y ) P(x,y) P(x,y)的期望相等:
E p ( f ( x , y ) ) = E p ‾ ( f ( x , y ) ) E_{p}(f(x,y))=E_{\overline{p}}(f(x,y)) Ep(f(x,y))=Ep(f(x,y))
最终,最大熵模型的目标函数为:
min ⁡ p − H ( Y ∣ X ) = ∑ x , y P ( y ∣ x ) P ‾ ( x ) log ⁡ P ( y ∣ x ) s . t . E p ( f ( x , y ) ) − E p ‾ ( f ( x , y ) ) = 0 ∑ y P ( y ∣ x ) = 1 \min_{p}-H(Y|X)= \sum_{x,y}P(y|x)\overline{P}(x)\log P(y|x)\\ s.t.E_{p}(f(x,y))-E_{\overline{p}}(f(x,y))=0\\ \sum_{y}P(y|x)=1 pminH(YX)=x,yP(yx)P(x)logP(yx)s.t.Ep(f(x,y))Ep(f(x,y))=0yP(yx)=1

4.目标函数求解

对于约束最优化问题,构造拉格朗日函数:
L ( P , w ) = ∑ x , y P ( y ∣ x ) P ‾ ( x ) log ⁡ P ( y ∣ x ) + w 0 ( 1 − ∑ y P ( y ∣ x ) ) + ∑ i = 1 m w i [ E p ( f ( x , y ) ) − E p ‾ ( f ( x , y ) ) ] = ∑ x , y P ( y ∣ x ) P ‾ ( x ) log ⁡ P ( y ∣ x ) + w 0 ( 1 − ∑ y P ( y ∣ x ) ) + ∑ i = 1 m w i [ ∑ x , y P ( y ∣ x ) P ‾ ( x ) f i ( x , y ) − ∑ x , y P ‾ ( x , y ) f i ( x , y ) ] \begin{aligned} L(P,w)&=\sum_{x,y}P(y|x)\overline{P}(x)\log P(y|x)+w_{0}(1-\sum_{y}P(y|x))+\sum_{i=1}^{m}w_{i}[E_{p}(f(x,y))-E_{\overline{p}}(f(x,y))] \\ &= \sum_{x,y}P(y|x)\overline{P}(x)\log P(y|x)+w_{0}(1-\sum_{y}P(y|x))+\sum_{i=1}^{m}w_{i}[ \sum_{x,y}P(y|x)\overline{P}(x)f_{i}(x,y)-\sum_{x,y}\overline{P}(x,y)f_{i}(x,y)] \end{aligned} L(P,w)=x,yP(yx)P(x)logP(yx)+w0(1yP(yx))+i=1mwi[Ep(f(x,y))Ep(f(x,y))]=x,yP(yx)P(x)logP(yx)+w0(1yP(yx))+i=1mwi[x,yP(yx)P(x)fi(x,y)x,yP(x,y)fi(x,y)]
原始问题:
min ⁡ P max ⁡ w L ( P , w ) \min_{P}\max_{w}L(P,w) PminwmaxL(P,w)
对偶问题:
max ⁡ w min ⁡ P L ( P , w ) \max_{w}\min_{P}L(P,w) wmaxPminL(P,w)
(1)求内层极小值:
∂ L ∂ P ( y ∣ x ) = ∑ x , y P ‾ ( x ) [ log ⁡ P ( y ∣ x ) + 1 ] − ∑ y w 0 − ∑ i = 1 m w i ∑ x , y P ‾ ( x ) f i ( x , y ) = ∑ x , y P ‾ [ log ⁡ P ( y ∣ x ) + 1 − w 0 − ∑ i = 1 m w i f i ( x , y ) ] = 0 ⇒ log ⁡ P ( y ∣ x ) = ∑ i = 1 m w i f i ( x , y ) − ( 1 − w 0 ) ⇒ P ( y ∣ x ) = exp ⁡ [ ∑ i = 1 m w i f i ( x , y ) − ( 1 − w 0 ) ] ⇒ P ( y ∣ x ) = exp ⁡ ∑ i = 1 m w i f i ( x , y ) exp ⁡ ( 1 − w 0 ) \begin{aligned} \frac{\partial L}{\partial P(y|x)}&=\sum_{x,y}\overline{P}(x)[\log P(y|x)+1]-\sum_{y}w_{0}-\sum_{i=1}^{m}w_{i}\sum_{x,y}\overline{P}(x)f_{i}(x,y)\\ &=\sum_{x,y}\overline{P}[\log P(y|x)+1-w_{0}-\sum_{i=1}^{m}w_{i}f_{i}(x,y)]\\ &=0\\ &\Rightarrow \log P(y|x)=\sum_{i=1}^{m}w_{i}f_{i}(x,y)-(1-w_{0})\\ &\Rightarrow P(y|x)=\exp[\sum_{i=1}^{m}w_{i}f_{i}(x,y)-(1-w_{0})]\\ &\Rightarrow P(y|x)=\frac{\exp\sum_{i=1}^{m}w_{i}f_{i}(x,y)}{\exp(1-w_{0})} \end{aligned} P(yx)L=x,yP(x)[logP(yx)+1]yw0i=1mwix,yP(x)fi(x,y)=x,yP[logP(yx)+1w0i=1mwifi(x,y)]=0logP(yx)=i=1mwifi(x,y)(1w0)P(yx)=exp[i=1mwifi(x,y)(1w0)]P(yx)=exp(1w0)expi=1mwifi(x,y)
∑ y P ( y ∣ x ) = 1 \sum_{y}P(y|x)=1 yP(yx)=1
∑ y exp ⁡ ∑ i = 1 m w i f i ( x , y ) exp ⁡ ( 1 − w 0 ) = 1 \frac{\sum_{y}\exp\sum_{i=1}^{m}w_{i}f_{i}(x,y)}{\exp(1-w_{0})}=1 exp(1w0)yexpi=1mwifi(x,y)=1
exp ⁡ ( 1 − w 0 ) = Z w ( x ) \exp(1-w_{0})=Z_{w}(x) exp(1w0)=Zw(x),则 Z w ( x ) Z_{w}(x) Zw(x)有归一化作用,称其为规范化因子,最终得:
P ( y ∣ x ) = 1 Z w ( x ) exp ⁡ ∑ i = 1 m w i f i ( x , y ) P(y|x)=\frac{1}{Z_{w}(x)}\exp\sum_{i=1}^{m}w_{i}f_{i}(x,y) P(yx)=Zw(x)1expi=1mwifi(x,y)
(2)求外层极大值
w w w表示 P ( y ∣ x ) P(y|x) P(yx)并带入 L ( P , w ) L(P,w) L(P,w)中,约束条件最终变为:
arg ⁡ max ⁡ w ∑ x , y P ‾ ( x , y ) ∑ i = 1 m w i f i ( x , y ) + ∑ x P ‾ ( x ) log ⁡ Z w ( x ) \arg\max_{w}\sum_{x,y}\overline{P}(x,y)\sum_{i=1}^{m}w_{i}f_{i}(x,y)+\sum _{x}\overline{P}(x)\log Z_{w}(x) argwmaxx,yP(x,y)i=1mwifi(x,y)+xP(x)logZw(x)
这是一个连续可导的凸函数,可用梯度下降、牛顿法求解,有专门针对最大熵模型优化的ISS算法。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值