torch.autograd.forward_ad.unpack_dual¶
- torch.autograd.forward_ad.unpack_dual(tensor, *, level=None)[source][source]¶
将“双重张量”拆分为获取其张量值及其前向 AD 梯度。
结果是一个 namedtuple
(primal, tangent)
,其中primal
是tensor
的原始视图,tangent
是tensor
的切线,均保持原样。这两个张量都不能是级别level
的对偶张量。此函数是可反向求导的。
示例:
>>> with dual_level(): ... inp = make_dual(x, x_t) ... out = f(inp) ... y, jvp = unpack_dual(out) ... jvp = unpack_dual(out).tangent
请参阅前向模式的 AD 教程,以获取如何使用此 API 的详细步骤。