Spec-Zone.ru › TensorFlow

tf.distribute.ReductionToOneDevice

Реализация CrossDeviceOps, которая копирует значения на один узел для уменьшения.

Наследуется от: CrossDeviceOps

Просмотр псевдонимов

Псевдонимы совместимости для миграции

Дополнительные сведения см. в руководстве по миграции.

tf.compat.v1.distribute.ReductionToOneDevice

tf.distribute.ReductionToOneDevice(
    reduce_to_device=None, accumulation_fn=None
)

Эта реализация всегда копирует значения на один узел, чтобы уменьшить их, а затем транслирует уменьшенные значения в места назначения. Она не поддерживает эффективную пакетную обработку.

Вот как вы можете использовать ReductionToOneDevice в tf.distribute.MirroredStrategy:

strategy = tf.distribute.MirroredStrategy(
  cross_device_ops=tf.distribute.ReductionToOneDevice())
Аргументы
reduce_to_device промежуточный узел для уменьшения. Если None, уменьшение выполняется на первом узле в destinations метода reduce.
accumulation_fn функция аккумулирования. Если None, используется tf.math.add_n.

Методы

batch_reduce

Просмотреть исходный код

batch_reduce(
    reduce_op, value_destination_pairs, options=None
)

Уменьшение значений в пунктах назначения в пакетах.

См. tf.distribute.StrategyExtended.batch_reduce_to. Это можно вызвать только в контексте кросс-реплики.

Аргументы
reduce_op tf.distribute.ReduceOp, определяющий, как комбинировать значения.
value_destination_pairs последовательность пар (значение, пункты назначения). См. tf.distribute.CrossDeviceOps.reduce для описаний.
options tf.distribute.experimental.CommunicationOptions. См. tf.distribute.experimental.CommunicationOptions для подробностей.
Возвращает
Список tf.Tensor или tf.distribute.DistributedValues, по одной для каждой пары в value_destination_pairs.
Исключения
ValueError если value_destination_pairs не является итерируемым списком кортежей из tf.distribute.DistributedValues и пунктов назначения.

broadcast

Просмотреть исходный код

broadcast(
    tensor, destinations
)

Трансляция tensor в destinations.

Это можно вызвать только в контексте кросс-реплики.

Аргументы
tensor объект типа tf.Tensor. Значение для трансляции.
destinations tf.distribute.DistributedValues, tf.Variable, tf.Tensor или строка узла. Указывает узлы для трансляции. Обратите внимание, что если это tf.Variable, значение транслируется на узлы этой переменной; этот метод не обновляет переменную.
Возвращает
tf.Tensor или tf.distribute.DistributedValues.

reduce

Просмотреть исходный код

reduce(
    reduce_op, per_replica_value, destinations, options=None
)

Уменьшение per_replica_value до destinations.

См. tf.distribute.StrategyExtended.reduce_to. Это можно вызвать только в контексте кросс-реплики.

Аргументы
reduce_op tf.distribute.ReduceOp, определяющий, как комбинировать значения.
per_replica_value tf.distribute.DistributedValues или объект типа tf.Tensor.
destinations tf.distribute.DistributedValues, tf.Variable, tf.Tensor или строка узла. Указывает узлы для уменьшения. Чтобы выполнить all-reduce, передайте одинаковые значения в value и destinations. Обратите внимание, что если это tf.Variable, значение уменьшается до узлов этой переменной, и этот метод не обновляет переменную.
options tf.distribute.experimental.CommunicationOptions. См. tf.distribute.experimental.CommunicationOptions для подробностей.
Возвращает
tf.Tensor или tf.distribute.DistributedValues.
Исключения
ValueError если per_replica_value нельзя преобразовать в tf.distribute.DistributedValues или если destinations не является строкой, tf.Variable или tf.distribute.DistributedValues.

© 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/distribute/ReductionToOneDevice

Spec-Zone.ru

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