python - 从 torch.autograd.gradcheck 中删除 zero_gradients
问题描述
我想在这里复制代码,在 Google Colab 中运行时出现以下错误?
ImportError:无法从“torch.autograd.gradcheck”(/usr/local/lib/python3.7/dist-packages/torch/autograd/gradcheck.py)导入名称“zero_gradients”
有人可以帮我解决这个问题吗?
解决方案
这似乎使用的是非常旧版本的 PyTorch,该功能本身不再可用。但是,如果您查看此提交,您将看到zero_gradients
. 它所做的只是将输入的梯度归零:
def zero_gradients(i):
for t in iter_gradients(i):
t.zero_()
然后zero_gradients(x)
应该与 相同x.zero_grad()
,这是当前的 API,假设x
是nn.Module
!
或者它只是:
if x.grad is not None:
x.grad.zero_()
推荐阅读
- javascript - 如何进行javascript引导表单验证?
- gcc - 有没有人找到关闭颜色 GCC 警告/错误的方法?
- android - 为 Android 应用程序创建调试历史记录的最佳方法是什么
- python - 在一列上制作两列(python)
- blockchain - 如果比特币工作量证明在 10 分钟内没有成功,会发生什么?
- python - 有人能解释一下“defaultdict(lambda:0)”的作用吗
- python - django 模型中的类创建的记录未记录在 mysql 表中
- python - 如何计算蠕虫的最大宽度和长度?
- xml - XML转EXI时如何生成事件码?
- python - 如何计算负整数或零的所有数字的乘积?