Hi,
I get this error:
RuntimeError: Attempting to deserialize object on a CUDA device but torch.cuda.is_available() is False. If you are running on a CPU-only machine, please use torch.load with map_location=torch.device(‘cpu’) to map your storages to the CPU.
I’m not sure if I am saving my outputs incorrectly, however, I changed the last line in the below code from df.to_csv to df.to_pickle, in order to save the predictions in a different format. When saving into a csv file I do not get errors, however would prefer to pickle/ dump into an npy file. Any suggestions on what I should do to resolve this error?
predictions = []
imgpaths = []
probabilities = []
true_labels = [] 

with torch.no_grad():
     for i,(inputs10x, paths10x, labels) in enumerate(dataloaders_dict['val']):

            test_inputs10x = inputs10x.to(device)
            test_labels = labels.to(device)
            test_paths = paths10x

            test_x10 = densenet(test_inputs10x)

            outputs = classifier(test_x10)
            test_loss += criterion(outputs, test_labels).item()
            _, pred = torch.max(outputs, 1) #pred = torch.max(outputs, 1)[1]

            prob = F.softmax(outputs, dim=1)
            top_p, top_class = prob.topk(1, dim = 1)

            for q in top_p:
                probabilities.append(q)

            for x in pred:
                predictions.append(x)
            
            for z in test_paths:
                imgpaths.append(z)
            
            for l in test_labels:
                true_labels.append(l)


b = {'paths': imgpaths, 'predicted_labels': predictions, 'true_labels': true_labels, 'probabilities': probabilities}
df = pd.DataFrame.from_dict(b)
df.to_pickle(args.npy_file  + '.pickle')