tf.compat.v1.losses.softmax_cross_entropy
Создаёт функцию потерь кросс-энтропии с использованием tf.nn.softmax_cross_entropy_with_logits_v2.
tf.compat.v1.losses.softmax_cross_entropy(
onehot_labels, logits, weights=1.0, label_smoothing=0, scope=None,
loss_collection=tf.GraphKeys.LOSSES, reduction=Reduction.SUM_BY_NONZERO_WEIGHTS
)
weights выступает в качестве коэффициента для функции потерь. Если предоставлено скалярное значение, функция потерь просто масштабируется на заданное значение. Если weights является тензором формы [batch_size], то веса потерь применяются к каждому соответствующему образцу.
Если label_smoothing не равно нулю, метки сглаживаются в сторону 1/num_classes: new_onehot_labels = onehot_labels * (1 - label_smoothing)
+ label_smoothing / num_classes
Обратите внимание, что onehot_labels и logits должны иметь одинаковую форму, например, [batch_size, num_classes]. Форма weights должна быть совместима с формой loss, которая определяется формой logits. В случае, если форма logits равна [batch_size, num_classes], loss представляет собой Tensor формы [batch_size].
| Аргументы | |
|---|---|
onehot_labels | Метки в формате one-hot кодирования. |
logits | Логиты, вычисленные сетью. |
weights | Необязательные веса, совместимые с формой loss. |
label_smoothing | Значение больше 0 для сглаживания меток. |
scope | область, в которой выполняются операции вычисления функции потерь. |
loss_collection | Коллекция, в которую будет добавлена функция потерь. |
reduction | Тип редукции, применяемой к функции потерь. |
| Возвращаемое значение | |
|---|---|
Функция потерь Tensor того же типа, что и logits. Если reduction является NONE, форма составляет [batch_size]; в противном случае – скаляр. |
| Исключения | |
|---|---|
ValueError | Если форма logits не совпадает с формой onehot_labels, или форма weights недействительна, или weights равно None. Также, если onehot_labels или logits равны None. |
Совместимость с Eager
Аргумент loss_collection игнорируется при выполнении в режиме eager. Взгляните на возвращаемое значение или соберите потери с помощью tf.keras.Model.
© 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.3/api_docs/python/tf/compat/v1/losses/softmax_cross_entropy