AI 모델 개발: 학습 곡선 – Learning Rate Scheduler

ㅁ 학습 곡선

ㅇ 정의:
머신러닝 및 딥러닝 학습 과정에서 학습률(learning rate)을 동적으로 조정하여 모델의 수렴 속도와 최종 성능을 개선하는 기법.

ㅇ 특징:
– 학습 초기에 큰 학습률로 빠르게 최적점 근처까지 이동하고, 이후 점차 학습률을 줄여 세밀하게 수렴.
– Overfitting 방지, 안정적인 수렴, 학습 시간 단축에 기여.
– 다양한 스케줄링 방식 존재(계단형, 지수감소형, Cosine Annealing 등).

ㅇ 적합한 경우:
– 데이터셋이 크고 복잡하여 고정 학습률로는 학습이 불안정한 경우.
– 초기 학습 속도는 빠르게, 후반에는 안정적인 수렴이 필요한 경우.
– Fine-tuning 시 기존 모델의 가중치를 크게 변동시키지 않으면서 최적화하고 싶은 경우.

ㅇ 시험 함정:
– 학습률 스케줄러는 Optimizer와 별개로 동작하지만, 일부 프레임워크에서는 Optimizer 설정에 종속적일 수 있음.
– 학습률이 너무 빠르게 감소하면 최적점에 도달하기 전에 학습이 멈출 수 있음.
– 일정 주기마다 학습률을 높이는 Warm Restart 기법을 혼동할 수 있음.

ㅇ 시험 대비 “패턴 보기” 예시:
O: “학습률 스케줄러는 학습 과정 중 학습률을 동적으로 조정하여 최적화 성능을 향상시킨다.”
X: “학습률 스케줄러는 초기 학습률을 무조건 작게 설정해야 한다.”

================================

1. Learning Rate Scheduler

ㅇ 정의:
학습률을 사전에 정의된 규칙 또는 학습 상태(에폭, 손실 변화 등)에 따라 자동으로 변경하는 메커니즘.

ㅇ 특징:
– StepLR: 일정 에폭마다 학습률을 감소.
– ExponentialLR: 매 에폭마다 일정 비율로 학습률 감소.
– ReduceLROnPlateau: 검증 성능이 향상되지 않을 때 학습률 감소.
– CosineAnnealingLR: 코사인 함수를 이용해 학습률을 주기적으로 감소.
– OneCycleLR: 학습 초기에 학습률을 증가시켰다가 이후 감소.

ㅇ 적합한 경우:
– 학습률 고정 시 손실이 진동하거나 수렴하지 않는 경우.
– 장기 학습에서 최적화 효율을 높이고자 할 때.
– 검증 성능이 일정 기간 정체되는 경우.

ㅇ 시험 함정:
– 모든 문제에서 학습률 감소가 항상 좋은 것은 아님.
– Cosine Annealing과 Warm Restarts를 동일하게 취급하는 오류.
– ReduceLROnPlateau는 검증 지표를 모니터링해야만 동작한다는 점을 간과.

ㅇ 시험 대비 “패턴 보기” 예시:
O: “ReduceLROnPlateau는 검증 손실이 개선되지 않을 때 학습률을 줄인다.”
X: “StepLR은 매 배치마다 학습률을 감소시킨다.”

ㅁ 추가 학습 내용

학습률 스케줄러의 수학적 이해와 비교 정리

1. StepLR
– 개념: 일정 간격(step_size)마다 학습률을 일정 비율(gamma)로 감소시키는 방식
– 수식: lr_t = lr_0 × (gamma)^(floor(t / step_size))
여기서 t는 현재 epoch 또는 step, lr_0는 초기 학습률
– 장점: 구현이 간단하고 일정 주기 감소로 안정적인 수렴 유도
– 단점: 감소 시점에서 학습률이 갑자기 변해 학습 곡선이 불연속적으로 변할 수 있음

2. Cosine Annealing
– 개념: 학습률이 코사인 곡선을 따라 점진적으로 감소
– 수식: lr_t = lr_min + 0.5 × (lr_max – lr_min) × (1 + cos(π × t / T_max))
여기서 T_max는 주기, lr_min은 최소 학습률, lr_max는 최대 학습률
– 장점: 부드럽게 감소하여 학습 안정성 향상, 후반에도 작은 학습률로 미세 조정 가능
– 단점: 주기 설정이 적절하지 않으면 최적 수렴에 방해가 될 수 있음

3. Warmup 기법
– 개념: 초기 몇 epoch 동안 학습률을 선형 또는 지수적으로 증가시킨 후 본래 스케줄 적용
– 장점: 초기 불안정한 학습 방지, 대규모 배치 학습 시 효과적
– 단점: warmup 기간과 증가 방식 설정이 추가로 필요

4. Optimizer별 차이
– SGD: 학습률 변화에 민감, 스케줄러 효과가 직접적으로 반영됨
– Adam: 내부적으로 적응적 학습률을 사용하므로 스케줄러 효과가 상대적으로 완만하지만 여전히 중요

5. 학습 곡선 분석
– 학습률 변화에 따른 손실 곡선과 정확도 곡선을 시각적으로 분석
– 스케줄러 적용 전후의 수렴 속도, 최종 성능, 안정성을 비교하여 이해

시험 대비 포인트: 각 스케줄러의 수식, 장단점, 적용 상황, Warmup과의 조합, Optimizer별 반응 차이를 정확히 이해하고 학습 곡선 해석 능력을 갖출 것

답글 남기기

Your email address will not be published. Required fields are marked *.

*
*