Shortcuts

torch.autograd.forward_ad.make_dual

torch.autograd.forward_ad.make_dual(tensor, tangent, *, level=None)[源代码]

将张量值与其切线关联,以创建用于前向AD梯度计算的“对偶张量”。

结果是一个新的张量,别名为 tensor,其中 tangent 作为一个属性嵌入,如果它具有相同的存储布局则保持不变,否则会被复制。 可以通过 unpack_dual() 恢复 tangent 属性。

此函数是可向后微分的。

给定一个函数 f,其雅可比矩阵为 J,它允许计算雅可比矩阵与给定向量 v 的雅可比矩阵-向量乘积(jvp),如下所示。

示例:

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

请参阅前向模式自动微分教程 以了解如何使用此API的详细步骤。

优云智算