딥러닝 모델의 정확도를 높이기 위해선
대학원 이상의 전문지식을 요한다.
따라서 응용프로그래머는 잘 만들어진 검증된 모델을 가져다 쓴다는 개념이
Transfer Learning 이라고 한다.
사용법은 사이드바 딥러닝 부분에 자세히 설명해놓았기 때문에,
여기선 전체적인 그림만 그린다
1. 필요한 라이브러리를 임포트
2.Building the model (Loading the pre-trained model)
학습이 잘 된 모델의 베이스 모델만 가져온다.(헤드모델은 빼고)
3. Freezing the base model
가져온 베이스 모델 부분은 이미 특징을 잘잡게 학습되어있기 때문에
재학습 하지않도록 사전작업을 하는것
4.Defining the custom head for our network
내 문제에 맞게 사용자 정의 모델 헤드를 만든다.
5.Defining the model
가져온 베이스모델과 내가만든 헤드모델을 합친다.
6.컴파일한다.
7.이미지 크기를 조정하거나 증강한다.
이미 넘파이로 피처 스케일링된 이미지라면 rescale은 필요없다.
리사이징 할때는 모델에 맞는 규격이 있으니 주의
For example: MobileNet (architecture that we use) supports: (96, 96), (128, 128), (160, 160), (192, 192), (224, 224).
잘못 입력했을시 규격을 표시해준다.
8.완성된 모델로 학습
9.평가
10. Fine tuning (성능개선의 여지가 있는지 확인)
파인 튜닝 : 섬세한 튜닝
Compiling the model for fine-tuning
Fine tuning
Evaluating the fine tuned model
test