1. AI학습모델 실습의 범위
여기에서는 사자,호랑이 두가지 동물들의 이미지를 학습시킨 후 비슷한 동물들의 사진을 주었을 때 어떤 동물인지 AI가 판정하도록 하는 간단한 AI 모델을 만들어 보고자 한다.
2. 데이터의 수집
원하는 목적에 따라 학습용데이터를 준비해야 하는데, 여기에서는 위 두가지 동물들에 대한 사진들을 구글Image에서 검색하여 다운로드 받아 사용한다. Image를 고를 때에 되도록 이면 해당 동물의 특징을 잘 나타내는 것을 고르고 이미지내에 해당 동물이외의 다른 요소가 너무 많이 포함되지 않도록 주의해야 한다.
3. 데이터 정리
높은 인식율을 위해서는 사진에서 혼동할 수 있는 부문을 정리하고 원하는 부분만을 자르거나 컬러로 인한 혼동을 줄이기 위해 이미지를 흑백으로 바꾸고 이미지 사이즈를 동일하게 조정하는 등 여러가지 사전작업을 하게 되지만 여기에서는 편의를 위해 원본 이미지 파일을 그대로 사용했다.
4. 클래스 분류 및 데이터 업로드
분류하고자 하는 명칭을 Class명 부분에 입력하고, 준비된 이미지파일들을 Drag & Drop 방식으로 이미지 업로드 영역에 넣어 준다.
여기에서 주의해야 할 것은 준비된 동물별 사진을 전부 업로드 하지 말고 일부는 검증단계를 위해 남겨 놓아야 한다는 것이다. 즉, 학습할 때 사용한 이미지를 검증단계에서 재사용하게 되면 당연히 해당 클래스로 100% 분류될 것이고 학습이 제대로 되었는지 여부를 알 수 없게 된다. 따라서 준비된 데이터의 85%정도는 학습용으로 사용하고 나머지 15%정도 검증용으로 남겨 둔다.
5. 학습시키기
데이터를 업로드하면 다음과 같이 "Train Model" 버튼이 활성화 되고 Train작업을 개시할 수 있다.
여기에서 Advanced 버튼을 클릭하면 Training작업에 대한 Option을 조정할 수 있다. 각각의 의미는 다음과 같지만 기본적으로 표준값으로 설정되어 있으므로 조정없이 일단 실행시켜 보아도 된다.
-Epochs : 전체 데이터셋을 몇번 반복 학습을 시킬 것인지 지정.
-Batch Size : 1회 작업에 얼마만큼의 데이터를 사용할 것인지 지정. 즉 100개의 데이터셋을 가지고 Epochs =50 , Batch size=20이라면 총250회의 Training작업을 실행하게 된다.
-Learning Rate : 얼마나 촘촘하게 학습을 시킬 것이지 지표로서 이 숫자가 작을수록 정밀하지만 Training시간이 증가하게 된다. 통상 0.01이 기본적인 수치라 한다.
6. Preview로 검증하기
Traing작업을 완료한 후 Preview 메뉴를 선택하고 Input방식을 File로 선택하면 학습된 모델에 대한 검증작업을 해 볼 수 있다.
Training작업에 사용되지 않았던 검증용 사진을 업로드하니 위와 같이 정확히 판정한다.
비슷한 동물의 사진들을 업로드하니 확신에 찬 확률로 판정해 버린다.
전혀 관련이 없어 보이는 이미지들을 업로드하니 에매한 수치로 판정하지만 그래도 판정은 한다.
'메이킹프로젝트 > AI 툴과 프로젝트' 카테고리의 다른 글
미디어파이프(MediaPipe)로 AI python프로그램 개발하기 (0) | 2021.08.19 |
---|---|
구글 AI 프레임워크 미디어파이프(MediaPipe) 소개 (1) | 2021.08.02 |
Teachable Machine 재미있는 개발 프로젝트들 (0) | 2021.03.12 |
Teachable Machine 에서 제작된 AI학습모델로 웹서비스 만들기 (0) | 2021.03.10 |
Teachable Machine : 초간편 AI웹서비스 (0) | 2021.02.28 |