Learning
토픽 28 / 172·딥러닝

경사하강법 (Gradient Descent)

경사하강법 (Gradient Descent)

손실 함수의 기울기(Gradient)를 계산하여 기울기의 반대 방향으로 파라미터를 반복 갱신함으로써 손실을 최소화하는 최적화 알고리즘

목적: 모델 파라미터(가중치) 최적화, 손실 함수 최소화

파라미터 갱신 규칙: θ ← θ - η·∇L(θ), η=학습률(Learning Rate), ∇L=손실의 기울기

변형

  • Batch GD: 전체 데이터로 기울기 계산, 안정적이나 느림, 메모리 많이 필요
  • Mini-batch GD: 미니배치(32~512) 단위 기울기 계산, 속도·안정성 균형, 가장 일반적
  • SGD(Stochastic GD): 1개 샘플씩 기울기 계산, 빠르나 노이즈 큼, 지역 최소 탈출 가능

학습률(Learning Rate): 너무 크면 발산/진동, 너무 작으면 수렴 느림/지역 최소 갇힘, 스케줄링(Step Decay/Cosine/Warmup) 사용

문제점: 지역 최소값(Local Minimum), 안장점(Saddle Point, 고차원에서 더 흔함), 평탄 영역(Plateau), 기울기 소실/폭발

고급 옵티마이저

  • 모멘텀(Momentum): 이전 기울기 방향 관성 추가, 진동 감소·수렴 가속
  • RMSProp: 기울기 제곱의 이동 평균으로 학습률 적응적 조절
  • Adam(Adaptive Moment Estimation): 모멘텀 + RMSProp 결합, 현재 가장 보편적
  • AdamW: Adam + Weight Decay 분리, Transformer 학습 표준

비교: Batch(안정/느림/전체데이터) vs SGD(빠름/노이즈/1샘플) vs Adam(적응적/범용/메모리2배)

연관: 역전파, 손실 함수, 과적합, 딥러닝, 학습률 스케줄링