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

所有评论(0)