从GCN中学习的信息熵

之前在GCN中碰到的交叉熵损失函数是分类问题中经常使用的一种损失函数,对于其内部原理感觉没有完全懂,今天来深入理解一下。
在这里插入图片描述

交叉熵简介

交叉熵 :信息论中的一个重要概念,主要用于度量两个概率分布间的差异性
信息是用来消除随机不确定性的东西”,衡量信息量的大小就是看这个信息消除不确定性的程度。
“太阳东升西落”,这条信息并没有减少不确定性,因为太阳肯定是从东边升起西边落下,这是一句人人都知道的话,信息量为0。
”2018年中国队成功进入世界杯“,从直觉上来看,这句话具有很大的信息量。因为中国队进入世界杯的不确定性因素很大,而这句话消除了进入世界杯的不确定性,所以按照定义,这句话的信息量很大。
根据上述总结:信息量的大小与信息发生的概率成反比。概率越大,信息量越小。
设某一事件发生的概率为P(x),其信息量表示为:
在这里插入图片描述
其中 I(x)表示信息量,这里 log 表示以e为底的自然对数。
信息熵
信息熵也被称为熵,用来表示所有信息量的期望。

期望是试验中每次可能结果的概率乘以其结果的总和。

所以信息量的熵可表示为:(这里的 X是一个离散型随机变量)
在这里插入图片描述
对0-1分布的问题,其结果只用两种情况,是或不是,设某一件事情发生的概率为 P ( x ) ,则另一件事情发生的概率为 1 − P ( x ) ,所以对于0-1分布的问题,计算熵的公式可以简化如下:
在这里插入图片描述
相对熵(KL散度)
如果对于同一个随机变量 X X有两个单独的概率分布 P ( x ) 和 Q ( x ) ,则我们可以使用KL散度来衡量这两个概率分布之间的差异。
机器学习中,常常使用 P ( x ) P\left(x\right) P(x)来表示样本的真实分布, Q ( x ) Q \left(x\right) Q(x)来表示模型所预测的分布,比如在一个三分类任务中(例如,猫狗马分类器), x 1 , x 2 , x 3 分别代表猫,狗,马,例如一张猫的图片真实分布 P ( X ) = [ 1 , 0 , 0 ]预测分布
Q ( X ) = [ 0.7 , 0.2 , 0.1 ]计算KL散度:
在这里插入图片描述
KL散度越小,表示 P ( x ) 与 Q(x)的分布更加接近,可以通过反复训练 Q ( x ) 来使 Q ( x ) 的分布逼近 P ( x )

交叉熵
首先将KL散度公式拆开:
在这里插入图片描述
前者 H ( p ( x ) )表示信息熵,后者即为交叉熵,KL散度 = 交叉熵 - 信息熵
交叉熵公式表示为:
在这里插入图片描述
在机器学习训练网络时,输入数据与标签常常已经确定,说明真实概率分布 P ( x )已经确定,即信息熵是一个常量。由于KL散度的值表示真实概率分布 P ( x ) 与预测概率分布 Q ( x ) 之间的差异,其值越小说明预测结果越好。因此需要最小化KL散度,而交叉熵等于KL散度加上一个常量(信息熵),且公式相比KL散度更加容易计算,所以在机器学习中常常使用交叉熵损失函数来计算loss。
总结:

交叉熵能够衡量同一个随机变量中的两个不同概率分布的差异程度,在机器学习中就表示为真实概率分布与预测概率分布之间的差异。交叉熵的值越小,模型预测效果就越好。

交叉熵在分类问题中常常与softmax是标配,softmax将输出的结果进行处理,使其多个分类的预测值和为1,再通过交叉熵来计算损失。
如GCN中预测:
在这里插入图片描述

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

perfect Yang

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值