AI: 스케줄링/조기종료 – Learning Rate Scheduling
ㅁ 스케줄링/조기종료
ㅇ 정의:
학습 과정에서 학습률(Learning Rate)을 시간 경과나 학습 진행 상황에 따라 동적으로 조정하는 기법.
ㅇ 특징:
– 초기에는 큰 학습률로 빠르게 수렴을 유도하고, 후반에는 작은 학습률로 미세 조정을 수행.
– 과적합 방지 및 더 나은 전역 최적점 탐색에 도움.
– 사전 정의된 스케줄(단계적 감소, 지수 감소, 코사인 감소 등)이나 성능 지표 기반 감소 방식 사용.
ㅇ 적합한 경우:
– 고정된 학습률로는 수렴이 불안정하거나 최적점 근처에서 진동하는 경우.
– 장기 학습 과정에서 과적합 위험이 있는 경우.
– 다양한 데이터 분포나 난이도 변화가 있는 학습 환경.
ㅇ 시험 함정:
– 학습률 스케줄링은 학습률을 ‘점점 증가’시키는 것이 아니라 ‘점차 감소’시키는 것이 일반적이라는 점.
– Early Stopping과 혼동할 수 있음. Early Stopping은 학습을 중단하는 것이고, 스케줄링은 학습률을 조정하는 것.
– 모든 모델에서 무조건 성능이 향상되는 것은 아님.
ㅇ 시험 대비 “패턴 보기” 예시:
O: “모델의 수렴 속도와 최종 성능 향상을 위해 학습률을 점차 줄이는 방법을 사용한다.”
X: “학습률 스케줄링은 학습 초기보다 후반부에 학습률을 점차 증가시켜 과적합을 방지한다.”
ㅁ 추가 학습 내용
대표적인 학습률 스케줄링 방식에는 다음이 있다.
Step Decay는 일정 에폭마다 학습률을 감소시키는 방식이며, Exponential Decay는 학습률을 지수적으로 감소시킨다.
Cosine Annealing은 코사인 곡선 형태로 학습률을 점진적으로 줄이고, Cyclical Learning Rate는 학습률을 주기적으로 증가와 감소를 반복한다.
Warm Restarts는 학습률을 주기적으로 초기값으로 되돌린 후 다시 감소시키는 방식이다.
성능 지표 기반 스케줄링에는 ReduceLROnPlateau가 있으며, 이는 검증 손실이 일정 기간 개선되지 않을 경우 학습률을 줄인다.
스케줄링 적용 시 주의할 점은 학습률을 너무 급격히 줄이면 학습이 조기에 정체될 수 있고, 너무 완만하게 줄이면 과적합이 발생할 수 있다는 것이다.
또한 스케줄링은 사용하는 옵티마이저(예: Adam, SGD 등)에 따라 효과가 다르게 나타날 수 있다.
시험에서는 스케줄링의 목적(수렴 안정화, 과적합 방지)과 Early Stopping, Warm-up과의 차이점을 구분하는 문제가 자주 출제된다.