信息 熵 相对熵 交叉熵

1.信息:-logPi, 事件发生的概率越大,信息量越小(理所当然的事情没提供什么信息);事件发生的概率越小,信息量越大(什么,怎么可能?信息量有点大)。有点抽象,不完全等同于信息量的文字意思。
2.熵:信息量的期望,-∑PilogPi (信息和熵通常用的是2为底的对数,也可以用其他底)
3.相对熵:又叫KL散度(Kullback-Leibler divergence),用于衡量两个分布的差异。一个随机变量x的两个分布p和q,相对熵(这里一般是自然对数底)


其意义在于当用q这个分布去替代p时,需要额外的信息增量,如果q就等于p,那么需要的信息增量就是0。相对熵的公式和PSI非常像,但是前面只有p(xi)参与,所以q代替p和p代替q相对熵是不一样的,所以这个KL散度可以公平地衡量两个分布的差异吗?算相对熵的时候注意,比如x是一条记录,他只能属于三个分类中的某一个分类,他属于三个分类的真实值是[1,0,0],预测值是[0.7,0.2,0.1],然后就可以算一个相对熵Di,但是可能一个数据集有很多条记录,所以总的相对熵就是∑Di。另外一个例子,x是一个叫学历的变量,取值有{小学,中学,大学},概率分别为[0.1,0.4,0.5],然后另一个客群的学历的分布是[0.2,0.2,0.6],这个时候两个分布可以算一个相对熵
4.交叉熵:交叉熵就是把上面相对熵公式展开

前面部分-H就是熵,而后面部分就是所谓的交叉熵
对于一个数据集,交叉熵的batch求和再平均就是logloss,由于在KL公式中前面-H因为真值是确定的,必定为0或1,这个时候H=0,所以logloss也可以叫做KL loss
比如xi ∈ {good,bad},p(good) = 1 or p(bad) = 1,那实际上就只有一项了,p(xi)=0的项就等于0,所以上式变化为

这里q(xi)就是真正label为1的概率,比如真实label是good,q(xi)就是好人的概率,label是坏人,q(xi)就是坏人的概率,所以就等价于logloss

交叉熵还可以这样理解,就是把H = -∑plogp,把logp换成了logq,就是p这个概率分布和q这个概率分布的交互,想象一下方差和协方差,E(X-E(X))^2,E(X-E(X))(Y-E(Y))

留言

熱門文章