机器学习笔记之指数族分布——最大熵角度观察指数族分布(二)最大熵定理与指数族分布的关系

机器学习笔记之指数族分布——最大熵原理与指数族分布的关系

引言

上一节介绍了熵的基本概念以及最大熵思想,本节将介绍最大熵原理指数族分布之间的关联关系

回顾:最大熵思想示例

最大熵思想本质上是探究概率分布的一种工具,基于一个概率模型 P ( x ∣ θ ) \mathcal P(x \mid \theta) P(xθ),如果其概率分布未知(没有任何约束概率分布的条件)、仅通过最大熵思想探究概率分布,发现满足熵最大的概率分布是均匀分布
虽然没有任何约束条件,但是‘概率分布自身定义’还是要遵守的。
∑ i = 1 k P ( x ( j ) = x i ) = 1 x ( j ) ∈ X \sum_{i=1}^k \mathcal P \left(x^{(j)} = x_i \right) = 1 \quad x^{(j)} \in \mathcal X i=1kP(x(j)=xi)=1x(j)X
但实际情况可能是:概率分布依然是未知,但存在关于概率分布的约束条件。这意味着:仅仅使用最大熵思想对概率分布进行表述是不完整。此时需要引入一个新的概念:最大熵原理

最大熵原理

最大熵原理主要针对有约束条件的概率分布进行求解。具体表述:在概率分布存在约束条件的情况下,满足约束条件下熵最大的分布就是求解的概率分布

约束条件与经验概率分布

观察上面表述,什么叫做 概率分布存在约束条件?换句话说,这个约束条件是从哪里体现出来的?

我们在极大似然估计与最大后验概率估计中介绍过: P ( X ∣ θ ) \mathcal P(\mathcal X \mid \theta) P(Xθ)既可以看作概率分布,也可以看作概率模型 P \mathcal P P以模型参数 θ \theta θ生成了大量样本,从而产生数据集合 X \mathcal X X
模糊‘概率分布’与‘概率模型’之间的界限;

因此,概率分布的约束条件,或者说概率分布约束条件的表现形式自然是 一个个具体的样本。假设一个数据集合 X \mathcal X X包含 N N N个样本:
X = { x ( 1 ) , x ( 2 ) , ⋯   , x ( N ) } \mathcal X = \left\{x^{(1)},x^{(2)},\cdots,x^{(N)} \right\} X={x(1),x(2),,x(N)}

仅仅是有样本是不够的,如何将这些样本转换为约束概率分布的条件?引入一个概念:经验概率分布( Empirical Probability Distribution \text{Empirical Probability Distribution} Empirical Probability Distribution)。

经验概率分布是指特定事件发生的次数占总体实验样本的比例。经验概率分布的概率密度函数表示如下:
P ^ ( x ( j ) = x i ) = count ( x i ) N i = 1 , 2 , ⋯   , k ; x ( j ) ∈ X \hat {\mathcal P}(x^{(j)} = x_i) = \frac{\text{count}(x_i)}{N}\quad i=1,2,\cdots,k;x^{(j)} \in \mathcal X P^(x(j)=xi)=Ncount(xi)i=1,2,,k;x(j)X

其中 x i x_i xi表示样本的第 i i i个值, count ( x i ) \text{count}(x_i) count(xi)表示统计样本第 i i i个值出现的次数
需要注意的是:这里 x i x_i xi是指随机变量,而不是具体样本。
示例:数据集合 X 0 \mathcal X_0 X0共包含6个样本:
X 0 = { 4 , 5 , 5 , 6 , 6 , 6 } \mathcal X_0 = \{4,5,5,6,6,6\} X0={4,5,5,6,6,6}
上述集合共包含3种值:
x 1 = 4 , x 2 = 5 , x 3 = 6 x_1 = 4,x_2 = 5,x_3 = 6 x1=4,x2=5,x3=6
则有如下的经验概率分布
P ^ ( X 0 ) = ( P ^ ( x ( j ) = x 1 ) P ^ ( x ( j ) = x 2 ) P ^ ( x ( j ) = x 3 ) ) = ( 0.16 0.33 0.5 ) x ( j ) ∈ X 0 \hat {\mathcal P}(\mathcal X_0) = \begin{pmatrix} \hat {\mathcal P}(x^{(j)} = x_1) \\ \hat {\mathcal P}(x^{(j)} = x_2) \\ \hat {\mathcal P}(x^{(j)} = x_3) \end{pmatrix} = \begin{pmatrix} 0.16 \\ 0.33 \\ 0.5 \end{pmatrix} \quad x^{(j)} \in \mathcal X_0 P^(X0)= P^(x(j)=x1)P^(x(j)=x2)P^(x(j)=x3) = 0.160.330.5 x(j)X0

