3-step 춤
모던 모델 학습 = 같은 루프, 수백만 번 반복:
- Forward pass: 배치 망 통과, loss 계산.
- Backward pass: backprop 이 모든 파라미터 gradient 계산.
- Step: 옵티마이저가 gradient 사용해 파라미터 갱신.
Loss 안 떨어질 때까지 반복. 끝. 세상 모든 신경망이 학습되는 법.
표준 PyTorch idiom
딥러닝에서 이 패턴 수천 번 작성:
for batch in dataloader:
optimizer.zero_grad() # 옛 gradient 클리어
pred = model(batch.x) # forward pass
loss = loss_fn(pred, batch.y)
loss.backward() # backward pass — backprop 여기 실행
optimizer.step() # 파라미터 갱신
다섯 줄. 학습 루프 전체. 이 리듬 외워; 딥러닝의 모든 fancy 한 게 이 위에.
흔한 옵티마이저
- SGD — vanilla. .
- SGD + momentum — 과거 gradient 누적. 더 부드러운 trajectory.
- Adam — 파라미터별 적응 학습률. 모던 default. 튜닝 거의 없이 작동.
- AdamW — Adam + 적절한 weight decay. 큰 transformer 모델 best default.
Forward → Backward → Step. 유니버설 학습 루프. 모든 fancy 한 게 이 세 step 의 wrapping/extending.