본문 바로가기

DeepLearning/파이토치(pytorch)

파이토치 시드 (seed)값 고정법

728x90
반응형
import torch
import numpy as np
import random
import os
def seed_everything(seed=42):
    random.seed(seed)
    np.random.seed(seed)
    torch.manual_seed(seed)
    torch.cuda.manual_seed_all(seed)
    torch.backends.cudnn.benchmark = False
    torch.use_deterministic_algorithms(True)
    os.environ["PYTHONHASHSEED"] = str(seed)
    os.environ["TF_ENABLE_ONEDNN_OPTS"] = "0"

파이토치 시드 넘버를 고정해야 재현성 있는 결과가 나옴.

다만, 시드를 고정하면 훈련속도가 떨어진다고 함.

따라서, 재현성이 꼭 필요할 때만 하라고 보통 말함.

 

이것도 파이토치의 버전과 서버상황 등에 따라 달라질 수 있다.

 

출처 : https://dacon.io/forum/407713

728x90
반응형