tf.compat.v1.losses.huber_loss
Добавляет член функции потерь Хубера к процедуре обучения.
tf.compat.v1.losses.huber_loss(
labels,
predictions,
weights=1.0,
delta=1.0,
scope=None,
loss_collection=ops.GraphKeys.LOSSES,
reduction=Reduction.SUM_BY_NONZERO_WEIGHTS
)
Для каждого значения x в error=labels-predictions рассчитывается следующее:
0.5 * x^2 if |x| <= d 0.5 * d^2 + d * (|x| - d) if |x| > d
где d — delta.
weights выступает в качестве коэффициента для функции потерь. Если предоставлено скалярное значение, то функция потерь просто масштабируется на заданное значение. Если weights представляет собой тензор размера [batch_size], то общая функция потерь для каждого образца в пакете масштабируется соответствующим элементом в векторе weights. Если форма weights соответствует форме predictions, то функция потерь каждого измеримого элемента predictions масштабируется соответствующим значением из weights.
| Аргументы | |
|---|---|
labels | Тензор с истинными значениями вывода, имеющий те же размеры, что и 'predictions'. |
predictions | Предсказанные значения вывода. |
weights | Необязательный Tensor, ранг которого равен 0 или соответствует рангу labels, и он должен быть совместим с labels (т.е., все измерения должны быть либо 1, либо совпадать с соответствующим измерением losses). |
delta | float, точка, в которой функция потерь Хубера меняет свой вид с квадратичного на линейный. |
scope | Область действия операций, выполняемых при вычислении функции потерь. |
loss_collection | Коллекция, в которую будет добавлена функция потерь. |
reduction | Тип операции агрегации для функции потерь. |
| Возвращаемое значение | |
|---|---|
Весовая функция потерь типа float Tensor. Если reduction является NONE, то она имеет ту же форму, что и labels; в противном случае — это скаляр. |
| Исключения | |
|---|---|
ValueError | Если форма predictions не соответствует форме labels, или если форма weights неверна. Также, если labels или predictions имеют значение None. |
совместимость с eager execution
Аргумент loss_collection игнорируется при выполнении eager-вычислений. Рассмотрите возможность сохранения возвращаемого значения или сбора потерь через tf.keras.Model.
© 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/compat/v1/losses/huber_loss