指数族分布是一类分布,包括高斯分布,伯努利分布,二项分布,泊松分布,Beta分布,Dirichlet 分布,Gamma分布等等,指数族分布的标准形式为
X ∣ η = h ( x ) e x p ( η T ϕ ( x ) − A ( η ) ) = 1 e x p ( A ( η ) ) h ( x ) e x p ( η T ϕ ( x ) ) X|\eta=h(x)exp(\eta^T\phi(x)-A(\eta))=\frac{1}{exp(A(\eta))}h(x)exp(\eta^T\phi(x)) X∣η=h(x)exp(ηTϕ(x)−A(η))=exp(A(η))1h(x)exp(ηTϕ(x))
其中, η \eta η为参数向量, x ∈ R P x\in\R^P x∈RP。
A ( η ) A(\eta) A(η)称为log partition function,对于形式 P ( X ∣ θ ) = 1 Z P ^ ( X ∣ θ ) P(X|\theta)=\frac{1}{Z}\hat{P}(X|\theta) P(X∣θ)=Z1P^(X∣θ),我们称Z为变分函数,通过对式子两边求积分,我们求出 Z = ∫ x P ^ ( x ∣ θ ) d x Z=\int_x\hat{P}(x|\theta)dx Z=∫xP^(x∣θ)dx,类比指数族分布,我们发现 A ( η ) = log Z A(\eta)=\log{Z} A(η)=logZ,故将 A ( η ) A(\eta) A(η)称为log的配分函数。
ϕ ( x ) \phi(x) ϕ(x)叫做充分统计量,包含样本集合所有的信息,例如高斯分布中的均值和方差。对于一个数据集,只需要记录样本的充分统计量即可表示样本的分布。
指数族分布具有共轭的特点,对于后验概率 P ( Z ∣ X ) = P ( X ∣ Z ) P ( Z ) ∫ Z P ( X ∣ Z ) P ( Z ) d Z P(Z|X)=\frac{P(X|Z)P(Z)}{\int_ZP(X|Z)P(Z)dZ} P(Z∣X)=∫ZP(X∣Z)P(Z)dZP(X∣Z)P(Z),通常 ∫ Z P ( X ∣ Z ) P ( Z ) d Z \int_ZP(X|Z)P(Z)dZ ∫ZP(X∣Z)P(Z)dZ难以求解,我们会利用共轭的形式简化运算,即对于 P ( Z ∣ X ) ∝ P ( X ∣ Z ) P ( Z ) P(Z|X)\propto{P(X|Z)P(Z)} P(Z∣X)∝P(X∣Z)P(Z),如果似然有一个共轭的先验,其效果就是先验与后验具有相同的分布形式。同时,指数族分布满足最大熵的思想(无信息先验),也就是说对于经验分布利用最大熵原理导出的分布就是指数族分布。
观察到指数族分布的表达式类似线性模型,事实上,指数族分布很自然地导出广义线性模型,广义模型为线性模型的扩展,广义模型定义如下:
假设因变量 Y 1 , Y 2 , . . . , Y n Y_1, Y_2,...,Y_n Y1,Y2,...,Yn是n个独立的观测,服从指数族分布, x 1 , x 2 , . . . , x n x_1, x_2, ...,x_n x1,x2,...,xn是其对应p维向量的观测值,计 η i = x i T β \eta_i=x_i^T\beta ηi=xiTβ,假设 E [ Y i ] = μ i E[Y_i]=\mu_i E[Yi]=μi,并且 μ i \mu_i μi与 η i \eta_i ηi具有关系
η i = g ( μ i ) , i = 1 , 2 , . . . , n \eta_i=g(\mu_i),i=1, 2, ..., n ηi=g(μi),i=1,2,...,n
称如此定义的模型为广义线性模型, g ( . ) g(.) g(.)称为link function,其是激活函数的反函数。
在更复杂的概率图模型中,例如在无向图模型中如受限玻尔兹曼机中,指数族分布也扮演着重要作用。在推断的算法中,例如变分推断中,指数族分布也会大大简化计算。
对于一维高斯分布
P ( x ∣ θ ) = 1 x π σ e − ( x − μ ) 2 2 σ 2 P(x|\theta)=\frac{1}{\sqrt{x\pi}\sigma}e^{-\frac{(x-\mu)^2}{2\sigma^2}} P(x∣θ)=xπσ1e−2σ2(x−μ)2
对其进行改写
P ( x ∣ θ ) = 1 2 π σ 2 e x p { − 1 2 σ 2 ( x 2 − 2 μ x + μ 2 } P(x|\theta)=\frac{1}{\sqrt{2\pi\sigma^2}}exp\{-\frac{1}{2\sigma^2}(x^2-2\mu{x}+\mu^2\} P(x∣θ)=2πσ21exp{−2σ21(x2−2μx+μ2}
= e x p { l o g 1 2 π σ 2 } e x p { − 1 2 σ 2 ( x 2 − 2 μ x + μ 2 } \qquad\qquad\qquad\quad=exp\{log\frac{1}{\sqrt{2\pi\sigma^2}}\}exp\{-\frac{1}{2\sigma^2}(x^2-2\mu{x}+\mu^2\} =exp{log2πσ21}exp{−2σ21(x2−2μx+μ2}
= e x p { ( μ σ 2 − 1 2 σ 2 ) ( x 1 x 2 ) T − ( μ 2 2 σ 2 + 1 2 l o g ( 2 π σ 2 ) ) } \qquad\qquad\qquad\quad=exp\{\left(\frac{\mu}{\sigma^2}\quad-\frac{1}{2\sigma^2}\right)\left({x_1\quad x_2}\right)^T-(\frac{\mu^2}{2\sigma^2}+\frac{1}{2}log(2\pi\sigma^2))\} =exp{(σ2μ−2σ21)(x1x2)T−(2σ2μ2+21log(2πσ2))}
可以看出
η = ( η 1 η 2 ) T = ( μ σ 2 − 1 2 σ 2 ) T \eta=\left(\eta_1\quad\eta_2\right)^T=\left(\frac{\mu}{\sigma^2}\quad-\frac{1}{2\sigma^2}\right)^T η=(η1η2)T=(σ2μ−2σ21)T
ϕ ( x ) = ( x 1 x 2 ) T \phi(x)=\left(x_1\quad x_2\right)^T ϕ(x)=(x1x2)T
于是
A ( η ) = − η 1 2 4 η 2 + 1 2 log ( − π η 2 ) A(\eta)=-\frac{\eta_1^2}{4\eta_2}+\frac{1}{2}\log{(-\frac{\pi}{\eta_2})} A(η)=−4η2η12+21log(−η2π)
由指数分布的函数推出
e x p { A ( η ) } = ∫ h ( x ) e x p { η T ϕ ( x ) } d x exp\{A(\eta)\}=\int{h(x)exp\{\eta^T\phi(x)\}dx} exp{A(η)}=∫h(x)exp{ηTϕ(x)}dx
两边对 η \eta η求导,有
e x p { A ( η ) } A ‘ ( η ) = ∫ h ( x ) e x p { η T ϕ ( x ) } ϕ ( x ) d x A ‘ ( η ) = ∫ 1 e x p { A ( η ) } h ( x ) e x p { η T ϕ ( x ) } ϕ ( x ) d x = ∫ P ( x ∣ η ) ϕ ( x ) d x = E P ( x ∣ η ) [ ϕ ( x ) ] exp\{A(\eta)\}A^`(\eta)=\int{h(x)exp\{\eta^T\phi(x)\}\phi(x)dx}\\ A^`(\eta)=\int{\frac{1}{exp\{A(\eta)\}}h(x)exp\{\eta^T\phi(x)\}\phi(x)dx}\\ =\int{P(x|\eta)\phi(x)dx}=E_{P(x|\eta)}[\phi(x)] exp{A(η)}A‘(η)=∫h(x)exp{ηTϕ(x)}ϕ(x)dxA‘(η)=∫exp{A(η)}1h(x)exp{ηTϕ(x)}ϕ(x)dx=∫P(x∣η)ϕ(x)dx=EP(x∣η)[ϕ(x)]
于是
A ‘ ( η ) = E P ( x ∣ η ) [ ϕ ( x ) ] A^`(\eta)=E_{P(x|\eta)}[\phi(x)] A‘(η)=EP(x∣η)[ϕ(x)]
实际上,对 η \eta η再次求二阶导,有
A ‘ ‘ ( η ) = V a r P ( x ∣ η ) [ ϕ ( x ) ] A^{``}(\eta)=Var_{P(x|\eta)}[\phi(x)] A‘‘(η)=VarP(x∣η)[ϕ(x)]
并且, A ( η ) A(\eta) A(η)是凸函数
对于观测量 D = ( x 1 , x 2 , . . . , x N ) D=(x_1, x_2, ..., x_N) D=(x1,x2,...,xN),未知参数的最大似然估计量
η M L E = a r g m a x η log P ( D ∣ η ) = a r g m a x η ∑ i = 1 N log P ( x i ∣ η ) = a r g m a x η log [ h ( x i ) e x p { η T ϕ ( x i ) − A ( η ) } ] = a r g m a x η ∑ i = 1 N [ log h ( x i ) + η T ϕ ( x i ) − A ( η ) ] = a r g m a x η ∑ i = 1 N [ η T ϕ ( x i ) − A ( η ) ] = a r g m a x η ∑ i = 1 N η T ϕ ( x i ) + N A ( η ) \eta_{MLE}=\mathop{argmax}_\eta\log{P(D|\eta)}\\ \qquad\qquad=\mathop{argmax}_\eta\sum_{i=1}^N\log{P(x_i|\eta)}\\ \qquad\qquad\qquad\qquad\qquad\quad=\mathop{argmax}_\eta\log{[h(x_i)exp\{\eta^T\phi(x_i)-A(\eta)\}]}\\ \qquad\qquad\qquad\qquad\qquad\quad=\mathop{argmax}_\eta\sum_{i=1}^N[\log{h(x_i)}+\eta^T\phi(x_i)-A(\eta)]\\ \qquad\qquad\qquad=\mathop{argmax}_\eta\sum_{i=1}^N{[\eta^T\phi(x_i)-A(\eta)]}\\ \qquad\qquad\qquad=\mathop{argmax}_\eta\sum_{i=1}^N\eta^T\phi(x_i)+NA(\eta) ηMLE=argmaxηlogP(D∣η)=argmaxηi=1∑NlogP(xi∣η)=argmaxηlog[h(xi)exp{ηTϕ(xi)−A(η)}]=argmaxηi=1∑N[logh(xi)+ηTϕ(xi)−A(η)]=argmaxηi=1∑N[ηTϕ(xi)−A(η)]=argmaxηi=1∑NηTϕ(xi)+NA(η)
令
∂ ∂ η ∑ i = 1 N η T ϕ ( x i ) + N A ( η ) = 0 \frac{\partial}{\partial{\eta}}\sum_{i=1}^N\eta^T\phi(x_i)+NA(\eta)=0 ∂η∂i=1∑NηTϕ(xi)+NA(η)=0
即
∑ i = 1 N ϕ ( x i ) − N A ‘ ( η ) = 0 \sum_{i=1}^N\phi(x_i)-NA^`(\eta)=0 i=1∑Nϕ(xi)−NA‘(η)=0
于是
A ‘ ( η ) = 1 N ∑ i = 1 N ϕ ( x i ) A^`(\eta)=\frac{1}{N}\sum_{i=1}^N\phi(x_i) A‘(η)=N1i=1∑Nϕ(xi)
由此可以看到, A ‘ ( η ) A^`(\eta) A‘(η)是关于 η \eta η的函数,只要求其反函数就可以求得参数,故只需要知道充分统计量就可以估算参数。
对于概率P,信息量的定义为 − log P -\log{P} −logP,熵定义为信息量的期望,即 H [ P ] = E P ( x ) [ P ( x ) ] H[P]=E_{P(x)}[P(x)] H[P]=EP(x)[P(x)]。
对于连续型分布, H [ P ] = ∫ − P ( x ) log P ( x ) d x H[P]=\int{-P(x)\log{P(x)}dx} H[P]=∫−P(x)logP(x)dx
对于离散型分布, H [ p ] = ∑ X p ( x ) log P ( x ) H[p]=\sum_X{p(x)\log{P(x)}} H[p]=∑Xp(x)logP(x)
最大熵等价于随机变量等可能分布,我们假设变量的离散的,对于数据 x 1 , x 2 , . . . , x K x_1, x_2, ...,x_K x1,x2,...,xK,其概率为 P 1 , P 2 , . . . , P K P_1, P2, ...,P_K P1,P2,...,PK,概率满足 ∑ i = 1 K P i = 1 \sum_{i=1}^K{P_i}=1 ∑i=1KPi=1,求最大熵
m a x H [ P ) ] = m a x − ∑ i = 1 K P i log P i ⟺ m i n ∑ i = 1 K P i log P i s . t , ∑ i = 1 K P i = 1 maxH[P)]=max-\sum_{i=1}^KP_i\log{P_i}\Longleftrightarrow{min\sum_{i=1}^KP_i\log{P_i}}\quad{s.t},\sum_{i=1}^KP_i=1 maxH[P)]=max−i=1∑KPilogPi⟺mini=1∑KPilogPis.t,i=1∑KPi=1
于是
P i ^ = a r g m i n ∑ i = 1 K P i log P i \hat{P_i}=argmin\sum_{i=1}^KP_i\log{P_i} Pi^=argmini=1∑KPilogPi
引入拉格朗日函数
L ( P , λ ) = ∑ i = 1 K P i log P i + λ ( 1 − ∑ i = 1 K P i ) L(P,\lambda)=\sum_{i=1}^KP_i\log{P_i}+\lambda(1-\sum_{i=1}^KP_i) L(P,λ)=i=1∑KPilogPi+λ(1−i=1∑KPi)
令
∂ L ∂ P i = log P i + 1 − λ = 0 \frac{\partial{L}}{\partial{P_i}}=\log{P_i}+1-\lambda=0 ∂Pi∂L=logPi+1−λ=0
求出
P i ^ = e λ − 1 \hat{P_i}=e^{\lambda-1} Pi^=eλ−1
可以看出,当变量满足均匀分布时,求得最大熵。
对于观测数据 D a t a = ( x 1 , x 2 , . . . , x n ) Data=(x_1,x_2, ...,x_n) Data=(x1,x2,...,xn),在这个数据集上的经验分布定义为 P ^ X = x = C o u n t ( x ) N \hat{P}_{X=x}=\frac{Count(x)}{N} P^X=x=NCount(x),实际不可能满足所有数据的经验概率相同,于是在上面的最大熵原理中还需要加入这个经验分布的约束。
对于任意一个函数 f ( x ) f(x) f(x),经验期望为
E p ^ [ f ( x ) ] = Δ E_{\hat{p}}[f(x)]=\Delta Ep^[f(x)]=Δ
最大熵原理等价于求
m i n ∑ X P ( x ) log P ( x ) s . t . ∑ X P ( x ) = 1 , E P [ f ( x ) ] = E p ^ [ f ( x ) ] = Δ min\sum_XP(x)\log{P(x)}\\ \qquad\qquad\qquad\qquad\qquad\qquad s.t.\sum_XP(x)=1,E_P[f(x)]=E_{\hat{p}}[f(x)]=\Delta minX∑P(x)logP(x)s.t.X∑P(x)=1,EP[f(x)]=Ep^[f(x)]=Δ
定义拉格朗日函数
L ( P , λ 0 , λ ) = ∑ i = 1 K p i log p i + λ 0 ( 1 − ∑ i = 1 K p i ) + λ T ( Δ − E P [ f ( x ) ] ) L(P,\lambda_0,\lambda)=\sum_{i=1}^Kp_i\log{p_i}+\lambda_0(1-\sum_{i=1}^Kp_i)+\lambda^T(\Delta-E_P[f(x)]) L(P,λ0,λ)=i=1∑Kpilogpi+λ0(1−i=1∑Kpi)+λT(Δ−EP[f(x)])
令
∂ L ∂ p i = ∑ i = 1 K [ p i + 1 ] − ∑ i = 1 K λ 0 − ∑ i = 1 K λ T f ( x ) = ∑ i = 1 K [ p i + 1 − λ 0 − λ T f ( x ) ] = 0 \frac{\partial{L}}{\partial{p_i}}=\sum_{i=1}^K[p_i+1]-\sum_{i=1}^K\lambda_0-\sum_{i=1}^K\lambda^Tf(x)\\ =\sum_{i=1}^K[p_i+1-\lambda_0-\lambda^Tf(x)]=0 ∂pi∂L=i=1∑K[pi+1]−i=1∑Kλ0−i=1∑KλTf(x)=i=1∑K[pi+1−λ0−λTf(x)]=0
于是
p i + 1 − λ 0 − λ T f ( x ) = 0 p_i+1-\lambda_0-\lambda^Tf(x)=0 pi+1−λ0−λTf(x)=0
求得
p ^ = e x p { λ T f ( x ) − ( 1 − λ o ) } \hat{p}=exp\{{\lambda^Tf(x)-(1-\lambda_o)}\} p^=exp{λTf(x)−(1−λo)}
上面的式子可以改写为 p ^ = e x p { η T ϕ ( x ) − A ( η ) } \hat{p}=exp\{\eta^T\phi(x)-A(\eta)\} p^=exp{ηTϕ(x)−A(η)}这就是指数族分布。