tf.keras.losses.KLD

TensorFlow 1 version View source on GitHub

Computes Kullback-Leibler divergence loss between y_true and y_pred.

loss = y_true * log(y_true / y_pred)

See: https://en.wikipedia.org/wiki/Kullback%E2%80%93Leibler_divergence

Usage:

loss = tf.keras.losses.KLD([.4, .9, .2], [.5, .8, .12])
print('Loss: ', loss.numpy())  # Loss: 0.11891246

y_true Tensor of true targets.
y_pred Tensor of predicted targets.

A Tensor with loss.

TypeError If y_true cannot be cast to the y_pred.dtype.