信息熵(香农熵)

熵用来表征一个随机变量的值的不确定性的程度,如果一个随机变量的值是确定的,那么我们说这个随机变量的熵为0;如果一个随机变量的值不确定性很大,那么我们说这个随机变量的熵较大。比如,有一个两面很均匀的硬币,抛出得到正面的概率与反面的概率都为0.5,那么我们一般无法准确的预测抛一次硬币的结果,因此我们说这个随机变量的熵很大。如果一个硬币正反面不均匀,正面质量比较大,那么每次抛硬币正面出现的概率大,抛硬币的结果比较好预测,此时我们说这个随机变量的熵很小。
机器学习中的熵 - 图1是一个随机变量,其概率密度函数为机器学习中的熵 - 图2,那么随机变量机器学习中的熵 - 图3的熵为:
机器学习中的熵 - 图4
对于离散型随机变量有:
机器学习中的熵 - 图5
对于连续型随机变量有:
机器学习中的熵 - 图6

相对熵(KL散度)

设随机变量机器学习中的熵 - 图7有两个单独的概率分布,分布函数分别为:机器学习中的熵 - 图8。那么我们可以使用相对熵来衡量两个分布的差异。
对于离散型随机变量有:
机器学习中的熵 - 图9
对于连续型随机变量有:
机器学习中的熵 - 图10
从公式中可以看到,如果两个分布越接近,则散度值越小。它的性质如下:

  1. 当两个分布完全相同时,KL散度为0,
  2. KL散度是非负的
  3. 不具有对称性

交叉熵

两个分布的KL散度可以写为:
机器学习中的熵 - 图11
上述公式中,等式的后一部分就是交叉熵:
机器学习中的熵 - 图12
离散情况:
机器学习中的熵 - 图13
对于机器学习中的分类问题的交叉熵损失,单个样本的损失函数,其中 class 表示样本 机器学习中的熵 - 图14 所属的真实类别,假设一共有 机器学习中的熵 - 图15 类那么 class的取值为 机器学习中的熵 - 图16。假设 机器学习中的熵 - 图17 是目标分布,机器学习中的熵 - 图18 是当前分类模型所表现出来的分布,我们的目标是让这两个分布尽可能的接近。由于 机器学习中的熵 - 图19 是固定的, 机器学习中的熵 - 图20 不会变,那么我们只需要让交叉熵尽可能变小就行。机器学习中的熵 - 图21 表示样本 机器学习中的熵 - 图22 被分为正确类型的概率,它永远都是1。机器学习中的熵 - 图23 表示分类器认为样本 机器学习中的熵 - 图24 被分为正确的那个类别的概率,因此在下面的公式中只包含 机器学习中的熵 - 图25 这一项。
机器学习中的熵 - 图26
那么对于 机器学习中的熵 - 图27 个训练样本,总损失可以表示为:
机器学习中的熵 - 图28

互信息

互信息越大说明两个随机变量越相关,也可以用于评估两个分部之间的距离。但它具有对称的性质。两个随机变量的互信息定义为:

机器学习中的熵 - 图29
互信息还可以等价的表示为:
机器学习中的熵 - 图30
也可以写为KL散度的形式:
机器学习中的熵 - 图31