Transfer Learning은 기존에 학습된 모델(보통 대규모 데이터셋으로 학습된)을
다른 유사한 문제에 재사용하는 머신러닝/딥러닝 기법입니다.
특히, 소규모 데이터셋으로 학습해야 하는 문제에서 강력한 성능을 발휘합니다.
이 방식은 기본적으로 모델이 학습한 지식을 새로운 작업에 "전이"(transfer) 하는데 초첨을 맞춥니다.
Transfer Learning 작업 흐름
- 문제에 맞는 사전 학습된 모델 선택 (이미지 분류 문제는 ResNet, NLP 문제는 BERT 등)
- Feature Extraction
- 모델의 하위 계층에서 추출된 특성을 새 데이터에 활용
- 기존 모델의 가중치를 고정(frozen)하고 새로운 데이터에 적합한 classifier 계층만 학습
- Fine-Tuning
- 기존 모델의 일부 또는 전체 계층을 재학습. 주로 데이터가 충분한 경우 사용
- Learning Rate를 작게 설정하여 기존에 잘 학습된 가중치를 크게 변형하지 않도록 함.
- 모델 평가 및 성능 개선
- 전이학습 후 모델을 검증 데이터셋으로 평가하며, 필요시 하이퍼 파라미터를 조정
Transfer Learning의 장단점
- 장점
- 데이터 효율성 : 소규모 데이터셋에서도 높은 성능을 얻을 수 있음
- 빠른 학습 : 모델이 이미 학습한 가중치를 재사용하기 때문에 훈련시간 단축
- 컴퓨팅 리소스 절약 : 대규모 모델을 처음부터 학습할 필요가 없음
- 일반화 능력 : 유사한 도메인에서 높은 성능을 발휘
- 단점
- 도메인 불일치 : 사전 학습 데이터와 새로운 데이터가 너무 다를 경우 성능 저하 가능
- Overfitting : 소규모 데이터에서 fine-tuning 시 overfitting 가능
- 추론 비용 증가 : 사전 학습된 모델의 크기가 크면 추론 시간이 길어질 수 있음
- 가중치 재설정 어려움 : 어떤 계층을 고정하고 어떤 계층을 재학습할지 결정하는 것이 어려움
Transfer Learning의 주요 사례
- 컴퓨터 비전 : 사전 학습된 CNN 모델 (ResNet, VGG, EfficientNet)을 사용해 이미지 분류, 물체 탐지, 세분화 문제해결
- 자연어 처리 (NLP) : BERT, GPT 같은 대규모 언어 모델을 사용해 문서 분류, 감정 분석, 질문 응답 시스템 등에 활용
- 음성인식 및 신호처리 : Pre-trained audio model을 사용해 음성 감정 분석, 음성명령인식 수행
'Data Science' 카테고리의 다른 글
머신러닝(Machine Learning) (0) | 2024.11.25 |
---|---|
아이겐벡터 (Eigenvector) (2) | 2024.11.17 |
Contrastive Learning (2) | 2024.11.12 |
트랜스포머 (Transformer) 모델 (1) | 2024.11.09 |
딥러닝 처음 접할 때 어려워하는 몇가지 핵심 개념들 (0) | 2024.11.08 |
댓글