Spec-Zone.ru › TensorFlow 1.15

tf.keras.metrics.BinaryCrossentropy

Просмотреть исходный код на GitHub

Вычисляет метрику кроссэнтропии между метками и прогнозами.

Просмотреть псевдонимы

Псевдонимы для миграции

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.keras.metrics.BinaryCrossentropy, `tf.compat.v2.keras.metrics.BinaryCrossentropy`, `tf.compat.v2.metrics.BinaryCrossentropy`

tf.keras.metrics.BinaryCrossentropy(
    name='binary_crossentropy', dtype=None, from_logits=False, label_smoothing=0
)

Это класс метрики кроссэнтропии, который используется, когда существуют только две метки классов (0 и 1).

Использование:

m = tf.keras.metrics.BinaryCrossentropy()
m.update_state([1., 0., 1., 0.], [1., 1., 1., 0.])

# EPSILON = 1e-7, y = y_true, y` = y_pred, Y_MAX = 0.9999999
# y` = clip_ops.clip_by_value(output, EPSILON, 1. - EPSILON)
# y` = [Y_MAX, Y_MAX, Y_MAX, EPSILON]

# Metric = -(y log(y` + EPSILON) + (1 - y) log(1 - y` + EPSILON))
#        = [-log(Y_MAX + EPSILON), -log(1 - Y_MAX + EPSILON),
#           -log(Y_MAX + EPSILON), -log(1)]
#        = [(0 + 15.33) / 2, (0 + 0) / 2]
# Reduced metric = 7.665 / 2

print('Final result: ', m.result().numpy())  # Final result: 3.833

Использование с API tf.keras:

model = tf.keras.Model(inputs, outputs)
model.compile(
    'sgd',
    loss='mse',
    metrics=[tf.keras.metrics.BinaryCrossentropy()])
Аргументы
name (Необязательно) строковое имя экземпляра метрики.
dtype (Необязательно) тип данных результата метрики.
from_logits (Необязательно) ожидается ли, что вывод будет тензором logits. По умолчанию считается, что вывод кодирует распределение вероятностей.
label_smoothing (Необязательно) число с плавающей точкой в диапазоне [0, 1]. При значении > 0 значения меток сглаживаются, что означает ослабление уверенности в значениях меток. Например, label_smoothing=0.2 означает, что мы будем использовать значение 0.1 для метки 0 и 0.9 для метки 1"

Методы

reset_states

Просмотреть исходный код

reset_states()

Сбрасывает все переменные состояния метрики.

Эта функция вызывается между эпохами/шагами, когда метрика оценивается во время обучения.

result

Просмотреть исходный код

result()

Вычисляет и возвращает тензор значения метрики.

Вычисление результата — это идемпотентная операция, которая просто вычисляет значение метрики, используя переменные состояния.

update_state

Просмотреть исходный код

update_state(
    y_true, y_pred, sample_weight=None
)

Накапливает статистику метрики.

y_true и y_pred должны иметь одинаковую форму.

Аргументы
y_true Значения фактических данных.
y_pred Значения прогнозируемых данных.
sample_weight Необязательное взвешивание каждого примера. По умолчанию равно 1. Может быть Tensor, ранг которого равен 0 или совпадает с рангом y_true, и должен быть транслируемым для y_true.
Возвращаемое значение
Операция обновления.

© 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/r1.15/api_docs/python/tf/keras/metrics/BinaryCrossentropy

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API