1 minute read

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만 학습하면 된다.