Spec-Zone.ru › TensorFlow

tf.control_dependencies

Обёртка для Graph.control_dependencies() с использованием стандартной графы.

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

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

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

tf.compat.v1.control_dependencies

tf.control_dependencies(
    control_inputs
) -> Graph._ControlDependenciesController

Использование в блокнотах

Используется в учебных пособиях
  • Моделирование Байеса с помощью распределения Joint
  • Исследование TensorFlow Probability: оценка ковариации

См. tf.Graph.control_dependencies для получения дополнительных сведений.

В TensorFlow 2 с жадным и/или Autograph, этот метод, как правило, не нужен, так как операции выполняются в ожидаемом порядке благодаря автоматическим зависимостям управления. Используйте его только для ручного управления порядком, например, как обходное решение известных проблем, таких как tf.function с tf.debugging.assert* и tf.py_function. Например:

@tf.function(
  input_signature=[tf.TensorSpec([None, None], tf.float32),
                   tf.TensorSpec([None, None], tf.float32)])
def my_assert_func_1(x, bias):
  # `tf.function` attempts to execute `tf.math.add` in parallel to
  # `assert_equal`. As a result an error can get raised from `tf.math.add`
  # without triggering the assertion error.
  tf.assert_equal(tf.shape(x)[1],
                  tf.shape(bias)[1],
                  message='bad shape')
  return x + bias
# Error raised in either `add` or `assert`
my_assert_func_1(tf.ones((2, 5)), tf.ones((2, 7)))
Traceback (most recent call last):

InvalidArgumentError: ...
@tf.function(
  input_signature=[tf.TensorSpec([None, None], tf.float32),
                   tf.TensorSpec([None, None], tf.float32)])
def my_assert_func_2(x, bias):
  with tf.control_dependencies(
      [tf.assert_equal(tf.shape(x)[1],
                      tf.shape(bias)[1],
                      message='bad shape')]):
    return x + bias
# Error raised in `assert`
my_assert_func_2(tf.ones((2, 5)), tf.ones((2, 7)))
Traceback (most recent call last):

InvalidArgumentError: ...

При включенном жадном выполнении любой вызываемый объект в списке control_inputs будет вызван.

Аргументы
control_inputs Список объектов Operation или Tensor, которые должны быть выполнены или вычислены перед запуском операций, определённых в контексте. Может также быть None для очистки зависимостей управления. При включенном жадном выполнении любой вызываемый объект в списке control_inputs будет вызван.
Возвращаемое значение
Менеджер контекста, который задаёт зависимости управления для всех операций, созданных в контексте.

© 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/control_dependencies

Spec-Zone.ru

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