def load_model(test_arguments): rcnn = RCNN(test_arguments.pos_loss_method, test_arguments.loss_weight_lambda).cuda() rcnn.load_state_dict(t.load(test_arguments.model_path)) rcnn.eval() # dropout rate = 0 return rcnn
# print(output) # print(target) loss = criterion(output, labels) loss.backward() optimizer.step() # scheduler.step(loss) loss_to_append = loss.clone().cpu().view(1).data.numpy()[0] print("Epoch : {}, Mini-Epoch : {}, Loss: {}".format(i+1,mini_count,loss_to_append)) mini_count += 1 loss_each_epoch.append(loss_to_append) loss_trend.append(sum(loss_each_epoch)) for images,labels in dataloader['test']: net = net.eval() if use_gpu: images = images.cuda() labels = labels.cuda() output = net(images) predicted_labels = torch.argmax(output, dim=1) minibatch_accuracy = torch.eq(predicted_labels,labels).cpu().sum().view(1).numpy()[0] running_accuracy.append(minibatch_accuracy) accuracy_trend.append( sum(running_accuracy)/test_dataset_len ) print('##### Epoch {} #####'.format(i+1)) print('Loss : {}'.format(sum(loss_each_epoch))) print('Accuracy : {}'.format( sum(running_accuracy)/test_dataset_len ))