熵 (Entropy) & 交叉熵 (Cross-Entropy) 总结

熵 (Entropy) & 交叉熵 (Cross-Entropy) 总结

Part 1:熵 (Entropy)

核心定义

"概率 × log(概率)" = "出现频率" × "出现时的信息量" = 平均信息量
熵衡量一个概率分布 (Probability Distribution) 的不确定性 (Uncertainty),即"平均需要多少信息才能描述一个事件的结果"。

\[H(P) = -\sum_{i} P(x_i) \log P(x_i) \]

直觉理解

  • 抛硬币 50/50 → 熵最大(最不确定)
  • 确定事件(概率=1)→ 熵 = 0(完全没有不确定性)
  • 熵越高 → 分布越均匀 → 信息量 (Information Content) 越大

关键性质

  • 非负性:H(P) ≥ 0
  • 均匀分布 (Uniform Distribution) 时取最大值
  • 自信息 (Self-information) I(x) = −log P(x) 直接相关 → 熵 = 自信息的期望值 (Expected Value)

与正态分布 (Gaussian Distribution) 的关系

  • 在所有方差 (Variance) 相同的连续分布中,正态分布的微分熵 (Differential Entropy) 最大
  • 这是最大熵原理 (Maximum Entropy Principle) 的经典结论:只知道均值和方差时,正态分布是最"保守"(最少假设)的选择
  • 微分熵公式:\(H = ½ ln(2πeσ²)\)

在机器学习 (Machine Learning) 中的联系

  • 决策树 (Decision Tree):用信息增益 (Information Gain) = 熵的减少量,来选择最佳分裂特征
  • 最大熵模型 (Maximum Entropy Model):在约束条件下选择熵最大的分布 → 逻辑回归 (Logistic Regression) 是其特例
  • 变分推断 (Variational Inference):ELBO 目标函数中包含熵项,鼓励后验分布 (Posterior Distribution) 不要过于集中

Part 2:交叉熵 (Cross-Entropy)

核心定义

如果你用错误的 q 去编码消息,会产生更多信息,就会用更多 bit,多出来的部分就是惩罚。
交叉熵衡量:用分布 Q(模型预测)去编码来自分布 P(真实标签)的数据时,所需的平均编码长度

\[H(P, Q) = -\sum_{i} P(x_i) \log Q(x_i) \]

与熵、KL 散度的三角关系

\[H(P, Q) = H(P) + D_{KL}(P | Q) \]

  • H(P):真实分布自身的熵 → 训练时是常数,不影响优化方向
  • D_KL(P‖Q):KL 散度 (Kullback-Leibler Divergence),衡量 Q 偏离 P 的程度,≥ 0
  • 因此:最小化交叉熵 ≡ 最小化 KL 散度(因为 H(P) 是常数)

作为损失函数 (Loss Function) 的两种形式

二分类交叉熵 (Binary Cross-Entropy, BCE):

\[\mathcal{L} = -[y \log \hat{y} + (1-y) \log(1-\hat{y})] \]

y 是真实标签 (0 或 1),ŷ 是模型输出的概率

多分类交叉熵 (Categorical Cross-Entropy):

\[\mathcal{L} = -\sum_{c=1}^{C} y_c \log \hat{y}_c \]

\(y_c\) 是 one-hot 编码的真实标签,\(ŷ_c\) 是 Softmax 输出的概率

手稿参考

f764a3ebb0cf523a36ad89d5cc91c375

交叉熵 = 最大似然估计 (Maximum Likelihood Estimation)

这两者在数学上完全等价:

  • 最大似然 (MLE) 的目标:让模型对真实标签的预测概率 Q(x) 尽可能 → max log Q(x)
  • 交叉熵的目标:让 −log Q(x) 尽可能 → min (−log Q(x))
  • 只差一个负号,是同一个优化问题的两种表述

与正态分布 (Gaussian Distribution) 的关系

  • 假设输出服从正态分布 → 最大化对数似然 (Log-Likelihood) 等价于最小化均方误差 (Mean Squared Error, MSE)
  • 假设输出服从伯努利 / 类别分布 (Bernoulli / Categorical) → 最大化对数似然等价于最小化交叉熵 (Cross-Entropy)
  • 总结:MSE 和 Cross-Entropy 分别是高斯假设分类假设下的负对数似然损失

在机器学习中的更多联系

  • 逻辑回归 (Logistic Regression):直接以 Binary Cross-Entropy (二分类交叉熵) 为目标函数
  • Softmax + Cross-Entropy:多分类的标准组合,梯度形式简洁(ŷ − y)
  • 知识蒸馏 (Knowledge Distillation):用 teacher 模型的 soft label 计算交叉熵,传递"暗知识"
  • 对比学习 (Contrastive Learning):InfoNCE Loss 本质是交叉熵的变体
  • 语言模型 (Language Model):困惑度 (Perplexity) = 2^{H(P,Q)},即交叉熵的指数形式,越低说明模型越好

一句话总结

熵描述"真实世界有多不确定",交叉熵描述"我的模型离真实世界有多远"——训练的目标,就是让这个距离趋近于零。

posted @ 2026-06-03 22:58  离心律  阅读(17)  评论(0)    收藏  举报