시작은 미약하였으나 , 그 끝은 창대하리라

[Pytorch 스크래치 코드] 실험 재현을 위한 Seed 고정 본문

인공지능/딥러닝 스크래치 코드

[Pytorch 스크래치 코드] 실험 재현을 위한 Seed 고정

애플파ol 2023. 12. 9. 14:51

✓ ablation study를 진행하다보면 다른 seed값이 모두 동일하게 고정적으로 설정이 되있어야 한다.

✓ 이를 방지하기 위해 우리는 seed 값 고정을 하여 수행한다. 

 

❏  실험 재현을 위한 seed 값 고정 코드

# 실험 재현을 위한 seed 고정


def seed_everything(seed: int):
    import random, os
    import numpy as np
    import torch
    import tensorflow as tf
    
    
    random.seed(seed)
    os.environ['PYTHONHASHSEED'] = str(seed)
    np.random.seed(seed)
    torch.manual_seed(seed)
    torch.cuda.manual_seed(seed)
    torch.backends.cudnn.deterministic = True
    torch.backends.cudnn.benchmark = True
    tf.random.set_seed(42)
    
seed_everything(42)
Comments