AI: 스케줄링/조기종료

ㅁ 스케줄링/조기종료

ㅇ 정의:
모델 학습 과정에서 학습률 조절, 조기 종료, 배치 정규화 등을 통해 과적합 방지와 학습 효율성을 높이는 기법.

ㅇ 특징:
– 학습 중 손실 감소 추세나 검증 정확도 변화를 모니터링하여 학습 중단 또는 파라미터 조정.
– 불필요한 연산을 줄이고 최적의 가중치 상태를 확보.

ㅇ 적합한 경우:
– 데이터셋이 작아 과적합 우려가 있는 경우.
– 학습 시간이 제한적인 경우.

ㅇ 시험 함정:
– 모든 경우에 무조건 성능 향상된다고 단정하는 오류.
– 학습률 스케줄링과 조기 종료를 혼동.

ㅇ 시험 대비 “패턴 보기” 예시:
O: “검증 손실이 증가하면 학습을 중단하는 기법은 Early Stopping이다.”
X: “Early Stopping은 학습률을 점진적으로 감소시키는 기법이다.”

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

1. Early Stopping

ㅇ 정의:
검증 데이터셋의 성능이 더 이상 개선되지 않고 오히려 악화되기 시작하면 학습을 조기에 종료하는 기법.

ㅇ 특징:
– 과적합을 방지하는 대표적인 방법.
– patience(허용 지연) 파라미터로 개선 없는 epoch 수를 설정.

ㅇ 적합한 경우:
– 검증 손실이 일정 기간 감소하지 않는 경우.
– 모델이 과적합 조짐을 보이는 경우.

ㅇ 시험 함정:
– 훈련 손실만 보고 판단하는 경우.
– patience=0이면 미세한 변동에도 즉시 종료될 수 있음.

ㅇ 시험 대비 “패턴 보기” 예시:
O: “Early Stopping은 validation loss를 기준으로 학습을 중단한다.”
X: “Early Stopping은 training loss가 줄어들면 학습을 중단한다.”

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

2. Learning Rate Scheduling

ㅇ 정의:
학습 진행에 따라 학습률(Learning Rate)을 점진적으로 감소시키거나 조절하는 기법.

ㅇ 특징:
– 초기에는 큰 학습률로 빠르게 수렴 유도.
– 후반에는 작은 학습률로 세밀한 최적화.
– Step decay, Exponential decay, Cosine annealing 등 다양한 스케줄 존재.

ㅇ 적합한 경우:
– 복잡한 손실 함수에서 안정적 수렴이 필요한 경우.
– 초기 빠른 학습과 후반 정밀 학습이 필요한 경우.

ㅇ 시험 함정:
– 학습률이 너무 작으면 학습이 멈춘 것처럼 보일 수 있음.
– 학습률 감소 시점과 감소폭 설정 오류.

ㅇ 시험 대비 “패턴 보기” 예시:
O: “Learning Rate Scheduling은 학습 후반에 작은 학습률로 세밀한 조정을 한다.”
X: “Learning Rate Scheduling은 학습 내내 일정한 학습률을 유지한다.”

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

3. Batch Normalization

ㅇ 정의:
각 미니배치 단위로 입력 데이터를 정규화하여 학습 안정성과 속도를 향상시키는 기법.

ㅇ 특징:
– 내부 공변량 변화(Internal Covariate Shift) 완화.
– 학습률을 더 크게 설정 가능.
– Dropout 등의 규제 기법과 병행 가능.

ㅇ 적합한 경우:
– 심층 신경망에서 학습 속도와 안정성을 높이고 싶은 경우.
– 활성화 함수의 포화 문제를 줄이고 싶은 경우.

ㅇ 시험 함정:
– 배치 크기가 너무 작으면 통계량 추정이 불안정.
– 추론 시에는 학습된 평균과 분산을 사용해야 함.

ㅇ 시험 대비 “패턴 보기” 예시:
O: “Batch Normalization은 미니배치별 평균과 분산을 이용해 정규화한다.”
X: “Batch Normalization은 전체 데이터셋의 평균과 분산만으로 정규화한다.”

ㅁ 추가 학습 내용

Early Stopping과 Learning Rate Scheduling은 함께 사용 가능하며 상호 보완적으로 작용할 수 있다. Learning Rate Scheduling에는 Warmup 기법이 자주 쓰이는데, 이는 초기 학습률을 점진적으로 증가시킨 후 감소시키는 방식이다.
Batch Normalization은 Fully Connected Layer뿐 아니라 Convolution Layer에서도 사용 가능하다. Dropout과의 적용 순서는 성능에 영향을 줄 수 있으며, 일반적으로 Batch Normalization 후 Dropout을 적용한다.
Batch Normalization의 대안으로 Layer Normalization, Instance Normalization, Group Normalization이 있으며, 각각 적용 상황과 차이점이 존재하므로 구분할 수 있어야 한다.
Early Stopping에서는 검증 데이터 분리 비율과 모니터링 지표(accuracy, loss 등)의 선택이 성능에 영향을 미치므로 주의해야 한다.

답글 남기기

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

*
*