torch.autograd.Function.backward
-
static Function.backward(ctx, *grad_outputs) -
Определяет формулу для дифференцирования операции с обратным режимом автоматического дифференцирования (псевдоним для функции vjp).
Эта функция должна быть переопределена всеми подклассами.
Она должна принимать контекст
ctxв качестве первого аргумента, а затем столько же выходных данных, сколько возвращаетforward()(для не-тензорных выходных данных функции forward будет передано None), и она должна вернуть столько же тензоров, сколько было входных данных дляforward(). Каждый аргумент — это градиент по отношению к соответствующему выходному значению, а каждое возвращаемое значение — градиент по отношению к соответствующему входному значению. Если вход не является тензором или является тензором, не требующим градиентов, вы можете просто передать None в качестве градиента для этого входа.Контекст может использоваться для извлечения тензоров, сохранённых во время прямого прохода. Он также имеет атрибут
ctx.needs_input_gradв виде кортежа булевых значений, представляющих, требуется ли градиент для каждого входного значения. Например,backward()будет иметьctx.needs_input_grad[0] = True, если первый входforward()нуждается в вычислении градиента по отношению к выходу.- Return type
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.autograd.Function.backward.html