小编der*_*eks的帖子

如何手工计算分类交叉熵?

当我手动计算二元交叉熵时,我应用 sigmoid 来获得概率,然后使用交叉熵公式并表示结果:

logits = tf.constant([-1, -1, 0, 1, 2.])
labels = tf.constant([0, 0, 1, 1, 1.])

probs = tf.nn.sigmoid(logits)
loss = labels * (-tf.math.log(probs)) + (1 - labels) * (-tf.math.log(1 - probs))
print(tf.reduce_mean(loss).numpy()) # 0.35197204

cross_entropy = tf.keras.losses.BinaryCrossentropy(from_logits=True)
loss = cross_entropy(labels, logits)
print(loss.numpy()) # 0.35197204
Run Code Online (Sandbox Code Playgroud)

如何计算范畴交叉熵的时候logitslabels有不同的大小?

logits = tf.constant([-1, -1, 0, 1, 2.])
labels = tf.constant([0, 0, 1, 1, 1.])

probs = tf.nn.sigmoid(logits)
loss = labels * (-tf.math.log(probs)) + (1 - labels) * (-tf.math.log(1 - …
Run Code Online (Sandbox Code Playgroud)

python artificial-intelligence tensorflow

2
推荐指数
1
解决办法
5270
查看次数