这种概率分布最显著的特点该分布是单纯通过实际实验归纳得到,不掺杂理论取样。即计算概率分布使用的样本,均为真实样本。
在真实环境中,绝大多数情况都是通过有限样本进行归纳(经验分布)去逼近理想状态下的真实分布,弊端是‘经验分布’和‘真实分布’之间总是存在差距;优势在于简化运算,概率分布结果只与有限样本相关。

引入经验概率分布的背后意义在于概率分布完全取决于数据集合 X \mathcal X X

经验概率分布本质上依然是概率分布,通过该概率分布可以求解期望、方差等 数字特征。定义 P ^ ( x ( j ) = x i ) \hat {\mathcal P}(x^{(j)}=x_i) P^(x(j)=xi)某样本 x ( j ) x^{(j)} x(j)等于某具体数值 x i x_i xi概率密度函数
x ( j ) x^{(j)} x(j)表示为数据集合 X \mathcal X X内的任意一个样本;这里关于 E P ^ ( X ) [ X ] \mathbb E_{\hat {\mathcal P}(\mathcal X)}[\mathcal X] EP^(X)[X]是描述随机变量的期望信息。

E P ^ ( X ) [ X ] = ∑ x i ∈ X P ^ ( x ( j ) = x i ) ⋅ x i i = 1 , 2 , ⋯   , k Var P ^ ( X ) [ X ] = E P ^ ( X ) [ X 2 ] − [ E P ^ ( X ) [ X ] ] 2 \begin{aligned} \mathbb E_{\hat {\mathcal P}(\mathcal X)}[\mathcal X] & = \sum_{x_i \in \mathcal X} \hat {\mathcal P}(x^{(j)} = x_i) \cdot x_i \quad i=1,2,\cdots,k \\ \text{Var}_{\hat {\mathcal P}(\mathcal X)}[\mathcal X] & = \mathbb E_{\hat {\mathcal P}(\mathcal X)}[\mathcal X^2] - \left[\mathbb E_{\hat {\mathcal P}(\mathcal X)}[\mathcal X]\right]^2 \end{aligned} EP^(X)[X]VarP^(X)[X]=xiXP^(x(j)=xi)xii=1,2,,k=EP^(X)[X2][EP^(X)[X]]2

为了让数字特征更具备泛化性:

  • 假设 f ( x ( j ) = x i ) f(x^{(j)}=x_i) f(x(j)=xi)是关于样本 x ( j ) x^{(j)} x(j)值的任意函数,上述数字特征改写为:
    E P ^ ( X ) [ f ( X ) ] = ∑ i = 1 k P ^ ( x ( j ) = x i ) ⋅ f ( x ( j ) = x i ) \begin{aligned} \mathbb E_{\hat {\mathcal P}(\mathcal X)}[f(\mathcal X)] & = \sum_{i=1}^k \hat {\mathcal P}(x^{(j)} = x_i) \cdot f(x^{(j)}= x_i) \end{aligned} EP^(X)[f(X)]=i=1kP^(x(j)=xi)f(x(j)=xi)
  • f ( x ( j ) = x i ) f(x^{(j)}=x_i) f(x(j)=xi)进行深层设定:将 f ( x ( j ) = x i ) f(x^{(j)}=x_i) f(x(j)=xi)定义为关于 x ( j ) x^{(j)} x(j)一个 Q \mathcal Q Q维函数向量。因此, f ( x ( j ) = x i ) f(x^{(j)}=x_i) f(x(j)=xi)存在如下表达形式:
    需要注意的点:它是函数向量维度,而不是样本维度;
    f ( x ( j ) = x i ) = [ f 1 ( x ( j ) = x i ) f 2 ( x ( j ) = x i ) ⋮ f Q ( x ( j ) = x i ) ] f(x^{(j)}=x_i) = \begin{bmatrix} f_1(x^{(j)}=x_i) \\ f_2(x^{(j)}=x_i) \\ \vdots \\ f_{\mathcal Q}(x^{(j)}=x_i) \\ \end{bmatrix} f(x(j)=xi)= f1(x(j)=xi)f2(x(j)=xi)fQ(x(j)=xi)

