torch.autograd.forward_ad.unpack_dual#
- torch.autograd.forward_ad.unpack_dual(tensor, *, level=None)[源代码]#
解包一个“双重张量”以同时获取其张量值和前向 AD 梯度。
结果是一个命名元组
(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
有关如何使用此 API 的详细步骤,请参阅前向模式 AD 教程。