한곳에 모두 모은, 복사해서 응용할 수 있는 반복문
이 레슨에서는 트랙에서 배운 모든 방식을 실행 가능한 학습 반복문 하나로 조립해. 한 번 꼼꼼히 읽어 둬. 앞으로도 이 구조를 바탕으로 필요한 부분을 바꾸게 될 거야.
반복문에는 다음이 들어 있어:
- 장치 선택(CUDA → MPS → CPU 대안)
- 가중치 감쇠를 분리한 AdamW. 편향과 정규화 매개변수에는 감쇠를 적용하지 않아.
- 워밍업을 포함한 코사인 학습률 일정
- 혼합 정밀도. Ampere 이후 GPU와 Apple Silicon에서는 bfloat16을 사용해.
- 기울기 제한
- 누적 손실을 보여 주는 tqdm 진행 표시줄
- 에포크마다 실행하는 검증
- 가장 좋은 체크포인트 저장
- NaN 방어
다음 기능은 각각 별도의 트랙이나 레슨에서 다루므로 일부러 넣지 않았어:
- 분산 학습(DDP / FSDP): 트랙 7
- torch.compile(): 트랙 7
- 실험 추적(W&B / MLflow): 트랙 8