由于 f ( x ) f(x) f(x)函数是自定义的,是已知的;概率分布 P ^ ( X ) \hat {\mathcal P}(\mathcal X) P^(X)是通过样本计算得到,是已知的;因此, E P ^ ( X ) [ f ( X ) ] \mathbb E_{\hat {\mathcal P}(\mathcal X)}[f(\mathcal X)] EP^(X)[f(X)]结果也是已知信息。假设该已知信息的结果为 Ω \Omega Ω,则有:
E P ^ ( X ) [ f ( X ) ] = Ω \mathbb E_{\hat P(\mathcal X)}[f(\mathcal X)] = \Omega EP^(X)[f(X)]=Ω

  • 由于 f ( x ( j ) ) f(x^{(j)}) f(x(j))定义为 Q \mathcal Q Q维向量。因此, E P ^ ( X ) [ f ( X ) ] \mathbb E_{\hat P(\mathcal X)}[f(\mathcal X)] EP^(X)[f(X)]可以进行如下表示:
    E P ^ ( X ) [ f ( X ) ] = ( E P ^ ( X ) [ f 1 ( X ) ] E P ^ ( X ) [ f 2 ( X ) ] ⋮ E P ^ ( X ) [ f Q ( X ) ] ) = ( ∑ i = 1 k P ^ ( x ( j ) = x i ) ⋅ f 1 ( x ( j ) = x i ) ∑ i = 1 k P ^ ( x ( j ) = x i ) ⋅ f 2 ( x ( j ) = x i ) ⋮ ∑ i = 1 k P ^ ( x ( j ) = x i ) ⋅ f Q ( x ( j ) = x i ) ) = ( Ω 1 Ω 2 ⋮ Ω Q ) \mathbb E_{\hat {\mathcal P}(\mathcal X)}[f(\mathcal X)] = \begin{pmatrix} \mathbb E_{\hat {\mathcal P}(\mathcal X)}[f_1(\mathcal X)] \\ \mathbb E_{\hat {\mathcal P}(\mathcal X)}[f_2(\mathcal X)] \\ \vdots \\ \mathbb E_{\hat {\mathcal P}(\mathcal X)}[f_{\mathcal Q}(\mathcal X)] \\ \end{pmatrix} = \begin{pmatrix} \sum_{i=1}^k \hat {\mathcal P}(x^{(j)} = x_i) \cdot f_1(x^{(j)}=x_i) \\ \sum_{i=1}^k \hat {\mathcal P}(x^{(j)} = x_i) \cdot f_2(x^{(j)}=x_i) \\ \vdots \\ \sum_{i=1}^k \hat {\mathcal P}(x^{(j)} = x_i) \cdot f_{\mathcal Q}(x^{(j)}=x_i) \\ \end{pmatrix} = \begin{pmatrix} \Omega_1 \\ \Omega_2 \\ \vdots \\ \Omega_{\mathcal Q} \\ \end{pmatrix} EP^(X)[f(X)]= EP^(X)[f1(X)]EP^(X)[f2(X)]EP^(X)[fQ(X)] = i=1kP^(x(j)=xi)f1(x(j)=xi)i=1kP^(x(j)=xi)f2(x(j)=xi)i=1kP^(x(j)=xi)fQ(x(j)=xi) = Ω1Ω2ΩQ

