tf.keras.losses.KLDivergence
Вычисляет потерю расхождения Кульбака-Лейблера между y_true и y_pred.
Наследуется от: Loss
tf.keras.losses.KLDivergence(
reduction='sum_over_batch_size', name='kl_divergence'
)
Формула:
loss = y_true * log(y_true / y_pred)
y_true и y_pred ожидаются как вероятностные распределения, со значениями от 0 до 1. Они будут усечены до диапазона [0, 1].
| Аргументы | |
|---|---|
reduction | Тип редукции, применяемый к потере. В почти всех случаях это должно быть "sum_over_batch_size". Поддерживаемые варианты — "sum", "sum_over_batch_size" или None. |
name | Необязательное имя экземпляра потери. |
Методы
call
call(
y_true, y_pred
)
from_config
@classmethod
from_config(
config
)
get_config
get_config()
__call__
__call__(
y_true, y_pred, sample_weight=None
)
Вызов self как функции.
© 2022 The TensorFlow Authors. All rights reserved.
Licensed under the Creative Commons Attribution License 4.0.
Code samples licensed under the Apache 2.0 License.
https://www.tensorflow.org/api_docs/python/tf/keras/losses/KLDivergence