开始训练前随机种子设置:
def set_seed(seed):
random.seed(seed)
np.random.seed(seed)
os.environ['PYTHONHASHSEED'] = str(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
dataloader 设置:
def worker_init_fn(worker_id):
np.random.seed(int(seed))

本文介绍了在机器学习项目中如何设置随机种子以确保实验的可重复性,并提供了一种设置 DataLoader 工人初始化的方法来进一步增强随机性的管理。

2万+

被折叠的 条评论
为什么被折叠?



