Spec-Zone.ru › PyTorch 2.14

dual_level

class torch.autograd.forward_ad.dual_level [исходный код]

Менеджер контекста для прямого автоматического дифференцирования (AD), вычисления которого должны выполняться в контексте dual_level.

Примечание

Контекст dual_level корректно входит в уровень двойственных чисел и выходит из него, управляя текущим уровнем прямого AD, который по умолчанию используется другими функциями этого API.

В настоящее время мы не планируем поддерживать вложенные контексты dual_level, поэтому поддерживается только один уровень прямого AD. Чтобы вычислить градиенты прямого AD более высокого порядка, можно использовать torch.func.jvp().

Пример:

>>> x = torch.tensor([1])
>>> x_t = torch.tensor([1])
>>> with dual_level():
...     inp = make_dual(x, x_t)
...     # Do computations with inp
...     out = your_fn(inp)
...     _, grad = unpack_dual(out)
>>> grad is None
False
>>> # After exiting the level, the grad is deleted
>>> _, grad_after = unpack_dual(out)
>>> grad is None
True

Подробные инструкции по использованию этого API см. в учебном руководстве по прямому режиму AD.

© 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.dual_level.html

Spec-Zone.ru

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