View source on GitHub |
Computes the categorical hinge loss between y_true
and y_pred
.
tf.keras.losses.categorical_hinge( y_true, y_pred )
loss = maximum(neg - pos + 1, 0)
where neg=maximum((1-y_true)*y_pred) and pos=sum(y_true*y_pred)
y_true = np.random.randint(0, 3, size=(2,)) y_true = tf.keras.utils.to_categorical(y_true, num_classes=3) y_pred = np.random.random(size=(2, 3)) loss = tf.keras.losses.categorical_hinge(y_true, y_pred) assert loss.shape == (2,) pos = np.sum(y_true * y_pred, axis=-1) neg = np.amax((1. - y_true) * y_pred, axis=-1) assert np.array_equal(loss.numpy(), np.maximum(0., neg - pos + 1.))
Args | |
---|---|
y_true | The ground truth values. y_true values are expected to be 0 or 1. |
y_pred | The predicted values. |
Returns | |
---|---|
Categorical hinge loss values. |
© 2020 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 3.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/versions/r2.3/api_docs/python/tf/keras/losses/categorical_hinge