if torch.cuda.is_available():
for epoch in range(epoch_num):
for i,(images, labels) in enumerate(trainloader):
images=images.to(device)
labels=labels.to(device)
optimizer.zero_grad()
#Forward Backward Optimize
outputs = net(images)
loss = criterion(outputs, labels)
loss.backward()
optimizer.step()
# print statistics
if i%1000==0:
print('Number of epochs: %d, Mini Batch order: %d' %(epoch+1,i))
Это часть поезда.Я использую четыре графических процессора для тренировки.И после того, как я запустил 5000 эпох (размер партии 128), точность получается "10%" !!Это слишком низко!Ниже приводится тестовая часть:
with torch.no_grad():
num_correct = 0
total_data = 0
if torch.cuda.is_available():
for images, labels in testloader:
images=images.to(device)
labels=labels.to(device)
output = net(images)
_, expected = torch.max(output.data, 1)
total_data += labels.size(0)
num_correct += (expected == labels).sum().item()
Понятия не имею, что не так, как я могу это исследовать?