쑤쑤_CS 기록장
Chapter 3: Training the Image Classifier _ 예제 결과 공유 본문
Chapter 3: Training the Image Classifier _ 예제 결과 공유
(╹◡╹)_ 2020. 7. 20. 17:29챕터3의 이론은 다음 글에서 보다 자세히 다루고,
이번 글에서는 xCode와 ML을 이용한 예제에 대한 결과를 공유하고자 한다.
* The dataset
snacks 관련된 데이터 zip 파일을 다운받는다.
* Create ML
<예제1> input에 train 데이터를 넣어 모델을 학습Train 시킨다.
이는 가장 기본적이고 간단한 형태로, 뒤이어 나올 예제에서는 이를 바탕으로 활용하고 다양한 옵션을 추가할 것이다.
The window shows Activity:
Step 1 is to extract features, and there's a progress bar to show how many images have been processed:
Step 2 — training — a graph appears, displaying Training accuracy, Validation accuracy for each iteration. And when training is complete, you get a Metrics table listing Precision and Recall for the 20 classes:
결과는 다음과 같다.
Output을 클릭하여 데이터에 없던 새로운 이미지를 넣으면, 학습된 모델이 결과를 출력한다.
새로운 사과 이미지에 대한 100% confidence를 확인할 수 있다.
<예제2> 는 앞의 <예제1>에서 Maximum Iterations 값을 수정한다.
이 값은 기본으로 25값이 적혀있고, 이를 10 으로 줄여 모델 학습을 진행한다.
그 결과 Training accuracy 가 줄고, Validation accuracy 도 줄었다. 그러나 두 값은 더 서로 비슷해졌다.
<예제3>은 <예제1>에서 validation data를 AUTO 가 아닌 실제 validation data로 학습시킨다는 것이다.
수행 결과는 다음과 같다.
<예제4>는 새로운 모델을 만들고 이때 Augmentations에 Crop 옵션을 선택한다.
나머지는 조건은 <예제1>과 동일하게 input에 train 데이터를 설정하고 Train 시킨다.
그 결과는 다음과 같다.
마지막으로 <예제5>는 <예제1>에서 Testing 데이터도 직접 데이터를 넣어서 test를 진행해보는 것 이다.
그 결과, 88%의 accuracy를 가진다.
* Challenge 문제
앞의 예제를 바탕으로 새로운 문제에 적용시켜본다.
Kaggle에서 유명한 cat vs dog 문제의 model 을 생성한다.
큰 상관 없지만, https://www.kaggle.com/chetankv/dogs-cats-images 의 데이터 자료를 사용해보았다.
<활용1> input 데이터에 train 데이터만 넣어 모델을 생성한다.
결과는 다음과 같다.
Output을 선택하여 구글에서 찾은 이미지를 넣어보았다. 많은 학습 data로 train된 모델이다 보니 높은 정확도를 가진다.
<활용2> train과 test 항목 각각에 데이터를 넣어 모델을 학습시켜본다.
결과는 다음과 같다.
3장의 Key Points
-
You can use macOS playgrounds to test out Create ML, and play with the different settings, to create simple machine learning models.
-
Create ML allows you to create small models that leverage the built-in Vision feature extractor already installed on iOS 12+ devices.
-
Ideally, you want the validation accuracy to be similar to the training accuracy.
-
There are several ways to deal with overfitting: include more images, increase training iterations, or augment your data.
-
Precision and recall are useful metrics when evaluating your model.
'IT 지식 기록 > ML for iOS | 인공지능' 카테고리의 다른 글
Chapter 5: Digging Deeper into Turi Create (0) | 2020.07.27 |
---|---|
되돌아보는 챕터 3,4 (0) | 2020.07.21 |
Mac 아나콘다 Command Line 코드로 설치 (0) | 2020.07.20 |
되돌아보는 챕터 1,2 (0) | 2020.07.14 |
Xcode - 앱 이름 바꾸기 (0) | 2020.07.13 |