一、核心思想,衡量两个概率分布的差异

星博讯 AI基础认知 1

交叉熵的本质是用一个“估计的分布”Q去描述“真实的分布”P时,所需要的平均信息量(或说造成的平均惊讶度)

一、核心思想,衡量两个概率分布的差异-第1张图片-星博讯网络科技知识-SEO优化技巧|AI知识科普|互联网行业干货大全

它衡量的是两个概率分布之间的“距离”或差异,在机器学习中,交叉熵越小,说明我们的预测分布Q越接近真实分布P

从信息论基础出发的三个关键概念

要理解交叉熵,最好先理解三个递进的概念:

信息量 / 惊喜度

  • 定义:一个事件发生的概率越小,其发生时带来的“信息量”或“惊喜度”就越大。
  • 公式:对于一个发生概率为 p 的事件,其信息量 I(p) 为: I(p) = -log₂(p)(底数为2时,单位是比特;也可用自然对数,单位是奈特)。
  • 例子:太阳从东边升起(p≈1),信息量≈0,毫不意外,你买的彩票中了头奖(p极低),信息量巨大。

  • 定义一个概率分布P本身的平均惊喜度(不确定性),即,对所有可能事件的信息量求期望。
  • 公式H(P) = - Σ [pᵢ * log₂(pᵢ)],对P的所有可能事件i求和。
  • 含义:熵是分布P的固有属性,熵越大,系统越混乱、越不确定。
    • 例子:抛一枚均匀硬币,正反面概率各0.5,熵为1比特(不确定性最高),抛一枚两面都是正面的硬币,熵为0(完全确定)。

交叉熵

  • 定义用另一个估计的分布Q,去表示真实分布P时,所需的平均信息量
  • 公式H(P, Q) = - Σ [pᵢ * log₂(qᵢ)]
    • 注意:这里用的是真实概率 pᵢ估计概率的对数 log(qᵢ) 相乘再求和。
  • 直观理解
    • 如果Q完美匹配P(即对所有i,qᵢ = pᵢ),那么交叉熵就等于P自身的熵 H(P)
    • 如果Q和P不匹配,那么用Q来描述P就会产生“额外”的信息损耗,导致 H(P, Q) > H(P)
    • 这个“额外损耗”就是著名的KL散度

与KL散度的关系

  • KL散度(相对熵)专门衡量两个分布P和Q差异的量,公式为: D_KL(P || Q) = Σ [pᵢ * log₂(pᵢ / qᵢ)] = H(P, Q) - H(P)
  • 关键等式交叉熵 = 熵 + KL散度 H(P, Q) = H(P) + D_KL(P || Q)
  • 意义:对于一个固定的真实分布P,其熵H(P)是常数。最小化交叉熵H(P, Q) 就等价于最小化KL散度D_KL(P || Q),也就是让Q尽可能地逼近P,这就是交叉熵能作为损失函数的理论根源。

在机器学习(尤其是分类任务)中的应用

在监督学习中,我们有一个真实标签(可看作真实分布P)和模型的预测输出(估计分布Q)。

二分类任务 (Binary Classification)

  • 真实标签y:通常为0或1(是不是猫)。
  • 预测输出ŷ:模型预测样本属于正类的概率(是猫的概率)。
  • 交叉熵损失函数L = - [y * log(ŷ) + (1 - y) * log(1 - ŷ)]
    • 当y=1时,损失为 -log(ŷ),预测ŷ越接近1,损失越小。
    • 当y=0时,损失为 -log(1 - ŷ),预测ŷ越接近0,损失越小。

多分类任务 (Multi-class Classification)

  • 真实标签y:通常表示为一个one-hot向量,共有3类,真实属于第2类,则 y = [0, 1, 0],这就是真实分布P,它只在真实类别的概率为1,其余为0。
  • 预测输出ŷ:模型通过Softmax函数输出一个概率分布ŷ = [0.1, 0.7, 0.2],这就是估计分布Q。
  • 交叉熵损失函数(分类任务中最常用的形式)L = - Σ yᵢ * log(ŷᵢ) (对所有类别i求和) 由于y是one-hot向量,只有真实类别j对应的yⱼ=1,其他都为0,因此公式简化为: L = - log(ŷⱼ),其中j是真实类别。
    • 意义只关心模型对真实类别预测概率的对数值,预测概率ŷⱼ越高(越接近1),-log(ŷⱼ)就越小,损失也就越小。

一个简单例子:

假设一个3分类问题,真实标签为第2类(y = [0, 1, 0])。

  • 模型A预测:ŷ_A = [0.2, 0.7, 0.1] -> 损失 L_A = -log(0.7) ≈ 0.36
  • 模型B预测:ŷ_B = [0.2, 0.3, 0.5] -> 损失 L_B = -log(0.3) ≈ 1.20 显然,模型A的预测更好,损失更小。

为什么在分类中常用交叉熵而不是均方误差(MSE)?

  1. 梯度性质更好:对于使用Sigmoid/Softmax的输出单元,MSE的损失函数在误差大时梯度可能非常小(饱和区),导致学习缓慢,而交叉熵损失的梯度与 (ŷ - y) 成正比,误差越大梯度越大,学习更快、更有效。
  2. 与概率解释匹配:交叉熵直接衡量两个概率分布的差异,其理论根基(信息论)非常坚实,而MSE更擅长处理回归问题(输出是连续值)。
  3. 实践效果:在分类问题上,使用交叉熵损失通常能比MSE获得更快的收敛速度和更好的最终性能。
  • 交叉熵:衡量用一个分布Q去近似另一个分布P时的“平均信息成本”。
  • 核心关系交叉熵 = 真实分布的熵 + 两个分布的KL散度,最小化交叉熵等价于最小化KL散度。
  • 在机器学习中:它是分类任务的标配损失函数,通过比较真实标签的one-hot分布模型的预测概率分布,来指导模型参数的更新。
  • 公式(多分类)L = - Σ yᵢ * log(ŷᵢ), 常与Softmax输出层结合使用。

理解交叉熵,是理解现代深度学习分类模型训练过程的一块基石。

标签: 概率分布 差异

抱歉,评论功能暂时关闭!

微信咨询Xboxun188
QQ:1320815949
在线时间
10:00 ~ 2:00