Spec-Zone.ru › TensorFlow 1.15

tf.distribute.get_replica_context

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

Возвращает текущий tf.distribute.ReplicaContext или None.

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

Основные псевдонимы

`tf.contrib.distribute.get_replica_context`

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

См. Руководство по миграции для получения дополнительной информации.

tf.compat.v1.distribute.get_replica_context, `tf.compat.v2.distribute.get_replica_context`

tf.distribute.get_replica_context()

Возвращает None при выполнении в межреплицируемом контексте.

Обратите внимание, что выполнение:

  1. начинается в стандартном (однореплицируемом) реплицируемом контексте (эта функция вернет стандартный ReplicaContext объект);
  2. переключается на межреплицируемый контекст (в этом случае эта функция вернёт None), при входе в with tf.distribute.Strategy.scope(): блок;
  3. переключается на (нестандартный) реплицируемый контекст внутри strategy.experimental_run_v2(fn, ...);
  4. если fn вызывает get_replica_context().merge_call(merge_fn, ...), то внутри merge_fn вы возвращаетесь в межреплицируемый контекст (и снова эта функция вернёт None).

Большинство методов tf.distribute.Strategy могут выполняться только в межреплицируемом контексте; в реплицируемом контексте следует использовать API объекта tf.distribute.ReplicaContext, возвращаемого этой функцией.

assert tf.distribute.get_replica_context() is not None  # default
with strategy.scope():
  assert tf.distribute.get_replica_context() is None

  def f():
    replica_context = tf.distribute.get_replica_context()  # for strategy
    assert replica_context is not None
    tf.print("Replica id: ", replica_context.replica_id_in_sync_group,
             " of ", replica_context.num_replicas_in_sync)

  strategy.experimental_run_v2(f)
Возвращает
Текущий объект tf.distribute.ReplicaContext при выполнении в области реплицируемого контекста, иначе None.

В рамках конкретного блока одно из этих двух утверждений будет истинным:

  • get_replica_context() возвращает что-то кроме None, или
  • tf.distribute.is_cross_replica_context() возвращает True.

© 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/r1.15/api_docs/python/tf/distribute/get_replica_context

Spec-Zone.ru

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