Deep_Learning

The Strategy of Transfer Learning & Fine Tuning

MoonLight314 2023. 9. 2. 00:00
728x90

0. Transfer Learning

  • 다른 Dataset으로 이미 학습된(Pre-Trained) Model을 가져와서 내가 하고자 하는 작업에 적용하는 것을 말합니다.

1. Fine Tuning

  • Pre-Trained Model은 다른 Dataset에서 학습된 Weight & Bias를 가지고 있기 때문에 새롭게 적용하려는 작업에 잘 맞지 않을 수가 있다.
  • Pre-Trained Model을 새로운 작업에 맞게 Weight & Classifier를 새롭게 조정하는 작업을 Fine Tuning이라고 한다.
  • Pre-Trained Model 전체를 다시 Tuning할 지 혹은 일부만 Tuning할 지는 여러가지 상황을 고려하여 선택한다.

3. Dataset의 특성과 양에 따른 Fine-Tuning 전략

3.1. Quadrant 1

  • Large Dataset이 있지만, Dataset의 특징이 Pre-Trained Model이 학습한 Dataset의 특성과 다른 경우.
  • 이런 경우에는 Strategy 1을 적용하면 된다.
  • 비록 Dataset의 특성이 다르지만, 학습할 수 있는 Dataset이 많이 있으므로, Pre-Trained Model의 구조만 차용하고 Parameter는 새롭게 학습하면 된다.

3.2. Quadrant 2

  • Large Dataset & Dataset의 특징이 Pre-Trained Model이 학습한 Dataset의 특성과 유사한 경우.
  • 이 경우에는 어떤 방법을 사용해도 별 상관없지만, Strategy 2를 사용하면 된다.

3.3. Quadrant 3

  • Dataset도 부족하고 게다가 Dataset의 특징이 Pre-Trained Model이 학습한 Dataset의 특성과도 다른 최악의 경우이다.
  • Strategy 2를 사용하여, 적절한 수의 Freeze Layer를 찾아야 한다.
  • 또한, Dataset의 수가 부족하므로, Data Augmentation을 사용해야 한다.

3.4. Quadrant 4

  • Dataset의 수는 적지만, Dataset의 특징이 Pre-Trained Model이 학습한 Dataset의 특성과 유사한 경우.
  • 이런 경우에는 Strategy 3이 가장 적당하다.
  • 기존 Conv. Layer를 Feature Extractor로 사용하고, Classifier만 학습하면 된다.

728x90

'Deep_Learning' 카테고리의 다른 글

Age / Gender Detection Deep Learning Model  (0) 2023.09.10
Mask Detection Deep Learning Model  (0) 2023.09.09
Tensorflow Certificate  (0) 2023.09.01
All About LSTM  (0) 2023.08.30
BERT Text Classification  (0) 2023.08.29