快捷方式

inference_mode

class torch.autograd.grad_mode.inference_mode(mode=True)[source][source]

启用或禁用推理模式的上下文管理器。

InferenceMode 是一个类似于 no_grad 的上下文管理器,当您确定您的操作不会与 autograd 交互时(例如,模型训练)可以使用它。在此模式下运行的代码通过禁用视图跟踪和版本计数器递增来获得更好的性能。请注意,与某些其他本地启用或禁用 grad 的机制不同,进入 inference_mode 也会禁用前向模式 AD。

此上下文管理器是线程本地的;它不会影响其他线程中的计算。

也可用作装饰器。

注意

推理模式是几种可以本地启用或禁用梯度的机制之一,有关它们之间比较的更多信息,请参阅本地禁用梯度计算

参数

mode (boolfunction) – 一个布尔标志,用于启用或禁用推理模式,或一个 Python 函数,用于使用启用的推理模式进行装饰

示例:
>>> import torch
>>> x = torch.ones(1, 2, 3, requires_grad=True)
>>> with torch.inference_mode():
...     y = x * x
>>> y.requires_grad
False
>>> y._version
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
RuntimeError: Inference tensors do not track version counter.
>>> @torch.inference_mode()
... def func(x):
...     return x * x
>>> out = func(x)
>>> out.requires_grad
False
>>> @torch.inference_mode()
... def doubler(x):
...     return x * 2
>>> out = doubler(x)
>>> out.requires_grad
False
clone()[source][source]

创建此类的副本

返回类型

inference_mode

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取面向初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得您的问题解答

查看资源