이미지 분류기 모델을 응용하여 개와 고양이를 분류하는 모델을 만들어 본다. 이를 응용하여 사람이 개와 고양이 중 어느쪽을 더 닮았는지 알아보는 재미있는 어플리케이션을 구현해 본다.
- | 목차 | ⏲ 400분 |
---|---|---|
14-1 | 🐶 거울아 거울아, 나는 멍멍이 상이니, 아니면 냥이 상이니? | 5분 |
14-2 | 내가 직접 만드는 강아지 고양이 분류기 (1) 이미지 분류 문제 | 5분 |
14-3 | 내가 직접 만드는 강아지 고양이 분류기 (2) 모델이 학습하려면? 공부할 데이터를 줘야지! | 10분 |
14-4 | 내가 직접 만드는 강아지 고양이 분류기 (3) 데이터가 있다고 끝은 아니야, 이쁘게 다듬는 작업은 필수! | 10분 |
14-5 | 내가 직접 만드는 강아지 고양이 분류기 (4) 데이터가 준비되었으니, 이제 모델을 만들어보자 | 20분 |
14-6 | 내가 직접 만드는 강아지 고양이 분류기 (5) 모델아 모델아, 데이터를 먹고 똑똑해지렴! | 30분 |
14-7 | 내가 직접 만드는 강아지 고양이 분류기 (6) 모델은 얼마나 똑똑해졌을까? 확인해 보자! | 20분 |
14-8 | 내가 직접 만들지 않고 가져다 쓰는 강아지 고양이 분류기 (1) 어려운 문제는 직접 풀지 말자, 똑똑한 누군가가 이미 풀어놨을 테니! | 20분 |
14-9 | 내가 직접 만들지 않고 가져다 쓰는 강아지 고양이 분류기 (2) 아주 똑똑한 모델을 간단히 가져오는 방법 | 20분 |
14-10 | 내가 직접 만들지 않고 가져다 쓰는 강아지 고양이 분류기 (3) 모델의 마지막 부분만, 내 입맛대로 재구성하기 | 20분 |
14-11 | 내가 직접 만들지 않고 가져다 쓰는 강아지 고양이 분류기 (4) 거인의 어깨에 올라타서 예측하니, 더 잘 예측할 수밖에! | 20분 |
14-12 | 내가 직접 만들지 않고 가져다 쓰는 강아지 고양이 분류기 (5) 잘 학습된 모델은 저장해두고, 언제든 꺼내 쓰도록 하자! | 10분 |
14-13 | 내가 직접 만들지 않고 가져다 쓰는 강아지 고양이 분류기 (6) 거울아 거울아, 나는 멍멍이 상이니, 아니면 냥이 상이니? | 30분 |
14-14 | 프로젝트: 새로운 데이터셋으로 나만의 이미지 분류기 만들어보기 | 180분 |
- 머신러닝 또는 딥러닝을 활용해서 데이터를 분류(classification)하는 문제를 풀어봤다.
- 텐서플로우(TensorFlow)가 무엇인지 알며, 이를 활용해서 머신러닝/딥러닝 문제를 풀어봤다.
- 이미지 분류를 하는 CNN 계열의 Backbone 모델을 다뤄보지 않았다.
- python의 기본적인 문법을 알며, 함수 또는 클래스를 다룰 수 있다.
- 이미지를 분류할 때 이미 잘 학습되어 있는 모델을 사용한다는 아이디어를 떠올릴 수 있다.
- 사전학습 모델인 Backbone 모델의 종류와 개념을 알고, Transfer Learning의 개념을 설명할 수 있다.
- VGG, ResNet과 같은 기본적인 Backbone 모델을 불러와서 사용할 수 있다.
- Backbone 모델을 원하는 레이어(layer)만큼 새로 학습시켜서 사용할 수 있다.
- Backbone 모델을 Transfer Learning 시킴으로써 원하는 이미지를 분류시킬 수 있다.
- 이미지 분류 문제
- 모델이 학습하려면? 공부할 데이터를 줘야지!
- 데이터가 있다고 끝은 아니야, 이쁘게 다듬는 작업은 필수!
- 데이터가 준비되었으니, 이제 모델을 만들어보자
- 모델아 모델아, 데이터를 먹고 똑똑해지렴!
- 모델은 얼마나 똑똑해졌을까? 확인해 보자!
- 어려운 문제는 직접 풀지 말자, 똑똑한 누군가가 이미 풀어놨을 테니!
- 아주 똑똑한 모델을 간단히 가져오는 방법
- 모델의 마지막 부분만, 내 입맛대로 재구성하기
- 거인의 어깨에 올라타서 예측하니, 더 잘 예측할 수밖에!
- 잘 학습된 모델은 저장해두고, 언제든 꺼내 쓰도록 하자!
- 거울아 거울아, 나는 멍멍이 상이니, 아니면 냥이 상이니?
- Step 1. 데이터셋 내려받기
- Step 2. 데이터셋을 모델에 넣을 수 있는 형태로 준비하기
- Step 3. 모델 설계하기
- Step 4. 모델 학습시키기
- Step 5. 모델 성능 평가하기
- Step 6. 모델 활용하기