设置梯度启用状态
- classtorch.autograd.grad_mode.set_grad_enabled(mode)[源代码]
-
一个用于控制梯度计算开关的上下文管理器。
set_grad_enabled
根据参数mode
来启用或禁用梯度计算。它既可以作为上下文管理器使用,也可以直接作为函数调用。这个上下文管理器是线程局部的,不会影响其他线程中的计算。
- 参数
-
mode (bool) – 用于标志是否启用(
True
)或禁用(False
)梯度。这可以用来有条件地控制梯度的开启。
注意
set_grad_enabled 是用于局部启用或禁用梯度的几种机制之一。有关这些机制的详细信息,请参阅局部禁用梯度计算。
注意
此 API 不适用于 前向模式自动微分。
- 示例:
-
>>> x = torch.tensor([1.], requires_grad=True) >>> is_train = False >>> with torch.set_grad_enabled(is_train): ... y = x * 2 >>> y.requires_grad False >>> _ = torch.set_grad_enabled(True) >>> y = x * 2 >>> y.requires_grad True >>> _ = torch.set_grad_enabled(False) >>> y = x * 2 >>> y.requires_grad False
- clone()[源代码]
-
创建这个类的副本
- 返回类型