Spec-Zone.ru › PyTorch 1

torch.autograd.forward_ad.make_dual

torch.autograd.forward_ad.make_dual(tensor, tangent, *, level=None) [source]

Связывает значение тензора с градиентом по направлению вперёд, касательной, для создания «дуального тензора», который используется для вычисления градиентов вперёд AD. Результатом является новый тензор, связанный с tensor и имеющим tangent встроенным в качестве атрибута, если у них одинаковая структура хранения, или скопированным в противном случае. Атрибут касательной можно восстановить с помощью unpack_dual().

Эта функция обратимо дифференцируема.

Дана функция f, у которой якобиан J, она позволяет вычислить произведение якобиана на вектор (jvp) между J и заданным вектором v следующим образом.

Пример:

>>> with dual_level():
...   inp = make_dual(x, v)
...   out = f(inp)
...   y, jvp = unpack_dual(out)

Обратитесь к руководству по AD вперёд за подробными шагами по использованию этого API.

© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/1.13/generated/torch.autograd.forward_ad.make_dual.html

Spec-Zone.ru

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