tf.nn.log_poisson_loss
Вычисляет логарифмическую функцию потерь Пуассона для log_input.
tf.nn.log_poisson_loss(
targets, log_input, compute_full_loss=False, name=None
)
Вычисляет потери логарифмического правдоподобия между предсказанием и целевым значением, предполагая, что целевое значение имеет распределение Пуассона. Обратите внимание: по умолчанию это не точная функция потерь, а функция потерь без постоянного слагаемого [log(z!)]. Это не влияет на оптимизацию, но затрудняет сравнение относительных потерь. Чтобы вычислить приближение логарифма факториала, укажите compute_full_loss=True, чтобы включить приближение Стирлинга.
Для краткости обозначим c = log(x) = log_input, z = targets. Логарифмическая функция потерь Пуассона равна
-log(exp(-x) * (x^z) / z!)
= -log(exp(-x) * (x^z)) + log(z!)
~ -log(exp(-x)) - log(x^z) [+ z * log(z) - z + 0.5 * log(2 * pi * z)]
[ Note the second term is the Stirling's Approximation for log(z!).
It is invariant to x and does not affect optimization, though
important for correct relative loss comparisons. It is only
computed when compute_full_loss == True. ]
= x - z * log(x) [+ z * log(z) - z + 0.5 * log(2 * pi * z)]
= exp(c) - z * c [+ z * log(z) - z + 0.5 * log(2 * pi * z)]
| Аргументы | |
|---|---|
targets | log_input — Tensor того же типа и формы. |
log_input | Tensor типа float32 или float64. |
compute_full_loss | определяет, следует ли вычислять полную функцию потерь. Если значение false, постоянное слагаемое отбрасывается для более эффективной оптимизации. |
name | Имя операции (необязательно). |
| Возвращает | |
|---|---|
log_input — Tensor той же формы с покомпонентными логистическими потерями. |
| Вызывает исключения | |
|---|---|
ValueError | Если log_input и targets имеют разные формы. |
© 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/nn/log_poisson_loss