37,720
社区成员
发帖
与我相关
我的任务
分享
for i, (images, labels) in enumerate(train_loader):
images = Variable(images).cuda()
labels = Variable(labels).cuda()
out = net(images)
loss = criterion(out, labels) / UPDATE_EVERY
loss.backward()
if (i + 1) % UPDATE_EVERY == 0:
optimizer.step()
optimizer.zero_grad()
loss_epoch = loss_epoch + loss.data[0]
score_epoch = score_epoch + compute_score(out.data, labels.data)
def forward(self, x):
out = nn.LogSoftmax()(self.nets[0](x))
for n in range(1, self.num):
out = out + nn.LogSoftmax()(self.nets[n](x))
out = out / self.num
return out