tf.math.reduce_logsumexp
| Просмотреть исходный код на GitHub |
Вычисляет log(сумма(exp(элементов по измерениям тензора))).
tf.math.reduce_logsumexp(
input_tensor, axis=None, keepdims=False, name=None
)
Сводит input_tensor по измерениям, указанным в axis. Если keepdims не истинно, ранг тензора уменьшается на 1 для каждой из записей в axis, которые должны быть уникальными. Если keepdims истинно, уменьшенные измерения сохраняются с длиной 1.
Если у axis нет записей, все измерения сводятся, и возвращается тензор с одним элементом.
Эта функция более устойчива к числовым ошибкам, чем log(сумма(exp(вход))). Она предотвращает переполнения, вызванные взятием exp от больших входных данных, и недополнения, вызванные взятием log от малых входных данных.
Например:
x = tf.constant([[0., 0., 0.], [0., 0., 0.]]) tf.reduce_logsumexp(x) # log(6) tf.reduce_logsumexp(x, 0) # [log(2), log(2), log(2)] tf.reduce_logsumexp(x, 1) # [log(3), log(3)] tf.reduce_logsumexp(x, 1, keepdims=True) # [[log(3)], [log(3)]] tf.reduce_logsumexp(x, [0, 1]) # log(6)
| Аргументы | |
|---|---|
input_tensor | Тензор для сведения. Должен иметь числовой тип. |
axis | Измерения для сведения. Если None (по умолчанию), сводит все измерения. Должно быть в диапазоне [-rank(input_tensor), rank(input_tensor)). |
keepdims | Если истинно, сохраняет уменьшенные измерения с длиной 1. |
name | Имя операции (необязательно). |
| Возвращаемое значение | |
|---|---|
| Сведённый тензор. |
© 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/math/reduce_logsumexp