TensorFlow tf.keras.losses.CategoricalCrossentropy

用于多分类问题,传入的是one-hot编码目标,如果是int类型的编码目标,使用SparseCategoricalCrossentropy

下面这个例子中y_predy_true的形状是[batch_size, num_class],既每次输入batch_size是3,就是3个样本同时输入,分类数量是3,既one-hot编码是3个分类.

cce = tf.keras.losses.CategoricalCrossentropy()
loss = cce(
  [[1., 0., 0.], [0., 1., 0.], [0., 0., 1.]],
  [[.9, .05, .05], [.5, .89, .6], [.05, .01, .94]])
print('Loss: ', loss.numpy())  # Loss: 0.3239

init

__init__(
    from_logits=False,
    label_smoothing=0,
    reduction=losses_utils.ReductionV2.AUTO,
    name='categorical_crossentropy'
)
参数 描述
from_logits
label_smoothing=0
reduction
name

call

__call__(
    y_true,
    y_pred,
    sample_weight=None
)
参数 描述
y_true
y_pred
sample_weight

参考:
官网

你可能感兴趣的:(tensorflow,TensorFlow)