Ejemplo n.º 1
0
# Loss and Optimizer
loss = nn.BCELoss()
loss = loss.cuda()
optimizer = torch.optim.Adam(model.parameters(),lr=hyper_params['learning_rate'])
print(model)

# Train the model
training_iter = data_iter(training_set, batch_size)
train_eval_iter = eval_iter(training_set[:256], batch_size)
validation_iter = eval_iter(validation_set, batch_size)

total_batches = int(len(training_set) / batch_size)

tls.training_loop(batch_size, total_batches, alphabet_size, hyper_params['l0'], num_epochs, model, loss, optimizer, 
              training_iter, validation_iter, train_eval_iter, save_model_path, comet, cuda=True)


# Loading best model and calculating accuracy on test set
tls.load_checkpoint(model, save_model_path)

test_set = dataGeneratorTest(list_subword_without_end,file_name=data_path+'test.txt', max_length=hyper_params['l0'])
test_iter = eval_iter(test_set, batch_size)
test_acc = tls.evaluate(model, test_iter, batch_size, alphabet_size, hyper_params['l0'], cuda=True, save_pred_file=save_pred_path)
print("Final test accuracy :  %f" %(test_acc))
print("Final test err :  %f" %( 1 - test_acc))
comet.log_accuracy(test_acc)