딥러닝 하이퍼파라미터란?

Youngho LEE·2025년 6월 8일

[Parameter] vs [Hyperparameter]

Parameter

  • 모델 내부에서 결정되는 변수, 데이터를 통해 산출이 가능한 값

  • 모델 내부에서 데이터를 통해 구해진다.

  • 예측을 수행할 때, 모델에 의해 요구되어지는 값

  • 측정되거나 데이터로부터 학습되어진다.

  • 학습된 모델의 일부로 저장되어진다.

  • ex) 인공신경망에서의 가중치 계수 (weight coefficient), SVM(서포트벡터머신)에서의 서포트 벡터, 선형회귀나 로지스틱회귀분석에서의 결정계수, 편향(bias) 등

    Hyperparameter

  • 알고리즘 사용자가 경험에 의해 직접 세팅하는 값. (여러 번 수행하면서 최적의 값을 찾는다.)

  • 정해진 최적의 값이 없다.

  • 모델에서 외적인 요소, 데이터 분석을 통해 얻어지는 값이 아님.

  • 모델의 parameter값을 측정하기 위해 알고리즘 구현 과정에서 사용

  • 예측 알고리즘 모델링의 문제점을 위해 조절된다.

  • ex) 신경망 학습에서 learing rate(학습률), SVM에서의 코스트 값, KNN에서의 K개수, epoch 등

Hyperparameter

하이퍼파라미터 튜닝

  • 하이퍼파라미터는 사용자의 입력값이고, 정해진 최적값이 없다. 모델이나 데이터에 따라 달라진다. 여러번 시도해보면서 데이터와 모델에 맞는 하이퍼파라미터를 찾아 나가는 과정을 하이퍼파라미터 튜닝이라고 한다.
  • 튜닝 방법 예시
    • Manual Search, Grid Search, Random Search, Bayesian Optimization, Non-Probabilistic, Evolutionary Optimizaion, Gradient-based Optimizaion, Early Stopping

하이퍼파라미터 종류

  • 네트워크 구조와 관련된 하이퍼파라미터
    • 은닉층의 뉴런 개수 (Hidden Unit)
      • 훈련 데이터에 대한 학습 최적화 결정 변수
      • 첫 Hidden Layer의 뉴런 수가 Input Layer보다 큰 것이 효과적
    • Dropout
      • 과적합을 피하기 위한 정규화 기법
      • 학습데이터에 과적합하게 학습된 model을 실제로 사용하기 위해 범용성을 위한 기법
      • Hidden Layer의 뉴런들을 일정 비율을 배제하고 학습한다.
    • 가중치 초기화 (Weight Initialization)
      • 학습 성능에 대한 결정 변수
  • 학습에 사용되는 하이퍼파라미터
    • 학습률 (learning rate)
      • gradient의 방향으로 얼마나 빠르게 이동할 것인지 결정하는 변수
      • 너무 작으면 학습의 속도가 늦고, 너무 크면 학습이 불가하다.
    • 모멘텀 (momentum)
      • 학습 방향을 유지하려는 성질
      • 모멘텀을 사용하면 학습 방향이 바로 바뀌지 않고, 일정한 방향을 유지하며 움직인다.(운동량)
      • 같은 방향의 학습이 진행된다면 가속을 가지며 더 빠른 학습을 기대할 수 있다.
    • 에포크 (epoch)
      • 전체 트레이닝 셋이 신경망을 통과한 횟수를 의미한다.
      • ex) 1-epoch는 전체 트레이닝 셋이 하나의 신경망에 적용되어 순전파와 역전파를 통해 신경망을 한 번 통과했다는 것을 의미
    • 배치 사이즈 (batch size)
      • 미니 배치 크기 (Mini-batch size)
      • 배치셋 수행을 위해 전체 학습 데이터를 등분하는 크기 (전체 트레이닝 셋을 작게 나누는 이유는 트레이닝 데이터를 통째로 신경망에 넣으면 비효율적인 리소스 사용으로 학습 시간이 오래 걸리기 때문)
      • 가용 메모리 크기와 epoch 수행 성능을 고려
      • 최소 사이즈는 32이고, GPU의 물리적 구조로 인해 항상 2의 제곱으로 설정한다.
    • 반복 (iteration)
      • 1-epoch를 마치는 데 필요한 미니배치 개수를 의미.
      • 즉, 1-epoch를 마치는 데 필요한 파라미터 업데이터 횟수이다.
      • 각 미니 배치마다 파라미터 업데이트가 한번씩 진행되므로, iteration은 파라미터 업데이터 횟수이자 미니 배치 개수이다.
      • ex) 700개의 데이터를 100개 씩 7개의 미니배치로 나누었을 때, 1-epoch를 위해서는 7-iteration이 필요하며, 7번의 파라미터 업데이트가 진행된다.
    • 손실함수 (cost function)
      • 입력에 따른 기대값과 실제값의 차이를 계산하는 함수
    • 정규화 파라미터 (regularization parameter)
      • L1 또는 L2 정규화 방법 사용

출처
blog

profile
개발자

0개의 댓글