pytorch训练网络时的iter和epoch

发布时间:2026/7/28 19:15:56
pytorch训练网络时的iter和epoch Iter------一次迭代是指一个min_batch的一次forwardbackwardEpoch------迭代完所有的训练数据(1次)称为一个epoch# 训练网络 # 迭代epoch for epoch in range(20): running_loss 0.0 for i, data in enumerate(trainloader, 0): # get the input inputs, labels data # zeros the paramster gradients optimizer.zero_grad() # # forward backward optimize outputs net(inputs) loss criterion(outputs, labels) # 计算loss loss.backward() # loss 求导 optimizer.step() # 更新参数 # print statistics running_loss loss.item() # tensor.item() 获取tensor的数值 if i % 2000 1999: print([%d, %5d] loss: %.3f % (epoch 1, i 1, running_loss / 2000)) # 每2000次迭代输出loss的平均值 running_loss 0.0 print(Finished Training)