본문 바로가기
Data Science

Transfer Learning

by leanu 2024. 11. 20.

What is Transfer Learning?

Transfer Learning은 기존에 학습된 모델(보통 대규모 데이터셋으로 학습된)을

다른 유사한 문제에 재사용하는 머신러닝/딥러닝 기법입니다.

특히, 소규모 데이터셋으로 학습해야 하는 문제에서 강력한 성능을 발휘합니다.

이 방식은 기본적으로 모델이 학습한 지식을 새로운 작업에 "전이"(transfer) 하는데 초첨을 맞춥니다.

 

Transfer Learning 작업 흐름

  1. 문제에 맞는 사전 학습된 모델 선택 (이미지 분류 문제는 ResNet, NLP 문제는 BERT 등)
  2. Feature Extraction
    1. 모델의 하위 계층에서 추출된 특성을 새 데이터에 활용
    2. 기존 모델의 가중치를 고정(frozen)하고 새로운 데이터에 적합한 classifier 계층만 학습
  3. Fine-Tuning
    1. 기존 모델의 일부 또는 전체 계층을 재학습. 주로 데이터가 충분한 경우 사용
    2. Learning Rate를 작게 설정하여 기존에 잘 학습된 가중치를 크게 변형하지 않도록 함.
  4. 모델 평가 및 성능 개선
    1. 전이학습 후 모델을 검증 데이터셋으로 평가하며, 필요시 하이퍼 파라미터를 조정

 

Transfer Learning의 장단점

  • 장점
    • 데이터 효율성 : 소규모 데이터셋에서도 높은 성능을 얻을 수 있음
    • 빠른 학습 : 모델이 이미 학습한 가중치를 재사용하기 때문에 훈련시간 단축
    • 컴퓨팅 리소스 절약 : 대규모 모델을 처음부터 학습할 필요가 없음
    • 일반화 능력 : 유사한 도메인에서 높은 성능을 발휘
  • 단점
    • 도메인 불일치 : 사전 학습 데이터와 새로운 데이터가 너무 다를 경우 성능 저하 가능
    • Overfitting : 소규모 데이터에서 fine-tuning 시 overfitting 가능
    • 추론 비용 증가 : 사전 학습된 모델의 크기가 크면 추론 시간이 길어질 수 있음
    • 가중치 재설정 어려움 : 어떤 계층을 고정하고 어떤 계층을 재학습할지 결정하는 것이 어려움

 

 

Transfer Learning의 주요 사례

  • 컴퓨터 비전 : 사전 학습된 CNN 모델 (ResNet, VGG, EfficientNet)을 사용해 이미지 분류, 물체 탐지, 세분화 문제해결
  • 자연어 처리 (NLP) : BERT, GPT 같은 대규모 언어 모델을 사용해 문서 분류, 감정 분석, 질문 응답 시스템 등에 활용
  • 음성인식 및 신호처리 : Pre-trained audio model을 사용해 음성 감정 분석, 음성명령인식 수행

 

댓글