0

我正在使用 PyTorch (1.7.1)、PyTorch Geometric (1.6.3)、NVIDIA Cuda (11.2)。

我需要为比赛制作一个可重现的神经网络。

但是,当我尝试:

device = torch.device('cuda:0')
rand = 123
torch.manual_seed(rand)
torch.cuda.manual_seed(rand)
torch.cuda.manual_seed_all(rand)
torch.backends.cudnn.deterministic = True
torch.backends.cudnn.benchmark = False
np.random.seed(rand)
random.seed(rand)

,结果和损失每次都出现不同。我该如何解决?

(作为参考,它在 中总是一样的 device = torch.device('cpu')。)

我正在使用 jupyter 笔记本。

4

1 回答 1

0

如果您正在调用不确定的东西,请尝试设置 torch 以引发错误。

torch.use_deterministic_algorithms(True)
于 2021-09-11T10:31:30.250 回答