至此,我们根据约束条件——数据集合 X \mathcal X X借助经验概率分布 P ^ ( X ) \hat {\mathcal P}(\mathcal X) P^(X)得到一个 带等号的约束条件

最大熵原理推导过程

最大熵思想推导相似,该问题本质上也是一个优化问题

假设 P ( X ) \mathcal P(\mathcal X) P(X)使用最大熵原理最终求解的概率分布 p ( x ( j ) ) p(x^{(j)}) p(x(j))表示 P ( X ) \mathcal P(\mathcal X) P(X)分布下某样本 x ( j ) x^{(j)} x(j)概率密度函数。因此, P ( X ) \mathcal P(\mathcal X) P(X)表示如下:
H [ P ( X ) ] = − ∑ x ( j ) ∈ X p ( x ( j ) ) log ⁡ p ( x ( j ) ) \mathcal H[P(\mathcal X)] = - \sum_{x^{(j)} \in \mathcal X} p(x^{(j)}) \log p(x^{(j)}) H[P(X)]=x(j)Xp(x(j))logp(x(j))
目标函数表示如下:
max ⁡ − ∑ x ( j ) ∈ X p ( x ( j ) ) log ⁡ p ( x ( j ) ) = min ⁡ ∑ x ( j ) ∈ X p ( x ( j ) ) log ⁡ p ( x ( j ) ) \max - \sum_{x^{(j)} \in \mathcal X} p(x^{(j)}) \log p(x^{(j)}) = \min \sum_{x^{(j)} \in \mathcal X} p(x^{(j)}) \log p(x^{(j)}) maxx(j)Xp(x(j))logp(x(j))=minx(j)Xp(x(j))logp(x(j))
约束条件表示如下
在满足数据集合提供的约束条件时,也要满足概率自身的约束条件。
使用最大熵定理求解的概率分布 P ( X ) P(\mathcal X) P(X)是基于样本集合 X \mathcal X X得到的,因此约束条件中需要将 E P ( X ) [ f ( X ) ] = E P ^ ( X ) [ f ( X ) ] \mathbb E_{P(\mathcal X)}[f(\mathcal X)] = \mathbb E_{\hat P(\mathcal X)}[f(\mathcal X)] EP(X)[f(X)]=EP^(X)[f(X)]

