机器学习数学基础 120 章

最大熵原理

层级:C|建议先修:04-08、04-09、05-09、07-01

当我们只知道分布满足若干约束,却不知道更多细节时,应选择哪一个分布?最大熵原理给出的回答是:选择在满足已知事实的分布中熵最大的那个,避免加入没有证据支持的额外结构。

1. 基本思想

设未知离散分布为 p(x)p(x),已知归一化条件和若干期望约束:

xp(x)=1,xp(x)fj(x)=cj,j=1,,m.\sum_xp(x)=1, \qquad \sum_xp(x)f_j(x)=c_j,\quad j=1,\ldots,m.

最大熵问题是

maxp  H(p)=xp(x)logp(x)\max_{p}\;H(p)=-\sum_xp(x)\log p(x)

并满足上述约束及 p(x)0p(x)\ge0。它并不是宣称现实“最随机”,而是在已知约束之外保持最少偏见。

2. 只有有限支持集时得到均匀分布

若只知道 XXKK 个值中取值,没有其他约束,则最大熵解为

p(x)=1K.p(x)=\frac1K.

因为均匀分布的熵达到 logK\log K。这与“没有理由偏爱任何一个结果”的对称性一致。

3. 拉格朗日乘子推导

构造

L(p,α,λ)=xp(x)logp(x)+α(xp(x)1)+jλj(xp(x)fj(x)cj).\mathcal L(p,\alpha,\boldsymbol\lambda) =-\sum_xp(x)\log p(x) +\alpha\left(\sum_xp(x)-1\right) +\sum_j\lambda_j\left(\sum_xp(x)f_j(x)-c_j\right).

对每个 p(x)p(x) 求偏导并令其为 0:

(logp(x)+1)+α+jλjfj(x)=0.-(\log p(x)+1)+\alpha+\sum_j\lambda_jf_j(x)=0.

整理得到

p(x)=1Z(λ)exp(jλjfj(x)),p(x)=\frac{1}{Z(\boldsymbol\lambda)} \exp\left(\sum_j\lambda_jf_j(x)\right),

其中配分函数

Z(λ)=xexp(jλjfj(x))Z(\boldsymbol\lambda)=\sum_x \exp\left(\sum_j\lambda_jf_j(x)\right)

负责归一化。最大熵解自然具有指数族形式。

4. 典型最大熵分布

不同支持集和约束会产生熟悉的分布:

  • 有限集合、只有归一化约束:均匀分布;
  • 非负整数、固定均值:几何分布;
  • 非负实数、固定均值:指数分布;
  • 整条实线、固定均值与方差:高斯分布。

“高斯噪声”之所以常见,一个解释是:在只知道均值和方差时,高斯是微分熵最大的分布。

5. 条件最大熵模型

监督学习关心条件分布 p(yx)p(y\mid x)。给定经验特征约束,可最大化条件熵

H(YX)=xp~(x)yp(yx)logp(yx),H(Y\mid X)=-\sum_x\tilde p(x) \sum_yp(y\mid x)\log p(y\mid x),

得到对数线性形式

pθ(yx)=exp(θf(x,y))yexp(θf(x,y)).p_\theta(y\mid x) =\frac{\exp(\theta^\top f(x,y))} {\sum_{y'}\exp(\theta^\top f(x,y'))}.

二分类时与逻辑回归紧密相关,多分类时对应 Softmax 回归。

6. 最大熵与极大似然的对偶联系

最大熵原问题在分布空间中优化,并要求模型特征期望匹配经验特征期望;其对偶问题常表现为指数族模型的极大似然估计。直观上:

  • 最大熵从“满足哪些统计约束”出发选择最不武断的分布;
  • 极大似然从“哪个参数最能解释样本”出发拟合模型;
  • 对指数族,二者由凸对偶联系起来。

7. 相对熵推广:最小判别信息

若已有一个参考分布 q(x)q(x),不必相对均匀分布最大化熵,而可在约束下最小化

DKL(pq).D_{\mathrm{KL}}(p\|q).

这表示在满足新约束的前提下,对原有信念 qq 做最小改动。普通最大熵可视作参考分布均匀时的特殊情形。

8. 适用边界

最大熵结果依赖三个要素:支持集、约束和所用测度。若漏掉关键约束,得到的分布会过于宽泛;若加入错误约束,会把错误假设编码进模型。连续变量的微分熵还会随坐标变换改变,因此必须明确参考测度。

9. 数值求解

实际问题通常转为对偶参数 λ\boldsymbol\lambda 的凸优化。计算瓶颈往往是配分函数 ZZ 及其梯度;状态空间很大时,需要动态规划、采样或变分近似。

10. 易错点

  1. 最大熵不是“所有结果都设为均匀”;有约束时解通常不均匀。
  2. 约束是对分布的期望约束,不是逐样本都满足的硬等式。
  3. 最大熵不保证预测最准确,它是一种建模原则。
  4. 连续最大熵问题必须指定支持集;只固定均值而允许整条实线时可能没有有限解。

常见问答

Q1:最大熵是不是等于最大随机性?
更准确地说,是在已知约束下保留最大不确定性,避免凭空加入可预测结构。

Q2:为什么最大熵解常含指数函数?
熵中的 plogpp\log p 经拉格朗日求导会产生 logp\log p,解出 pp 时自然得到指数形式。

Q3:最大熵与贝叶斯方法冲突吗?
不冲突。最大熵可用于选择先验或受约束分布;贝叶斯方法则描述先验经数据更新成后验。二者解决的层面不同。

Q4:为什么只知道均值和方差时选高斯?
在实数支持、给定均值方差且密度满足正则条件时,高斯的微分熵最大,代表未额外假定更高阶结构。

练习

  1. 说明有限 KK 个结果、无其他约束时为何得到均匀分布。
  2. 对非负实数上的密度,在固定均值约束下写出最大熵问题的拉格朗日函数。
  3. 由一般推导说明最大熵解为什么属于指数族。
  4. 若已有可信参考分布 qq,为什么最小化 DKL(pq)D_{\mathrm{KL}}(p\|q) 比直接最大化熵更合适?

答案与提示

  1. 可用拉格朗日法得到所有 pip_i 相等,再由归一化得 1/K1/K;也可用 H(p)logKH(p)\le\log K
  2. plogp-\int p\log p 加入 α(p1)\alpha(\int p-1)λ(xpμ)\lambda(\int xp-\mu)。求解得到指数密度。
  3. 驻点条件使 logp(x)\log p(x) 成为特征 fj(x)f_j(x) 的线性组合,再取指数并归一化。
  4. 它把已有信息保留在 qq 中,只为了满足新约束作必要改变。