[DL] 전이 학습이란?

myeongwang·2023년 12월 26일
0

Pretrained Model

  • Pretrained model은 대규모 데이터셋을 기반으로 학습된 모델로, 학습한 task에 대한 일반적인 지식을 갖고 있음
  • 최근 GPT, PALM, Stable-Diffusion 등 대규모 데이터로 학습된 pretrained model이 등장하면서 중요성이 대두되고 있음

전이 학습이란?

  • 사전 학습된 모델 (pretrained model)의 지식을 다른 task에 활용하는 것
  • 모델이 이미 학습한 일반적인 지식을 기반으로 더 빠르고 효과적이게 새로운 지식을 학습할 수 있음

Fine Tuning이란?

  • 전이 학습의 한 방법
  • Pretrained model을 그대로 혹은 layers를 추가한 후 새로운 작업에 맞는 데이터로 모델을 추가로 더 훈련시키는 방법

Domain Adaptation이란?

  • 전이 학습의 한 방법
  • A 라는 도메인에서 학습한 모델을 B라는 도메인으로 전이하여 도메인 간의 차이를 극복하는 것이 목적
    • 도메인이란 데이터가 속하는 분포 (e.g. 도메인 A : 실제 사진, 도메인 B : 애니메이션) General classification

유사한 다른 방법들

  • Multi-task learning : 하나의 모델을 사용하여 여러 개의 관련된 작업을 동시에 학습하면서 공통으로 사용되는 특징을 공유하는 학습 방식
  • Zero-shot learning : 기존에 학습되지 않은 새로운 클래스나 작업에 대해 예측을 수행하는 기술 (e.g. CLIP)
  • One/few-shot learning : 하나 또는 몇 개의 훈련 예시를 기반으로 결과를 예측하는 학습 방식

전이 학습 전략

도메인이 비슷할 때, dataset 크기에 따른 전략

  • 비교적 작을 때 : 마지막 classifier만 추가 학습 (나머지 freeze)
    • ∵ 데이터셋의 크기가 비교적 작기 때문에, 기존의 학습한 일반적인 지식을 전달하는데 집중
  • 비교적 클 때 : classifier 뿐만 아니라, 다른 일부 layers도 추가 학습
    • ∵ 기존의 학습한 일반적인 지식을 유지하며, 몇 개의 layer만을 추가 학습시켜 specific한 새로운 데이터셋에 대한 지식을 학습

도메인이 매우 다를 때, dataset 크기에 따른 전략

  • 꽤 클 때 : 꽤 많은 layers를 학습해야 함.

    • ∵ 도메인이 매우 다를 때, pretrained model이 이미 가지고 있는 지식을 꽤 많이 수정해야 하기 때문
  • 매우 작을 때: 학습 불가(도메인도 다르고, 데이터도 적다면 모델에서 지식 추출 어렵)

Learning rate 전략

  • Pretrained model의 일반적인 지식을 크게 업데이트 하지 않기 위해 작은 learning rate으로 학습
    • ※ 단, 마지막 FC Layer 만 업데이트 하는 경우 learning rate에 성능이 크게 영향을 받지 않음

Pretrained Model Community

  • Timm for CV
  • Hugging Face for NLP,CV ...
profile
Real Cryptocurrency Trader & AI Engineer LV.0

0개의 댓글