optimizer.zero_grad() ,用于将模型的参数梯度初始化为0。

#反向计算
loss.backward()#反向传播计算梯度
optimizer.step()#更新参数,梯度被反向计算之后,调用函数进行所有参数更新
#在反向传播计算时,梯度的计算是累加,但是每个batch处理时不需要和其它batch混合起来累加计算,所以对每个batch调用zero_grad将参数梯度置0
#如果不是每个batch清理依次梯度,而是两次或者多次清理,相当于提高了batch批次大小
optimizer.zero_grad()#将模型参数梯度置为0;

点赞(0) 打赏

评论列表 共有 0 条评论

暂无评论

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部