def predict(self, X):
    X_torch = torch.from_numpy(X).float()
    self.net.eval()
    pred = self.net(X_torch)
    self.net.train()
    return pred.detach().detach().numpy().squeeze()
def predict(self, X):
    X_torch = torch.from_numpy(X).float()
    self.net.eval()
    pred = self.net(X_torch)
    self.net.train()
    return pred.detach().detach().numpy().squeeze()