欢迎访问 生活随笔!

生活随笔

当前位置: 首页 >

pytorch之trainer.zero_grad()

发布时间:2023/12/10 73 豆豆
生活随笔 收集整理的这篇文章主要介绍了 pytorch之trainer.zero_grad() 小编觉得挺不错的,现在分享给大家,帮大家做个参考.
  • 在下面的代码中,在每次l.backward()前都要trainer.zero_grad(),否则梯度会累加。
num_epochs = 3 for epoch in range(num_epochs):for X, y in data_iter:l = loss(net(X), y)trainer.zero_grad()l.backward()trainer.step()l = loss(net(features), labels)print(f'epoch {epoch + 1}, loss {l:f}')
  • trainer.step()在参数迭代的时候是如何知道batch_size的?
    因为loss = nn.MSELoss(),均方误差是对样本总量平均过得到的,所以trainer.step()使用的是平均过的grad。
    参考资料:
  • https://zh-v2.d2l.ai/chapter_linear-networks/linear-regression-concise.html
  • 总结

    以上是生活随笔为你收集整理的pytorch之trainer.zero_grad()的全部内容,希望文章能够帮你解决所遇到的问题。

    如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。