The Strategy of Transfer Learning & Fine Tunung
The Strategy of Transfer Learning & Fine Tunung
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만 학습하면 된다.