미니배치 경사 하강법

IT 위키

미니배치 경사 하강법(Mini-Batch Gradient Descent)은 머신러닝 및 딥러닝에서 전체 훈련 데이터를 일정한 크기의 소규모 집합으로 나눈 후, 각 집합(미니배치)을 사용하여 손실 함수의 기울기를 계산하고 파라미터를 갱신하는 최적화 알고리즘이다.

개요[편집 | 원본 편집]

미니배치 경사 하강법은 배치 경사 하강법과 확률적 경사 하강법(SGD)의 절충안으로, 계산 효율성과 수렴 안정성 사이의 균형을 목표로 한다. 일반적으로 배치 크기(batch size)는 16, 32, 64, 128 등으로 설정된다.

작동 방식[편집 | 원본 편집]

전체 훈련 데이터를 동일한 크기의 미니배치로 나눈 뒤, 다음과 같은 절차를 반복한다.

  • 미니배치 하나를 선택한다.
  • 해당 미니배치에 대해 순전파와 역전파를 수행하여 평균 기울기를 계산한다.
  • 계산된 기울기를 사용하여 모델의 파라미터를 갱신한다.
  • 모든 미니배치에 대해 이 과정을 반복하면 에포크 1회가 완료된다.

특징[편집 | 원본 편집]

  • 기울기 계산의 정확성과 계산 효율성을 동시에 확보할 수 있다.
  • 하드웨어 병렬화(GPU) 환경에서 매우 효과적으로 작동한다.
  • 적절한 미니배치 크기를 선택하면 일반화 성능이 향상될 수 있다.
  • 배치가 너무 작거나 크면 각각 SGD 또는 전체 배치 경사 하강법의 단점이 드러날 수 있다.

장점과 단점[편집 | 원본 편집]

  • 장점
    • 계산 속도와 안정성 사이에서 균형을 제공한다.
    • 학습이 빠르고 일반화 성능이 우수할 수 있다.
    • 다양한 최신 최적화 기법(Adam, RMSprop 등)과 쉽게 결합된다.
  • 단점
    • 배치 크기 선택이 모델 성능에 영향을 미칠 수 있다.
    • 미니배치 순서나 구성에 따라 수렴 경로가 달라질 수 있다.
    • 작은 배치일수록 수렴이 불안정할 수 있고, 큰 배치는 메모리 부담이 크다.

비교[편집 | 원본 편집]

  • 배치 경사 하강법은 전체 데이터를 사용하여 안정적인 수렴을 유도하나 계산량이 많다.
  • 확률적 경사 하강법은 빠르지만 진동이 심하고 수렴이 불안정하다.
  • 미니배치 경사 하강법은 두 방식의 장점을 절충하여 학습 효율성과 안정성을 모두 추구한다.

같이 보기[편집 | 원본 편집]

참고 문헌[편집 | 원본 편집]

  • Ian Goodfellow, Yoshua Bengio, Aaron Courville, 《Deep Learning》, MIT Press
  • Aurélien Géron, 《Hands-On Machine Learning with Scikit-Learn, Keras, and TensorFlow》, O'Reilly Media

각주[편집 | 원본 편집]