tf.keras.metrics.BinaryCrossentropy
| Просмотреть исходный код на GitHub |
Вычисляет метрику кроссэнтропии между метками и прогнозами.
Наследуется от: Mean, Metric, Layer, Module
tf.keras.metrics.BinaryCrossentropy(
name='binary_crossentropy', dtype=None, from_logits=False,
label_smoothing=0
)
Это класс метрики кроссэнтропии, который следует использовать, когда существует только две метки классов (0 и 1).
| Аргументы | |
|---|---|
name | (Необязательно) имя строки экземпляра метрики. |
dtype | (Необязательно) тип данных результата метрики. |
from_logits | (Необязательно) ожидается ли, что выход является тензором логарифмов. По умолчанию предполагается, что выход кодирует распределение вероятностей. |
label_smoothing | (Необязательно) число с плавающей точкой в диапазоне [0, 1]. При значении > 0 значения меток сглаживаются, что означает, что уверенность в значениях меток ослаблена. Например, label_smoothing=0.2 означает, что мы будем использовать значение 0.1 для метки 0 и 0.9 для метки 1". |
Использование отдельно:
m = tf.keras.metrics.BinaryCrossentropy() m.update_state([[0, 1], [0, 0]], [[0.6, 0.4], [0.4, 0.6]]) m.result().numpy() 0.81492424
m.reset_states()
m.update_state([[0, 1], [0, 0]], [[0.6, 0.4], [0.4, 0.6]],
sample_weight=[1, 0])
m.result().numpy()
0.9162905
Использование с API compile():
model.compile(
optimizer='sgd',
loss='mse',
metrics=[tf.keras.metrics.BinaryCrossentropy()])
Методы
reset_states
reset_states()
Сбрасывает все переменные состояния метрики.
Эта функция вызывается между эпохами/шагами, когда метрика оценивается во время обучения.
result
result()
Вычисляет и возвращает тензор значения метрики.
Вычисление результата — это идемпотентная операция, которая просто вычисляет значение метрики, используя переменные состояния.
update_state
update_state(
y_true, y_pred, sample_weight=None
)
Накапливает статистику метрики.
y_true и y_pred должны иметь одинаковую форму.
| Аргументы | |
|---|---|
y_true | Значения целевых переменных. Форма = [batch_size, d0, .. dN]. |
y_pred | Предсказанные значения. Форма = [batch_size, d0, .. dN]. |
sample_weight | Необязательный sample_weight выступает в качестве коэффициента для метрики. Если задано скалярное значение, метрика просто масштабируется на заданное значение. Если sample_weight является тензором размера [batch_size], то метрика для каждого образца пакета масштабируется соответствующим элементом в векторе sample_weight. Если форма sample_weight имеет форму [batch_size, d0, .. dN-1], то каждый элемент метрики y_pred масштабируется соответствующим значением sample_weight. (Примечание по dN-1: все функции метрики уменьшают размерность на 1, обычно последнюю ось (-1)). |
| Возвращает | |
|---|---|
| Операция обновления. |
© 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/r2.4/api_docs/python/tf/keras/metrics/BinaryCrossentropy