【已解决】UserWarning: This overload of add_ is deprecated

报错类型:

UserWarning: This overload of add_ is deprecated: add_(Number alpha, Tensor other) Consider using one of the following signatures instead: add_(Tensor other, *, Number alpha)


复现代码的时候,运行到 optimization.py 会触发一个 Warning 警告。触发这个警告的原因就是:PyTorch 1.5 改变了 add_ 这个方法的默认参数位置。

解决方法

解决方法很简单,只需要按照 Warning 提示内容修改 API 的参数位置即可。如下所示:

# 修改前
'''
next_m.mul_(beta1).add_(1 - beta1, grad)
next_v.mul_(beta2).addcmul_(1 - beta2, grad, grad)
'''

# 修改后
next_m.mul_(beta1).add_(grad, 1 - beta1)
next_v.mul_(beta2).addcmul_(grad, grad, 1 - beta2)

okk,经过如上修改,再运行时就不会报 Warning 啦…

你可能感兴趣的:(Python,python,开发语言)