库:Keras,后端:Tensorflow
我正在训练单个类/二进制分类问题,其中我的最后一层具有单个节点,且激活了S形。我正在用二进制交叉熵损失来编译模型。当我运行代码来训练模型时,我注意到损失的值大于1。这是正确的,还是我在某个地方出错了?我已经检查了标签。它们都是0和1。
二进制交叉熵损失是否可能大于1?
Kerasbinary_crossentropy
首先将您的预测概率转换为对数。然后,它用于tf.nn.sigmoid_cross_entropy_with_logits
计算交叉熵,并向您返回平均值。从数学上讲,如果您的标签为1并且预测的概率较低(如0.1),则交叉熵可以大于1,如losses.binary_crossentropy(tf.constant([1.]), tf.constant([0.1]))
。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句