交叉熵损失函数(Cross Entropy loss function),主要为了度量两个概率之间的差异性。
信息量
香农(shannon)曰:信息是用来消除随机不确定性的。
“太阳从东边升起”,这条信息并没有减少不确定性,因为太阳肯定是从东边升起的,这是一句废话,信息量为0。
”2018年中国队成功进入世界杯“,从直觉上来看,这句话具有很大的信息量。因为中国队进入世界杯的不确定性因素很大,而这句话消除了进入世界杯的不确定性,所以按照定义,这句话的信息量很大。
信息发生概率越大,不确定性越小,信息量越小。信息发生概率越小,不确定性越大,信息量越大。概率越小,
即 :信息量的大小与信息发生的概率成反比。
设某事件发生的概率是P(x), 信息量I(x)为
信息熵 information entropy
信息熵表示所有信息量的期望,X是离散型随机变量
即:
使用明天天气的概率计算信息熵。
相对熵 relative entropy (KL散度 kullback-leibler divergence)
对于同一个随机变量X 有两个独立的概率分布P(x)和Q(x), 用KL散度计算它们之间的差异。
e.g.
在机器学习中,经常用P(x)表示真实概率,Q(x)表示预测概率。在一个三分类任务中,x1,x2和x3分别代表 猫 狗 和 牛。
一张图片的真实分布P(X)=[1,0,0] 即是一张猫的图片。 预测的分布Q(X)=[0.7,0.2,0.1]
KL散度
KL散度越小,表示Q(x)和P(x)越接近,即预测的越准。
交叉熵 Cross Entropy
首先 给出公式 交叉熵 = 信息熵+相对熵
在机器学习中,输入数据一般都有标签,即真实概率分布 P(x)已确定。
问:有相对熵表示两个概率分布的相似性,为什么还要用交叉熵?
答:因为交叉熵 等于相对熵加上一个常量(信息熵),也能反映两者相似性,而且比相对熵好算。
交叉熵和KL散度越小,说明模型预测效果越好。
应用:
分类问题中,常用交叉熵 cross entropy 作为loss函数