전이 학습
기존의 머신러닝에서 문제점
- 과업에 맞춰 모델과 데이터를 만들어야 함
- 모델 만들기 → 어렵다
- 데이터 수집 및 레이블링 → 어렵고 비용이 큼
- 딥러닝은 매우 많은 데이터가 필요
전이 학습 Transfer Learning
- 근원 문제 source에 학습시킨 모형을 새로운 대상 문제 target에 적용하는 것
- 사전 학습 pretraining: 근원 문제에 학습 시키는 것. 많은 데이터를 사용
- 미세 조정 fine tuning: 대상 문제에 학습 시키는 것. 적은 데이터를 사용
- 무작위로 초기화된 모형을 처음부터 학습시키는 것보다, 다른 문제에라도 학습시킨 모형을 추가 학습시키는 것이 학습에 유리할 가능성이 높음
- 이미지 처리 과제는 비슷한 특징들을 공유하므로 무 작위로 초기화된 것보다는 유사할 가능성이 높음
- 일반적으로 근원 문제에 학습시킬 때보다 작은 학습률을 사용
- 기초 모델 foundation model: 컴퓨터 비전이나 자연어 처리처럼 넓은 종류의 분야에 대해 적용할 수 있는 모델
전이학습의 효과
- 만약 기존의 다른 문제에 학습시킨 모형을 약간의 미세 조정으로 높은 성능을 낼 수 있다면 데이터와 계산 비용을 절감할 수 있음
- 성능은 높아지고 활용의 난이도가 낮아짐
- 사전학습된 모델을 가져다가 쓰면 내가 하고자 하는 과업에 맞춰 약간의 데이터만 모아서 미세 조정만 해주면 됨
- 어떤 경우에는 미세조정 없이 쓸 수 있는 경우도 있음
- 비전문가도 높은 성능의 모델을 쉽게 활용할 수 있게 된 것
전이 학습의 방식
- 사전 학습된 부분을 포함해서 전체적으로 미세 조정
- 사전학습된 모형의 전반부를 특징 추출기로 사용 + 후반부에 분류기만 추가하고 추가된 부분만 학습
- 사전학습된 모형을 추가 학습 없이 그대로 사용(zero-shot learning)
언제 어떤 방법을 사용해야 하나?