s . t . { ∑ i = 1 k p ( x ( j ) = x i ) = 1 x ( j ) ∈ X E P ( X ) [ f ( X ) ] = E P ^ ( X ) [ f ( X ) ] = Ω s.t. \begin{cases} \sum_{i=1}^k p(x^{(j)}=x_i) = 1 \quad x^{(j)} \in \mathcal X \\ \mathbb E_{P(\mathcal X)}[f(\mathcal X)] = \mathbb E_{\hat P(\mathcal X)}[f(\mathcal X)] = \Omega \end{cases} s.t.{i=1kp(x(j)=xi)=1x(j)XEP(X)[f(X)]=EP^(X)[f(X)]=Ω

终上,我们得到 一个目标函数与两个带等号的约束条件

  • 使用拉格朗日乘数法构造拉格朗日函数
    由于 E P ^ ( X ) [ f ( X ) ] \mathbb E_{\hat {\mathcal P}(\mathcal X)}[f(\mathcal X)] EP^(X)[f(X)]是一个 Q \mathcal Q Q维向量,因此 λ \lambda λ也是一个 Q \mathcal Q Q维向量。最终目的是‘线性相加’ → λ T Ω \to \lambda^{T}\Omega λTΩ
    L [ p ( x ( j ) ) , λ 0 , λ ] = ∑ x ( j ) ∈ X p ( x ( j ) ) log ⁡ p ( x ( j ) ) + λ 0 ( 1 − ∑ i = 1 k p ( x ( j ) = x i ) ) + λ T [ Ω − E P ( X ) [ f ( X ) ] ] = ∑ x ( j ) ∈ X p ( x ( j ) ) log ⁡ p ( x ( j ) ) + λ 0 ( 1 − ∑ i = 1 k p ( x ( j ) = x i ) ) + λ T [ Ω − ∑ x ( j ) ∈ X p ( x ( j ) = x i ) f ( x ( j ) ) ] \begin{aligned} \mathcal L[p(x^{(j)}),\lambda_0,\lambda] & = \sum_{x^{(j)} \in \mathcal X} p(x^{(j)}) \log p(x^{(j)}) + \lambda_0 \left(1 - \sum_{i=1}^k p(x^{(j)} = x_i)\right) + \lambda^{T}\left[\Omega - \mathbb E_{P(\mathcal X)}[f(\mathcal X)]\right] \\ & = \sum_{x^{(j)} \in \mathcal X} p(x^{(j)}) \log p(x^{(j)}) + \lambda_0 \left(1 - \sum_{i=1}^k p(x^{(j)} = x_i)\right) + \lambda^{T} \left[\Omega - \sum_{x^{(j)} \in \mathcal X}p(x^{(j)}=x_i)f(x^{(j)}) \right] \end{aligned} L[p(x(j)),λ0,λ]=x(j)Xp(x(j))logp(x(j))+λ0(1i=1kp(x(j)=xi))+λT[ΩEP(X)[f(X)]]=x(j)Xp(x(j))logp(x(j))+λ0(1i=1kp(x(j)=xi))+λT Ωx(j)Xp(x(j)=xi)f(x(j))

  • L ( p ( x ( j ) ) , λ 0 , λ ) \mathcal L(p(x^{(j)}),\lambda_0,\lambda) L(p(x(j)),λ0,λ) p ( x ( j ) ) p(x^{(j)}) p(x(j))求偏导:
    需要注意的点:
    1. p ( x ( j ) ) p(x^{(j)}) p(x(j)) p ( x ( j ) = x i ) p(x^{(j)} = x_i) p(x(j)=xi)表示的是同一个东西,它们都表示‘任意样本’ x ( j ) x^{(j)} x(j)选择第 i i i个值 x i x_i xi的概率密度函数;
    2. 本文与视频推导出现矛盾的位置,拉格朗日函数的第一个连加符号 ∑ x ( j ) ∈ X \sum_{x^{(j)} \in \mathcal X} x(j)X它的连加次数是 N N N(样本数量)次,而第二个连加符号 ∑ i = 1 k \sum_{i=1}^k i=1k它的连加次数是 k k k(样本选择数值的数量)次,两个连加符号不能合并,但是‘视频’中合并了。但是该问题不影响最终结果,只是最后表现形式有少许偏差。
    ∂ L ( p ( x ( j ) ) , λ 0 , λ ) ∂ p ( x ( j ) ) = ∑ x ( j ) ∈ X [ p ( x ( j ) ) ⋅ 1 p ( x ( j ) ) + log ⁡ p ( x ( j ) ) ] + 0 − ∑ i = 1 k λ 0 + 0 − λ T ∑ x ( j ) ∈ X f ( x ( j ) ) = ∑ x ( j ) ∈ X [ 1 + log ⁡ p ( x ( j ) ) ] − ∑ i = 1 k λ 0 − λ T ∑ x ( j ) ∈ X f ( x ( j ) ) = ∑ x ( j ) ∈ X [ 1 + log ⁡ p ( x ( j ) ) − f ( x ( j ) ) ] − k ⋅ λ 0 \begin{aligned} \frac{\partial \mathcal L(p(x^{(j)}),\lambda_0,\lambda)}{\partial p(x^{(j)})} & = \sum_{x^{(j)} \in \mathcal X}\left[p(x^{(j)}) \cdot \frac{1}{p(x^{(j)})} +\log p(x^{(j)})\right] + 0 - \sum_{i=1}^k \lambda_0 + 0 - \lambda^{T} \sum_{x^{(j)} \in \mathcal X}f(x^{(j)}) \\ & = \sum_{x^{(j)} \in \mathcal X}\left[1 + \log p(x^{(j)})\right] - \sum_{i=1}^k \lambda_0 - \lambda^{T} \sum_{x^{(j)} \in \mathcal X}f(x^{(j)}) \\ & = \sum_{x^{(j)} \in \mathcal X}\left[1 + \log p(x^{(j)}) -f(x^{(j)})\right] - k \cdot \lambda_0 \end{aligned} p(x(j))L(p(x(j)),λ0,λ)=x(j)X[p(x(j))p(x(j))1+logp(x(j))]+0i=1kλ0+0λTx(j)Xf(x(j))=x(j)X[1+logp(x(j))]i=1kλ0λTx(j)Xf(x(j))=x(j)X[1+logp(x(j))f(x(j))]kλ0

由于 k ⋅ λ 0 k\cdot \lambda_0 kλ0是常数,可以将其进行变换:
k ⋅ λ 0 = N ⋅ k N ⋅ λ 0 = ∑ x ( j ) ∈ X k N ⋅ λ 0 \begin{aligned} k \cdot \lambda_0 & = N \cdot \frac{k}{N}\cdot \lambda_0 \\ & = \sum_{x^{(j)} \in \mathcal X}\frac{k}{N} \cdot \lambda_0 \end{aligned} kλ0=NNkλ0=x(j)XNkλ0
因此,将变换后的结果与原式合并:
∑ x ( j ) ∈ X [ 1 + log ⁡ p ( x ( j ) ) − f ( x ( j ) ) − k N ⋅ λ 0 ] \sum_{x^{(j)} \in \mathcal X}\left[1 + \log p(x^{(j)}) -f(x^{(j)}) - \frac{k}{N} \cdot \lambda_0 \right] x(j)X[1+logp(x(j))f(x(j))Nkλ0]

∂ L ( p ( x ( j ) ) , λ 0 , λ ) ∂ p ( x ( j ) ) ≜ 0 \begin{aligned} \frac{\partial \mathcal L(p(x^{(j)}),\lambda_0,\lambda)}{\partial p(x^{(j)})} \triangleq 0 \end{aligned} p(x(j))L(p(x(j)),λ0,λ)0,有:
{ 1 + log ⁡ p ( x ( j ) ) − f ( x ( j ) ) − k N ⋅ λ 0 = 0 → p ( x ( j ) ) = exp ⁡ { λ T f ( x ( j ) ) − ( k N λ 0 + 1 ) } ( x ( j ) ∈ X ) \begin{cases} \begin{aligned} & 1 + \log p(x^{(j)}) -f(x^{(j)}) - \frac{k}{N} \cdot \lambda_0 = 0 \\ & \to p(x^{(j)}) = \exp \left\{\lambda^{T}f(x^{(j)}) - (\frac{k}{N}\lambda_0 + 1) \right\} \quad(x^{(j)} \in \mathcal X) \end{aligned} \end{cases} 1+logp(x(j))f(x(j))Nkλ0=0p(x(j))=exp{λTf(x(j))(Nkλ0+1)}(x(j)X)

最终通式结果表示如下:
p ( x ) = exp ⁡ { λ T f ( x ) − ( k N λ 0 + 1 ) } p(x) = \exp \left\{\lambda^{T}f(x) - (\frac{k}{N}\lambda_0 + 1) \right\} p(x)=exp{λTf(x)(Nkλ0+1)}

根据指数族分布介绍中的指数族分布定义式,发现:

  • h ( x ) = 1 h(x) = 1 h(x)=1
  • η T = λ T \eta^T = \lambda^{T} ηT=λT
  • ϕ ( x ) = f ( x ) \phi(x) = f(x) ϕ(x)=f(x)
  • A ( η ) = k N λ 0 + 1 \begin{aligned}A(\eta) = \frac{k}{N}\lambda_0 + 1\end{aligned} A(η)=Nkλ0+1

至此,我们发现,在概率分布存在约束条件的情况下,满足约束条件下熵最大的分布就是指数族分布

下一节将暂停一节指数族分布的介绍,将最大熵原理延伸至 sigmoid,softmax \text{sigmoid,softmax} sigmoid,softmax函数。

相关参考:
机器学习-白板推导系列(八)-指数族分布(Exponential Family Distribution)

  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 7
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

静静的喝酒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值