Spec-Zone.ru › TensorFlow 2.9

tf.grad_pass_through

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

Создаёт операцию grad-pass-through с поведением вперёд, заданным в f.

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

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

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

tf.compat.v1.grad_pass_through

tf.grad_pass_through(
    f
)

Используйте эту функцию для обертывания любой операции, сохраняя её поведение в прямом проходе, но заменяя исходную операцию в обратном графе тождественной операцией. Например:

x = tf.Variable(1.0, name="x")
z = tf.Variable(3.0, name="z")

with tf.GradientTape() as tape:
  # y will evaluate to 9.0
  y = tf.grad_pass_through(x.assign)(z**2)
# grads will evaluate to 6.0
grads = tape.gradient(y, z)

Другой пример — «дифференцируемое» приближение скользящего среднего, где градиенты разрешается передавать в последнее значение, поданное на скользящее среднее, но скользящее среднее всё ещё используется для прямого прохода:

x = ... # Some scalar value
# A moving average object, we don't need to know how this is implemented
moving_average = MovingAverage()
with backprop.GradientTape() as tape:
  # mavg_x will evaluate to the current running average value
  mavg_x = tf.grad_pass_through(moving_average)(x)
grads = tape.gradient(mavg_x, x) # grads will evaluate to 1.0
Аргументы
f функция f(*x) , которая возвращает Tensor или вложенную структуру Tensor выходов.
Возвращает
Функция h(x) , которая возвращает те же значения, что и f(x), и чьи градиенты такие же, как у тождественной функции.

© 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/versions/r2.9/api_docs/python/tf/grad_pass_through

Spec-Zone.ru

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