交叉熵 vs KL散度

交叉熵和KL散度

信息熵H(X)可以看做,对X中的样本进行编码所需要的编码长度的期望值。

这里可以引申出交叉熵的理解,现在有两个分布,真实分布p和非真实分布q,我们的样本来自真实分布p。

按照真实分布p来编码样本所需的编码长度的期望为,这就是上面说的信息熵H( p )

按照不真实分布q来编码样本所需的编码长度的期望为,这就是所谓的交叉熵H( p,q )

这里引申出KL散度D(p||q) = H(p,q) - H(p) = ,也叫做相对熵,它表示两个分布的差异,差异越大,相对熵越大。

 

机器学习中,我们用非真实分布q去预测真实分布p,因为真实分布p是固定的,D(p||q) = H(p,q) - H(p) 中 H(p) 固定,也就是说交叉熵H(p,q)越大,相对熵D(p||q)越大,两个分布的差异越大。

所以交叉熵用来做损失函数就是这个道理,它衡量了真实分布和预测分布的差异性

 https://www.cnblogs.com/liaohuiqiang/p/7673681.html

https://blog.csdn.net/colourful_sky/article/details/78534122?utm_source=blogxgwz0

你可能感兴趣的:(交叉熵 vs KL散度)