실전 - 수능 풀이 LLM
▸ notes
- 체크포인트 선정하기 학습이 끝나면 보통 eval/loss가 가장 낮은 체크포인트를 골라 추론에 쓴다. 나도 그렇게 했는데, 정작 loss가 더 높은 마지막 epoch 체크포인트가 실제 점수는 더 높게 나와서 한참 갸웃했다. WandB 차트를 보면서 어떤 체크포인트를 써야 하는지 다시 생각했던 걸 정리...
- completion-only loss - 질문 말고 정답만 학습시키기 SFT 데이터를 학습시킬 때 질문과 정답이 한 시퀀스로 들어가는데, 처음엔 모델이 이 전체를 다 학습하는 줄 알았다. 그런데 질문은 학습하지 않고 정답 부분에만 loss를 거는 방법이 따로 있었다. 입력으로 받는 것과 loss를 거는 것의 차이를 정리해봤다. 입력으로 받는 것 ≠...
- NEFTune 이번 대회 학습 데이터는 약 2,000개로 적은데 모델은 27B였다. 거대 모델이 소규모 데이터를 학습하면 과적합 위험이 크다. 이걸 막으려고 NEFTune을 도입했는데, 임베딩에 노이즈를 더하는 단순한 기법이 왜 과적합을 막는지 정리해봤다. 문제: SFT 단계의 소규모 과적합 L...
- Unsloth 적용기 27B 모델을 V100 32GB에서 굴리려니 속도와 메모리 양쪽이 빠듯했다. unsloth를 적용하면서 왜 쓰는지, 그리고 직접 batch size를 1·4·8로 바꿔보다 batch 1이 제일 빨랐던 이상한 결과를 추적했던 걸 정리해봤다. 왜 unsloth였나 unsloth는 같은...