This is not a very complicated issue, but I am not sure what is the best way to load the weights into the cpu when the model was trained on a GPU, thus here is my solution:
model = torch.load('mymodel')
self.model = model.cpu().double()
I am not sure if this should be a bug, also this discussion is related link.