for text in data_loader:
        out = model(text)
        pred.append(out)
    pred = torch.stack(pred)
    pred = list(np.array(pred.detach()))
    for i in range(len(pred)):
        str1 = str(int(pred[i][0])) + ' ' + str(d[i])
        f.write(str1)
        f.write('\n')


if __name__ == "__main__":
    epochs = 10
    d = DataLoader(batch_size=64)
    text_tr, labels_tr, maxLen_tr = d.load_data('train')
    v = d.createVocab(text_tr)
    enc_data_tr = d.padText(text_tr, maxLen_tr, v)
    train_loader = d.createTensor(enc_data_tr, labels_tr)
    train_acc, model = train_main(train_loader, v, epochs)

    text_ts, labels_ts, maxLen_ts = d.load_data('test')
    enc_data_ts = d.padText(text_ts, maxLen_ts, v)
    test_loader = d.createTensor(enc_data_ts, labels_ts, batch_size=1)
    test_acc, pred, test_labels = evaluate(test_loader, model)

    print("The training accuracy is:")
    print(train_acc)

    print("The testing accuracy is:")
    print(test_acc)