전이학습(Transfer Learning)

2024. 6. 6. 12:03딥러닝 모델: 파이토치

♣ Transfer Learning

Downstream task = 현재 풀고자 하는 문제

Pre-trained task = Downstream task와 비슷하지만 다른 문제 

 

Downstream task에서 데이터가 부족한 경우, 데이터가 풍부하면서도 Downstream과 어느 정도 연관된 Pre-training task에 모델을 사전학습시켜서 Downstream task에 도움이 될 수 있는 feature들을 모델에 학습시킨다. 

즉 pre-training task에 대해 이미 학습된 모델이 있을 때, 해당 모델의 weight로 초기화하여 downstream task에 대해서 학습(fine-tuning)하는 방법이다. 

 

전이학습을 사용하는 이유

1. Random하게 초기화해서 학습하는 것보다 학습 수렴 속도가 빠르다.

2. Downstream task에 대한 data가 적을 때 pre-trained된 모델로 fine-tuning했을 시 성능이 더 높다. 

3. pre-trained된 모델이 unseen data에 대해서 일반화 성능이 더 높다. 

 

인공신경망이 데이터의 특징을 학습할 때, input layer에 가까운 lower layer들에서는 보다 일반적이고 독립적인 특성을 학습한다. 이와 달리, prediction layer에 가까운 higer layer들에서는 class와 task와 긴밀하게 연결되어 있으며 보다 추상적인 특징을 학습한다.