tf.keras.losses.cosine_similarity | TensorFlow v2.16.1 (original) (raw)
tf.keras.losses.cosine_similarity
Stay organized with collections Save and categorize content based on your preferences.
Computes the cosine similarity between labels and predictions.
tf.keras.losses.cosine_similarity(
y_true, y_pred, axis=-1
)
Formula:
loss = -sum(l2_norm(y_true) * l2_norm(y_pred))
Note that it is a number between -1 and 1. When it is a negative number between -1 and 0, 0 indicates orthogonality and values closer to -1 indicate greater similarity. This makes it usable as a loss function in a setting where you try to maximize the proximity between predictions and targets. If either y_true
or y_pred
is a zero vector, cosine similarity will be 0 regardless of the proximity between predictions and targets.
Args | |
---|---|
y_true | Tensor of true targets. |
y_pred | Tensor of predicted targets. |
axis | Axis along which to determine similarity. Defaults to -1. |
Returns |
---|
Cosine similarity tensor. |
Example:
y_true = [[0., 1.], [1., 1.], [1., 1.]]
y_pred = [[1., 0.], [1., 1.], [-1., -1.]]
loss = keras.losses.cosine_similarity(y_true, y_pred, axis=-1)
[-0., -0.99999994, 0.99999994]
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates. Some content is licensed under the numpy license.
Last updated 2024-06-07 UTC.