torch.autograd.forward_ad.make_dual
-
torch.autograd.forward_ad.make_dual(tensor, tangent, *, level=None)[исходный код] -
Связывает значение тензора с его касательной, чтобы создать «двойной тензор» для вычисления градиента с помощью прямого автоматического дифференцирования.
Результатом является новый тензор, имеющий общие данные с
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)
Подробные инструкции по использованию этого API см. в руководстве по прямому автоматическому дифференцированию.
© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.autograd.forward_ad.make_dual.html