问题描述
我正在研究神经网络,我发现使用*.grad_zero()
可以正确获得损失函数值,并且收敛到零。其中,使用*.grad_zero
(不带括号)给出5位数字的损失函数值。 (13,564.23)。那么,它们之间有什么区别?为什么“()”在FPP中很重要。谢谢。
解决方法
optimizer.zero_grad
是一个函数,因此您需要用括号来调用它。如果您不使用括号,那么您只是在引用函数对象,而从未调用它。
我正在研究神经网络,我发现使用*.grad_zero()
可以正确获得损失函数值,并且收敛到零。其中,使用*.grad_zero
(不带括号)给出5位数字的损失函数值。 (13,564.23)。那么,它们之间有什么区别?为什么“()”在FPP中很重要。谢谢。
optimizer.zero_grad
是一个函数,因此您需要用括号来调用它。如果您不使用括号,那么您只是在引用函数对象,而从未调用它。