РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
391 of 824 menu

Класс BinaryCrossentropy

Класс BinaryCrossentropy вычисляет функцию потерь бинарной кросс-энтропии между метками и предсказаниями. Используется в задачах бинарной классификации, где выход модели лежит в диапазоне от 0 до 1. Первым параметром передается флаг from_logits, вторым - коэффициент сглаживания меток label_smoothing, третьим - ось вычисления axis. Класс наследуется от Loss и поддерживает вызов с тензорами y_true и y_pred.

Синтаксис

tf.keras.losses.BinaryCrossentropy( from_logits=False, label_smoothing=0.0, axis=-1, reduction='sum_over_batch_size', name='binary_crossentropy' )

Пример

Давайте создадим объект функции потерь и вычислим значение для истинных меток 1, 0, 1 и предсказаний 0.9, 0.1, 0.8:

import tensorflow as tf bce = tf.keras.losses.BinaryCrossentropy() y_true = tf.constant([1, 0, 1]) y_pred = tf.constant([0.9, 0.1, 0.8]) res = bce(y_true, y_pred) print(res)

Результат выполнения кода:

tf.Tensor(0.14463937, shape=(), dtype=float32)

Пример

Давайте вычислим потери, когда модель возвращает логиты без применения сигмоиды, установив параметр from_logits в True:

import tensorflow as tf bce = tf.keras.losses.BinaryCrossentropy(from_logits=True) y_true = tf.constant([1, 0, 1]) y_pred = tf.constant([2.0, -1.0, 1.5]) res = bce(y_true, y_pred) print(res)

Результат выполнения кода:

tf.Tensor(0.18572532, shape=(), dtype=float32)

Пример

Давайте применим сглаживание меток с помощью параметра label_smoothing:

import tensorflow as tf bce = tf.keras.losses.BinaryCrossentropy(label_smoothing=0.1) y_true = tf.constant([1, 0, 1]) y_pred = tf.constant([0.9, 0.1, 0.8]) res = bce(y_true, y_pred) print(res)

Результат выполнения кода:

tf.Tensor(0.28534335, shape=(), dtype=float32)

Смотрите также

  • класс CategoricalCrossentropy,
    который вычисляет категориальную кросс-энтропию
  • класс SparseCategoricalCrossentropy,
    который вычисляет разреженную категориальную кросс-энтропию
  • класс BinaryFocalCrossentropy,
    который вычисляет бинарную фокальную кросс-энтропию
  • функцию sigmoid,
    которая применяет сигмоиду к логитам
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить