1. Teachable Machine (티처블머신)
- 티처블머신(Teachable Machine)은 구글에서 개발한 머신러닝 모델을 쉽게 만들고 사용할 수 있도록 도와주는
온라인 도구입니다.
티처블머신을 사용하면 이미지, 소리, 자세 등의 입력 데이터를 학습시켜 컴퓨터 비전, 음성인식, 자세인식 등 다양한
분야에서 사용할 수 있는 머신러닝 모델을 쉽게 만들 수 있습니다.
티처블머신은 사용자가 웹캠으로 사물의 이미지나 자세를 촬영하거나, 마이크로 소리를 입력하여 머신러닝 모델을
학습시킬 수 있습니다.
학습된 모델은 텍스트, 이미지, 소리 등의 입력 데이터를 분석하고, 사용자가 지정한 클래스로 분류할 수 있습니다.
예를 들어, 티처블머신을 사용하여 강아지와 고양이의 이미지를 학습시킨 후, 웹캠으로 찍은 동물의 이미지를 입력
하면 학습된 모델이 강아지인지 고양이인지 자동으로 분류할 수 있습니다. 이와 같은 방식으로 티처블머신을 사용
하면 비전, 음성, 자세 등 다양한 분야에서 머신러닝 모델을 쉽게 만들고 사용할 수 있습니다.
출처 : https://www.youtube.com/watch?v=T2qQGqZxkD0&t=67s
2. 티처블머신 사이트 들어가기.
https://teachablemachine.withgoogle.com/
Teachable Machine
Train a computer to recognize your own images, sounds, & poses. A fast, easy way to create machine learning models for your sites, apps, and more – no expertise or coding required.
teachablemachine.withgoogle.com

3. Imge, Audio, Pose Project
- imge, audio, pose 활용 모델 만들기

- imge 프로젝트를 시작
- 각 Class 에는 머신러닝 지도학습을 위한 데이터의 라벨이름을 정해준다.
- 코로나19로 인하여 마스크 유무를 판단하는 인공지능 카메라를 만들어 보자

※ 머신러닝에 대해 알아보고 가기.
1. Machine Learning (머신러닝)
- 데이터를 학습하여 분류하거나 값을 예측하는 것.
- 머신러닝 종류 지도학습, 비지도학습, 강화학습
2. Supervised Learning (지도학습)
- 예를 들어 고양이와 강아지 사진을 주고 사진데이터에 고양이, 강아지라는
정답(label)을 주고 학습하는 방식.
- 지도학습 분류 (classification), 회의 (regression)
가. 분류 : 데이터를 하나의 분류로 나타냄.
나. 회귀 : 데이터의 특징을 가지고 결과를 예측하는 것.

3. Unsupervised Learning (비지도학습)
- 데이터에 따로 답(label)을 알려주지 않고, 컴퓨터 스스로 비슷한 데이터들을
군집화 하는 것
- 예를들어 고양이 사진데이터와 강아지사진데이터에 정답을 주지 않고 비슷한
단위로 군집화
- 사자의 사진을 입력했을때 비슷한 부류의 군집으로 예측하여 나타냄.
4. Reinforcement Learning (강화학습)
- 상벌점제 처럼 보상과 벌을 통해 강화학습으로 최적의 예측을 얻어내는 것.
4. 데이터획득
- 인공지능에서 가장 중요한 부분은 바로 데이터
- 양질의 데이터가 많으면 많을수록 인공지능 판단과 예측이 좋아짐.
- 아래 Crop 버튼을 통해 학습하고자 하는 이미지를 확대하여 학습효과를 높여보자.
- 컴퓨터는 배경을 포함한 모든 부분을 데이터 픽셀로 인식
- 각 class에 label 이름을 붙여주고 100장 정도의 가위, 바위, 보 데이터를 수집하자
- 이때 다양한 각도로 흔들리지 않은 데이터 사진을 획득할 것.
데이터 획득
- 만약 데이터 사진중에 흔들리거나 잘못된 사진이 있을때는 삭제해 주어야 인공지능 인식률을 높일 수 있다.
- 데이터 정제
데이터 정제는 데이터를 수집하고 저장한 후, 분석이나 모델링을 할 때 데이터의 질을 향상시키기 위해 필요한 작업
입니다.
데이터 정제란 데이터의 누락, 오류, 중복, 이상치 등의 문제를 해결하여 데이터의 정확성, 일관성, 완전성을 보장하는
과정입니다.
일반적으로 데이터 정제는 다음과 같은 과정을 포함합니다.
ㅇ 결측치 처리 : 데이터가 누락된 경우, 해당 부분을 다른 값으로 채우거나 삭제하는 작업입니다.
ㅇ 이상치 처리 : 이상치는 전체 데이터 분포와 다른 값으로 데이터 분석에 방해가 될 수 있습니다. 이상치를 식별
하고 수정하거나 제거하는 작업입니다.
ㅇ 중복 데이터 처리 : 중복된 데이터는 분석 결과에 영향을 미칠 수 있으므로, 중복된 데이터를 찾아서 삭제하는
작업입니다.
ㅇ 데이터 형식 일치화: 데이터는 여러 형식으로 저장될 수 있으므로, 분석에 필요한 데이터 형식으로 통일시키는
작업입니다.
데이터 정제를 통해 데이터의 품질을 향상시키면 데이터 분석이나 모델링의 정확성이 향상됩니다.

- 마지막 class에 가위, 바위, 보 이외에 다른 무의미한 의미없는 데이터를 수집하여 정확하게 가위, 바위, 보를 예측할 수
있도록 한다.
- 가위, 바위, 보 데이터 보다 더 많은 데이터를 수집하도록 하자 !
5. 모델링
- Train Model 버튼을 눌러 데이터를 학습하여 모델을 만들어 보자.
- Training 과정에서 Epochs, Batch Size, Learning Rate 값 설정을 볼수 있다.
- 모델 평가로 데이터 학습이 잘 이루어 졌는지 확인해 보자.
■ Epochs
- 전체 데이터가 신경망을 통과하는 횟수
■ Batch Size
- 데이터 사이즈, 메모리의 한계와 속도 문제로 대부분의 경우 한번의 epoch에서 모든 데이터를
한꺼번에 신경망을 통과할 수 없어서, 데이터를 나누어서 실행
■ Learning Rate (학습률)
- 현재점에서 다음점으로 얼마나 이동할지 세세한 학습을 의미한다.
※ 예를 들면 빨강과 노랑의 경계점 ( 주황색을 어느정도를 빨강으로 인식할 것인가 )
6. 모델 활용 프로젝트
- Export Model 버튼을 통해 학습된 모델을 3가지 형태로 사용할 수 있도록 모델을 제공
- "Tensorflow.js" : 자바스트립트 머신러닝 라이브러리를 활용할 수 있도록 학습된 모델을 URL 주소로 업로드 해줌
- "Tensorflow" : 파이썬을 활용할 수 있도록 모델파일과 label 파일을 다운받을 수 있음.
- "Tensorflow Lite" : 어플리케이션 활용시
- 파이썬에서 Tensorflow keras 라이브러리를 활용하여 적용 가능.
- keras_model.h5 : 데이터 학습으로 만들어진 모델
- label.txt : 각 class 레이블 명이 적힌 텍스트 파일
'인공지능 기초' 카테고리의 다른 글
컴퓨터 비전 cv2.putText 활용 하여 label과 score 글씨 출력하기. (1) | 2023.05.25 |
---|---|
티처블머신(Teachable Machine) 모델 파이썬 openCV로 불러오기 (1) | 2023.05.10 |
아두이노와 파이썬 시리얼 통신 (0) | 2023.03.29 |
아나콘다 Prompt 가상환경 만들기 (0) | 2023.03.28 |
프롬프트 명령어 요약 (0) | 2023.03.21 |