Esempio n. 1
0
else:
    validation_input = torch.from_numpy(data_T[5000:(n_tag_0 + n_tag_1)])
    validation_label = torch.from_numpy(label_T[5000:(n_tag_0 + n_tag_1)])
    validation_timestamp = timestamp_T[5000:(n_tag_0 + n_tag_1)]
validation_data = torch.utils.data.TensorDataset(validation_input, validation_label)
validation_loader = torch.utils.data.DataLoader(validation_data, batch_size=BATCH_SIZE, shuffle=False)

'''-------------------------------------------------------------------------'''
'''------------------------------ create model -----------------------------'''
'''-------------------------------------------------------------------------'''
print("creating model")

cnn = None
if SUPERVISED:
    if (NETWORK_TYPE == "2D"):
        cnn = CNN.CNNModel2D().to(device)
    elif (NETWORK_TYPE == "1D"):
        cnn = CNN.CNNModel1D().to(device)
    optimizer = torch.optim.Adam(cnn.parameters(), lr=LR)
    loss_func = nn.CrossEntropyLoss()
else:
    if (NETWORK_TYPE == "2D_unsupervised"):
        cnn = CNN_unsupervised.CNNModel().to(device)
    elif (NETWORK_TYPE == "2D_reconstruct"):
        cnn = CNN_reconstruct.CNNModel().to(device)
    optimizer = torch.optim.Adam(cnn.parameters(), lr=LR)
    loss_func = nn.MSELoss()

# validation loss of every epoch
loss_record = []