其實在代碼的開頭添加下面幾句話即可:
# 保證訓練時獲取的隨機數都是一樣的 init_seed = 1 torch.manual_seed(init_seed) torch.cuda.manual_seed(init_seed) np.random.seed(init_seed) # 用於numpy的隨機數
torch.manual_seed(seed)
為了生成隨機數設置種子。返回一個torch.Generator對象
參數:
-
seed (int) – 期望的種子數
torch.cuda.manual_seed(seed)
為當前GPU生成隨機數設置種子。如果CUDA不可用,調用該方法也是安全的;在這種情況下,該調用就會被忽略
參數:
-
seed (int) – 期望的種子數
⚠️如果你使用的是多GPU模型,就要調用manual_seed_all(seed)
.