Machine Learning/Machine Learning

[Machine Learning] Transfer Learning

데이터 세상 2021. 3. 12. 18:20
728x90
반응형

Transfer Learning

학습 데이터가 부족한 분야의 모델 구축을 위해 데이터가 풍부한 분야에서 훈련된 모델을 재사용하는 학습 기법

  • 특정한 task(classfication, detection, segmentation 등)에 대하여 학습된 딥러닝 모델을 다른 task로 transfer하여 해당 모델을 사후적으로 학습하는 개념
  • 특정 분야에서 학습된 신경망의 일부 능력을 유사하거나 전혀 새로운 분야에서 사용되는 신경망의 학습에 이용
  • 이미 학습된 모델의 weight들을 transfer하여 자신의 model에 맞게 학습 시키는 방법

 

기존의 만들어진 모델을 사용하여 새로운 모델을 만들 시 학습을 빠르게 하며, 예측을 더 높이는 방법

  • 적은 데이터만을 학습시킬 경우 overfitting 가능성 증가
  • 많은 dataset에서 학습시킨 정보를 통해 다른 dataset에 적용할 경우 overfitting 줄일 수 있음
Traditional Supervised Learning Transfer Learning

 

Transfer Learning 이점

이미 잘 훈련된 모델이 있고, 만드려는 모델과 유사한 문제를 해결하는 모델일 경우에는 Transfer Learning 사용

  • 이미 학습된 모델을 사용해서 문제 해결 가능
  • 이미 학습된 많은 모델은 적용하려는 데이터가 학습 데이터와 같은 분포를 가진다고 가정으로 했을 때 효율적 데이터의 데이터의 분포가 바뀌어 기존의 통계적 모델을 새로운 데이터로 다시 만들어야 할 때
  • 복잡한 모델일 때 학습 시간이 오래 걸리고 학습 시키는데 어려운 문제점을 해결
  • layer의 개수, activation function, hyper-parameters 등 모델을 구성하는데 고려해야할 사항이 많으며, 직접 모델을 구성하여 학습 시킨다는 것은 많은 시도 필요

 

Fine-Tuning

  • 기존에 학습되어져 있는 모델을 기반으로 아키텍쳐를 새로운 목적에 맞게 변형하고 이미 학습된 모델의 weights로부터 학습을 업데이트하는 방법
  • 모델의 파라미터를 미세하게 조정하는 행위

 

※ 주의할 점

완전히 랜덤한 초기 파라미터를 쓴다거나 가장 아래쪽의 레이어의 파라미터를 학습하게 되면

overfitting 발생하거나 전체 파라미터가 망가지는 문제 발생

 

Strategy 1: 전체 모델을 새로 학습

  • 사전학습 모델의 구조만 사용하면서, 자신의 데이터셋에 맞게 전부 새로 학습시키는 방법
  • 큰 사이즈의 데이터셋이 필요

 

Strategy 2: Convolutional base 일부분은 고정, 나머지 layer와 Classifier 새로 학습

  • 낮은 레벨의 계층은 일반적인 특징(독립적인 특징)을 추출하고, 높은 레벨의 계층은 구체적이고 특유한 특징(Task에 따라 달라지는 특징)을 추출
  • 데이터 셋이 작고 모델의 파라미터가 많다. -> 오버피팅 예방을 위해 더 많은 layer를 고정
  • 데이터 셋이 크고 모델이 작다. -> 더 많은 계층을 학습시켜 적합한 모델로 발전가능하다.

 

Strategy 3: Convolutional base는 고정, Classifier만 새로 학습

  • 컴퓨팅 연산 능력이 부족하거나, 데이터 셋이 너무 작을 때,
  • 적용하려는 Task가 학습모델이 이미 학습한 데이터 셋과 매우 비슷할 때

 

Transfer Learning 종류

 

적은 양의 데이터에서 성능을 증진시킬 수 있는 방법

Transfer Learning

  • 학습 데이터가 부족한 분야의 모델 구축을 위해 데이터가 풍부한 분야에서 훈련된 모델을 재사용하는 학습 기법

Semi-Supervised Learning

  • 준지도 학습
  • 목표값이 표시된 데이터와 표시되지 않은 데이터를 모두 훈련에 사용하는 것
  • 정답 데이터를 수집하는 데이터 레이블링 작업에 소요되는 많은 자원과 비용을 줄이기 위해
  • 레이블된 데이터가 적을 때 레이블이 없는 데이터를 사용해 분류기의 성능을 향상시키기 위해

Weakly-Supervised Learning

 

Self-Supervised Learning

 

Activate Learning

 


References

728x90
반응형