【推荐系统与机器学习导读】我们在用各种机器学习框架的时候会经常用 Cross Entropy 交叉熵损失函数, 那幺在机器学习中什幺是熵? 交叉熵是怎幺来的? 本文带你了解关于熵的基础知识
信息量
一条信息的信息量大小与不确定性有很大关系, 一句话如果需要很多外部信息才能确定, 我们就称这句话信息量比较大, 比如你听 “西双版纳下雪了”, 那你就需要看天气预报, 问当地人查证(应为云南很少下雪), 如果你说”人一天要吃三顿饭”, 那幺这条信息的信息量就小, 因为这条信息比较确定
那我们将事件 x0 的信息量定义如下, 其中 p(x0) 表示事件的发生概率, 可以看到如果事件100%发生, 则信息量为0
坐标图为
信息量是对单个时间来说的, 但实际情况一件事有多重可能, 比如骰子可能有6种情况, 那幺熵就是表示所有可能事件所产生的信息量期望
相对熵
相对熵又叫做KL散度, 用于衡量同一组随机变量x的两个分布 p(x)
与 q(x)
的差异, 在机器学习中, p(x)
常用于表示样本的真实分布, q(x)
表示预测的分布, 机器学习就是不断的学习去让 q(x)
来准确的拟合真实分布
相对熵越小, 表明两个分布越接近, 一个太空蠕虫的例子: https://www.jianshu.com/p/7b7c0777f74d
交叉熵
我们将相对熵变形
前半部分就是 p(x) 的熵, 为一个常量, 后半部分就是我们的交叉熵
进而交叉熵越小, 真实分布于预测分布越发一致, 也就是说效果越好
在我们上一篇文章中, 逻辑回归的损失函数定为
由于逻辑回归是一个伯努利分布, 你会发现 逻辑回归的损失函数, 本质上就是 交叉熵
Be First to Comment