Spec-Zone.ru › TensorFlow

tf.compat.v1.VariableAggregation

Указывает, как будет агрегирована распределённая переменная.

tf.distribute.Strategy распределяет модель, создавая несколько копий (называемых «репликами»), действующих на разных элементах входной пакетной обработки в модели с параллельной обработкой данных. При выполнении некоторых операций обновления переменных, например var.assign_add(x), в модели необходимо определить, как комбинировать разные значения для x, вычисленные в разных репликах.

  • NONE: Это значение по умолчанию, которое выдаёт ошибку, если вы используете операцию обновления переменной с несколькими репликами.
  • SUM: Добавить обновления по всем репликам.
  • MEAN: Взять среднее арифметическое ("среднее") обновлений по всем репликам.
  • ONLY_FIRST_REPLICA: Используется, когда каждая реплика выполняет одно и то же обновление, но мы хотим выполнить обновление только один раз. Используется, например, для счётчика глобального шага.

Например:

strategy = tf.distribute.MirroredStrategy(["GPU:0", "GPU:1"])
with strategy.scope():
  v = tf.Variable(5.0, aggregation=tf.VariableAggregation.MEAN)
@tf.function
def update_fn():
  return v.assign_add(1.0)
strategy.run(update_fn)
PerReplica:{
  0: <tf.Tensor: shape=(), dtype=float32, numpy=6.0>,
  1: <tf.Tensor: shape=(), dtype=float32, numpy=6.0>
}
  • ONLY_FIRST_TOWER: Устаревшее псевдоним для ONLY_FIRST_REPLICA.
Переменные класса
MEAN <VariableAggregation.MEAN: 2>
NONE <VariableAggregation.NONE: 0>
ONLY_FIRST_REPLICA <VariableAggregation.ONLY_FIRST_REPLICA: 3>
SUM <VariableAggregation.SUM: 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/compat/v1/VariableAggregation

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API