评价此页

torch.autograd.forward_ad.unpack_dual#

torch.autograd.forward_ad.unpack_dual(tensor, *, level=None)[source]#

解包一个“双元张量”以获取其 Tensor 值及其前向 AD 梯度。

结果是一个命名元组 (primal, tangent),其中 primaltensor 的 primal 的视图,而 tangenttensor 的 tangent 本身。这些张量都不是 level 级别的双元张量。

此函数是向后可微的。

示例

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

有关如何使用此 API 的详细步骤,请参阅前向模式 AD 教程