大家好啊,我是董董灿。
今天看一个在深度学习中很枯燥但很重要的概念——交叉熵损失函数。
作为一种损失函数,它的重要作用便是可以将“预测值”和“真实值(标签)”进行对比,从而输出 loss 值,直到 loss 值收敛,可以认为神经网络模型训练完成。
那么这个所谓的“交叉熵”到底是什么,为什么它可以用来作为损失函数呢?
1、熵与交叉熵
“交叉熵”包含了“交叉”和“熵”这两部分。
关于“熵”的描述在理解熵的本质一文中有更详细的说明。总的来说,熵可以用来衡量一个随机变量的不确定性,数学上可表示为:
H(i) = - ∑ P(i) * log(P(i))
对于上面的公式,我们稍微变一下形,将负号和 log(P(i)) 看做一个变量,得到:
PP(i) = -log(p(i))
那么熵的公式就可以写作:
H(i) = ∑ P(i) * PP(i)
此时熵的公式中,P(i) 和 PP(i) 是服从相同的概率分布。因此,熵H(i)就变成了事件 PP(i) 发生的数学期望,通俗理解为均值。
熵越大,表示事件发生的不确定性越大。
而交叉熵是用于比较两个概率分布之间的差异,对于两个概率分布 P 和 Q 而言,

最低0.47元/天 解锁文章
3785

被折叠的 条评论
为什么被折叠?



