본문 바로가기
개발/Python

지식증류 vs 전이학습 vs 파인튜닝

by 피로물든딸기 2025. 11. 26.
반응형

전체 링크

지식증류 (Knowledge Distillation)

- 큰 모델(Teacher)에서 작은 모델(Student)로 지식을 전달하여 작은 모델도 높은 성능을 내도록 학습시키는 방법

- 주로 모델 경량화, 추론 속도 향상을 위해 사용

 

원리

- Teacher 모델을 먼저 학습

- Student 모델이 Teacher 모델의 출력을 소프트 타겟(Soft Targets, 확률 분포)으로 맞추도록 학습

- Student 모델은 직접 데이터 레이블뿐 아니라 Teacher 모델의 "암묵적 지식"까지 학습하게 된다.

 

특징

- 작은 모델도 큰 모델 수준의 성능에 가까워질 수 있음.

- 배포 환경이 제한적일 때 유용.

- ex. MobileNet(경량화 CNN), TinyBERT(경량화 Transformer)


전이학습 (Transfer Learning)

- 이미 학습된 모델의 지식(특히 feature extractor 부분)을 새로운 데이터 / 문제에 활용하는 방법

- 보통 데이터가 적을 때 큰 효과를 발휘

 

방법

- 사전학습(Pretrained) 모델을 가져온다. (ex. ImageNet 학습된 ResNet)

- 모델의 초기 레이어(Feature extractor)는 고정한다.

- 출력층(Classifier)만 새로운 데이터에 맞게 학습한다.

 

특징

- 학습 속도가 빠르고, 데이터가 적어도 성능이 안정적임.

- NLP에서는 BERT, GPT 계열 모델을 fine-tuning하여 많이 사용됨.


파인튜닝 (Fine-tuning)

- 사전학습 모델 전체 또는 일부를 새로운 데이터셋에 맞게 추가 학습시키는 것

- 전이학습의 확장 개념

 

방법

- 사전학습 모델을 불러온다.

- 전체/부분 레이어의 학습률을 조정하여 새로운 데이터에 맞게 학습시킨다.

- 보통 초기 레이어는 feature를 잘 잡고 있어서 학습률을 낮게, 후반 레이어는 새 task에 맞게 학습률 높게 설정

- 특정 task 성능을 극대화 가능

 

특징

- 전이학습보다 데이터 의존성이 높음

- 과적합 방지 필요 (데이터 적으면 overfitting 주의)

반응형

'개발 > Python' 카테고리의 다른 글

시계열 분석  (0) 2025.11.29
최우추정량 (MLE, Maximum Likelihood Estimator)  (0) 2025.11.26
통계 기본  (0) 2025.11.26
파생변수 vs 요약변수  (0) 2025.11.25
표본조사와 표본 추출 방법  (0) 2025.11.23

댓글