많은 분들이 Fine-tuning이라고 하면 그냥 "기존 모델을 조금 더 학습시키는 것"으로만 생각하지만, 실제로는 다양한 전략이 존재합니다.
특히, 모든 파라미터를 학습하는 것뿐 아니라 일부만 학습하거나, 추가 모듈만 학습하는 방식도 있습니다.
Fine-tuning이란, 사전학습(pretrained)된 모델을 특정 태스크에 맞춰 추가 학습시키는 과정입니다.
하지만 이때 "어디까지 학습할 것인가"에 따라 여러 방식으로 나뉘게 됩니다.
예시:
상위 2개 층만 학습 (나머지 고정)
=> 또는 처음엔 head만 학습 → 이후 점진적 전체 fine-tuning
사용 상황 | 추천 Fine-tuning 전략 |
---|---|
💾 데이터 많고 자원 충분 | Full fine-tuning |
⚡ 빠른 실험 필요, 자원 부족 | Head-only, Adapter |
🔁 다중 태스크 전환 필요 | Adapter, LoRA |
📱 모바일/온디바이스 경량화 | Head-only, 또는 Distillation 병행 |
Fine-tuning 방식 | 본체 학습 여부 | 특징 |
---|---|---|
Full | ✅ 전체 학습 | 성능 최상, 자원 소모 큼 |
Head-only | ❌ 본체 고정, head만 학습 | 빠르고 경량, 적응력 제한 |
Adapter | ❌ 본체 고정, adapter만 학습 | 확장성 우수, 태스크 전환 쉬움 |
LoRA | ❌ 본체 고정, delta만 학습 | 최신 트렌드, 고성능 + 효율적 |
Layer-wise | 🔄 일부 층만 학습 | 중간 절충 전략, 실험적 응용에 유리 |