시작하기무료로 시작하기

랜덤 서치 구현하기

하이퍼파라미터 서치는 서로 다른 하이퍼파라미터 값을 실험하는 계산 비용이 큰 방법이지만, 성능 향상을 이끌 수 있습니다. 이 연습 문제에서는 랜덤 서치 알고리즘을 구현해 보겠습니다.

균등분포에서 학습률과 모멘텀 값을 각각 10개씩 무작위로 샘플링할 것입니다. 이를 위해 np.random.uniform() 함수를 사용하세요.

numpy 패키지는 이미 np로 임포트되어 있으며, 결과를 시각화하기 위한 plot_hyperparameter_search() 함수가 준비되어 있습니다.

이 연습은 강의의 일부입니다

PyTorch로 배우는 딥러닝 입문

강의 보기

연습 안내

  • 학습률(lr)이 $10^{-2}$에서 \(10^{-4}\) 사이가 되도록, 24 사이에서 학습률 지수 값을 무작위로 샘플링하세요.
  • 모멘텀을 0.85에서 0.99 사이에서 무작위로 샘플링하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

values = []
for idx in range(10):
    # Randomly sample a learning rate factor between 2 and 4
    factor = ____
    lr = 10 ** -factor
    
    # Randomly select a momentum between 0.85 and 0.99
    momentum = ____
    
    values.append((lr, momentum))
       
plot_hyperparameter_search(values)
코드 편집 및 실행