乐趣区

关于机器学习:从熵到交叉熵损失的直观通俗的解释

对于机器学习和数据迷信的初学者来说,必须分明熵和穿插熵的概念。它们是构建树、降维和图像分类的要害根底。

在本文中,我将尝试从信息论的角度解释无关熵的概念,当我第一次尝试把握这个概念时,这十分有帮忙。让咱们看看它是如何进行的。

什么是 -log(p)?

信息论的次要关注点之一是量化编码和传输事件所需的总比特数:常见的事件即概率较低的事件,须要示意更多位,而频繁事件不须要很多位。因而咱们能够从编码器和通信机的角度登程,将 -log(p) 定义为编码和传输合乎 p 概率分布的事件所需的总比特数,即信息。小 p(常见事件)导致大 -log(p)(更多位)。

-log P(x) = log (1/P(x))

从事件观察者的角度来看,咱们能够将 -log(p) 了解为是察看事件的“诧异”的水平(事件产生的概率越小,咱们的诧异水平越高)。例如如果抛硬币的 p(head) = 0.99 和 p(tail) = 0.01,如果抛硬币是 tail 人们必定会诧异。计算 -log(p(tail)) = 6.644,远大于 -log(p(head)) = 0.014。这就是 -log(p) 的直观含意。

熵,意料之中的惊喜

在下面探讨之后,咱们能够定义概率分布为 p(x) 的事件的预期以外诧异水平并称其为熵。正式一些的说法是:熵是量化事件可能后果中固有的不确定性程度(对咱们来说不确定性带来的就是意外的惊喜,当然也有可能是惊吓)。对于连续变量 x,熵能够写为,

回到信息论,从编码器和通信机的角度来看,这量化了示意遵循概率分布 p(x) 的随机抉择事件所需的比特数。例如一个蕴含圆形和三角形的盒子并回顾化学课上熵的概念!偏态散布(许多圆圈和大量三角形)意味着低熵,因为抉择不确定性程度很低,这意味着确信抉择圆圈的概率更大。

穿插熵,用于机器学习

当初让咱们切换一下思路,机器学习的次要指标是找到并申明一个最能模仿(近似)实在数据分布的概率分布。穿插熵提供了一种应用散布 Q 来量化依照散布 P 编码数据所需的均匀位数的办法。

听着有点绕口对吧,上面这个概念可能更简单。这个量 Q 能够通过以下关系从熵中取得:(原始比特)+(额定比特)=(总比特)。(额定比特)局部就是所谓的 KL 散度,在统计学中罕用来掂量两个散布之间的间隔,也被称为绝对熵。

在图像分类中,常常会遇到对于 N 类的穿插熵损失,如下示意,其中 y{i} 和 {y{i}} 冒 别离是理论标签和预测。当 N = 2 时穿插熵损失将简略地变成逻辑回归中应用的 log 损失。

总结

  • -log(p) 只是表白对以概率 p 察看到事件的诧异水平的一种奇异形式。常见事件(低 p)导致诧异水平高。
  • 如果整合所有事件的”诧异水平“,就会失去预期的”诧异“,咱们称之为熵。如果高熵则意味着事件的可能后果中固有的不确定性程度很高。
  • 穿插熵思考了近似于实在散布 P 的散布 Q,并应用散布 Q 测量示意遵循散布 P 的数据所需的比特数。
  • 穿插熵损失是量化咱们的机器学习模型对数据实在散布 (P) 的近似 (Q) 的好坏水平 (Q) 的好办法。请留神,Log 损失只是一个二元穿插熵损失。

心愿本篇文章可能帮忙你对熵是什么以及它如何连贯到穿插熵以进行机器学习有了更好的理解。

作者:david.h.kang

退出移动版