分类目录:《深入浅出Pytorch函数》总目录
相关文章:
· 深入浅出Pytorch函数------torch.Tensor
计算当前张量相对于图的梯度,该函数使用链式法则对图进行微分。如果张量不是一个标量(即其数据具有多个元素)并且需要梯度,则函数还需要指定梯度。它应该是一个匹配类型和位置的张量,包含微分函数的梯度。此函数在累积了图中各叶子结点的梯度,在调用它之前,您可能需要使用zero.grad
清零属性或将其设置为None
。
语法
dart
Tensor.backward(gradient=None, retain_graph=None, create_graph=False, inputs=None)
参数
- gradient:[
Tensor
/None
] 相对张量的梯度。如果它是张量,它将自动转换为不需要grad
的张量,除非create_graph
为True
。对于标量或不需要梯度的张量应指定为None
。 retain_graph
:[可选,bool
] 如果为False
,则用于计算梯度的图将被释放。请注意,在几乎所有情况下,都不需要将此选项设置为True
,而且通常可以以更有效的方式解决。默认为create_graph
的值。create_graph
:[可选,bool
] 如果为True
,将构建导数的图,从而可以计算更高阶的导数乘积,默认值为False
。inputs
:[List[Tensor]
] 输入张量的梯度将累积为.grad
。所有其他张量都将被忽略。如果没有提供,梯度将累积到用于计算的所有叶张量中。