seed = 3407
random.seed(seed)
os.environ['PYTHONHASHSEED'] = str(seed)
np.random.seed(seed)
torch.manual_seed(seed)
torch.cuda.manual_seed(seed)
torch.cuda.manual_seed_all(seed) # 这句话忘写了
torch.backends.cudnn.deterministic = True
torch.backends.cudnn.benchmark = False
torch.backends.cudnn.enabled = False
写torch.cuda.manual_seed(seed)还不够,需要torch.cuda.manual_seed_all(seed)
以及一些包在调用时就会调用random,所以随机数最好在
import numpy as np
import random
import torch
后就固定。