【问题标题】:PyTorch `torch.no_grad` vs `torch.inference_mode`PyTorch `torch.no_grad` 与 `pytorch.inference 模式`
【发布时间】:2021-12-01 05:58:54
【问题描述】:

从 v1.9 开始,PyTorch 具有 torch.inference_mode 的新功能,即“analogous to torch.no_grad...在此模式下运行的代码通过禁用视图跟踪和版本计数器碰撞获得更好的性能。”

如果我只是在测试时评估我的模型(即不训练),是否存在torch.no_gradtorch.inference_mode 更可取的情况?我计划用后者替换前者的每个实例,并且我希望使用运行时错误作为护栏(即,我相信任何问题都会显示为运行时错误,如果它没有作为运行时错误出现,那么我认为使用torch.inference_mode 确实更可取。

the PyTorch Developer Podcast 中提到了有关为什么开发推理模式的更多详细信息。

【问题讨论】:

    标签: machine-learning pytorch artificial-intelligence gradient-descent inference


    【解决方案1】:

    是的,在推理模式不会引发运行时错误的所有情况下,torch.inference_modeindeed preferabletorch.no_grad

    【讨论】:

      猜你喜欢
      • 2020-12-26
      • 2019-09-01
      • 2020-07-03
      • 2021-05-01
      • 1970-01-01
      • 2021-12-09
      • 2018-07-07
      • 2020-10-05
      • 2021-08-28
      相关资源
      最近更新 更多