tf.AggregationMethod
Класс, перечисляющий методы агрегирования, используемые для объединения градиентов.
Вычисление частных производных может потребовать агрегирования вкладов градиентов. В этом классе перечислены различные методы, которые можно использовать для объединения градиентов в графе.
Следующие методы агрегирования входят в стабильный API для агрегирования градиентов:
-
ADD_N: Все слагаемые градиента суммируются в рамках одной операции с использованием операции "AddN" (см.tf.add_n). Особенность этого метода заключается в том, что все градиенты должны быть готовы и отдельно сохранены в памяти до выполнения агрегирования. -
DEFAULT: Метод агрегирования, выбранный системой по умолчанию.
Следующие методы агрегирования являются экспериментальными и могут не поддерживаться в будущих выпусках:
-
EXPERIMENTAL_TREE: Слагаемые градиента суммируются попарно с использованием операции "AddN". Этот метод суммирования градиентов может снизить производительность, но повысить эффективность использования памяти, поскольку градиенты можно освобождать раньше. -
EXPERIMENTAL_ACCUMULATE_N: То же, что иEXPERIMENTAL_TREE.
Пример использования при вычислении градиента:
@tf.function
def example():
x = tf.constant(1.0)
y = x * 2.0
z = y + y + y + y
return tf.gradients(z, [x, y],
aggregation_method=tf.AggregationMethod.EXPERIMENTAL_ACCUMULATE_N)
example()
[<tf.Tensor: shape=(), dtype=float32, numpy=8.0>,
<tf.Tensor: shape=(), dtype=float32, numpy=4.0>]| Переменные класса | |
|---|---|
| ADD_N | 0 |
| DEFAULT | 0 |
| EXPERIMENTAL_ACCUMULATE_N | 2 |
| EXPERIMENTAL_TREE | 1 |
© 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/AggregationMethod