交叉熵

1.信息量

信息量与事件发生的概率成反比。
如:
事件1:明天太阳正常升起。该事件发生的概率P=1,因此信息量为0。
事件2:天气预报说明天要下雨。本来我们不知道明天天气,但是通过这句话消除了部分不确定性,因此它具有一定的信息量。

信息量的计算:

2.信息熵

信息熵是所有信息量的期望。

事件序号 事件 概率 信息量
1 明天下雨 0.6 -log(0.6)
2 明天不下雨 0.4 -log(0.4)


3.相对熵(KL熵)

衡量同一变量在不同概率分布上的差异。比如随机变量X在测试集上的概率分布为,验证集上的概率分布为,相对熵计算公式为:

例如机器学习的分类问题:

事件序号 事件 预测概率 实际情况
1 明天下雨 0.6 1
2 明天不下雨 0.4 0


4.交叉熵

拆分KL散度公式:

-
=

即信息熵,后者为交叉熵。KL散度=信息熵-交叉熵。交叉熵公式为:

在机器学习训练网络时,输入数据与标签常常已经确定,那么真实概率分布P(x) 也就确定下来了,所以信息熵在这里就是一个常量
由于KL散度的值表示真实概率分布P(x) 与预测概率分布Q(x) 之间的差异,值越小表示预测的结果越好,所以需要最小化KL散度,而交叉熵等于KL散度加上一个常量(信息熵),且公式相比KL散度更加容易计算,所以在机器学习中常常使用交叉熵损失函数来计算loss就行了。

事件序号 事件 预测概率 实际情况
1 明天下雨 0.6 1
2 明天不下雨 0.4 0

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

参考:https://blog.csdn.net/b1055077005/article/details/100152102

你可能感兴趣的:(交叉熵)