일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 프로그래머스코테
- 깃허브
- js코테
- 프론트엔드부트캠프
- 딥러닝
- 패스트캠퍼스부트캠프
- Java
- 프론트엔드
- 개인프로젝트
- 국비지원
- 프론트엔드개발자
- 개발블로그
- JS
- FE
- 프로젝트
- 패캠
- 프로그래머스 JS 코테
- 국비지원취업
- 자바스크립트
- 패캠부트캠프
- 부트캠프
- 패스트캠퍼스
- 프로그래머스
- 미니 프로젝트
- 자바스크립트 코딩테스트
- 코딩테스트
- 개발 프로젝트
- 깃
- 영상처리
- pokeapi
- Today
- Total
가쟤의 해변일기 🐳
[FastAI] 연예인 닮은 꼴 만들기 본문
FE 수료한 곳에서 인공지능 국비지원도 진행해서 수강하고 있다.
이전까지는 티처블 머신으로 손쉽게 인공지능을 접했었다.
이번에는 FastAI를 이용하여 인공지능을 만들어 봤다.
티처블 머신이란?
구글에서 만든 웹기반 인공지능 학습 툴이다.
코딩 없이 누구나 손쉽게 바로 인공지능을 만들 수 있다.
가위바위보 인식기, 닮은 꼴 찾아주는 인공지능 등 데이터를 입력시키면 알아서 학습해서 찾아준다.
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
이 사이트에서 나만의 인공지능을 만들어 볼 수 있다.
물론 이건 맛보기고 내가 직접 코딩을 해야겠지..
앞으로 이 티쳐블 머신처럼 이미 만들어져 있는 인공지능부터 시작해서 하나 하나씩 공부해서 내가 직접 원하는 모델을 구현할 수 있게 공부할 예정이다.
FAST AI
초보자들을 위한 빠르게 만들 수 있는 프레임워크이다.
나중에 파이토치(실전에서 쓰이는 프레임워크)를 사용하게 될 때 아주 도움이 된다고 한다. (기대)
연예인 닮은 꼴 찾는 인공지능 만들기
연예인 사진들을 크롤링 해서 저장하고 (클래스 별로 분류해서) 딥러닝 모델에 학습시킬 것이다.
Fast AI 코드가 정형화가 되어있어서 외울 필요가 없다고 한다.
데이터 구조만 같다면 그대로 복붙해서 사용할 수 있다.
(GPU를 사용해야해서 무료로 사용할 수 있는 구글 colab을 적극 활용하고 있다)
GPU를 사용하면 학습 속도가 매우 빨라진다..ㅎ
한글을 지원하지 않는 패키지를 사용할 일이 많은데 한글을 사용하려면
!apt-get install fonts-nanum -qq -y
!sudo fc-cache -fv
!rm ~/.cache/matplotlib -rf
exit()
이 코드를 실행시켜줘야 한다.
font-nanum은 나눔 폰트이다 ㅋㅋ
cache <- 캐시 얘도 터미널 뚝딱뚝딱 해 봤으면 많이 봤을 것 같다
한글을 지원하지 않는 matplotlib 라는 패키지를 사용할거라 추가된 코드이다.
연예인 사진을 모아보자
HTML/CSS로 어떤 사이트를 클론 코딩 해봤다면 알 것이다.
사진 모으는 작업이 제일 오래 걸린다는 것을.......ㅋ
이 프로젝트의 사진 데이터를 모아보자.
DuckDuckGo라는 사이트를 사용할거다.
구글과 똑같은 UI이고 자동화해서 이미지를 모을 것이다.
즉 DuckDuckGo는 이미지를 크롤링할 수 있게 도와주는 패키지이다.
jmd_imagescraper를 사용해보자.
!pip install -q jmd_imagescraper
이렇게 패키지를 설치할 수 있다.
from jmd_imagescraper.core import *
from jmd_imagescraper.imagecleaner import *
패키지를 로드(import) 했다.
사실 아래의 코드 실행 전에 어떤 함수가 있어야 하는데 강의 자료라 올리진 않겠다.
path = 'images' # 저장 상위 폴더
label = '안효섭' # 저장 하위 폴더 이름
keywords = '안효섭' # 검색 키워드
max_results = 50 # 수집할 사진 개수
image_list = duckduckgo_search_custom(
path=path,
label=label,
keywords=keywords,
max_results=max_results
)
- path : 저장 상위 폴더
- label : 저장 하위 폴더 이름
- keywords: 검색 키워드
- max_results : 수집할 사진 개수
그럼 이렇게 지정한 폴더 아래로 사진이 크롤링된다..! 옹
이 기능이 대박인데... 모았던 이미지를 볼 수 있고 바로바로 지울 수 있다... ㅎㄷㄷ
이게 내장함수? ㅋㅋ
그래서 만든 것...!
하다보니 모든 과정을 올리는건 비효율적인 것 같아 결과와 느낀점 + 핵심, 중요했던 부분만 적으면 될 것 같다.
파인 튜닝 (Fine-tune)
누군가 이미 만든 똑똑한 분류 모델을 조금 수정해서 적용하면 학습 속도도 빨라지고 굳이다..^^
(이미지 분야에서 많이 사용함)
파인튜닝을 이용하여 학습시킨 인공지능이 예측한 사진이 맞는지 봤는데 70퍼의 정도의 정답률을 보였다.ㅋㅋ
이 훈련된 모델을 저장/다운로드 했다가 로드 해서 다시 사용할 수 있다.
여기에 내 사진을 넣고 얼마나 일치하는지 %단위로 출력할 수 있게 만들었다.
아직까진 많은 코딩이 들어가지 않고 프레임워크에 익숙해지는 정도 같아서 빠르게 수강하고 공유할만한 지식을 업로드해야겠다... 적다 보니 이건 블로그에 쓰기 적합하지 않다는 생각이 든다...
아무튼 이런 공부부터 시작했다 라는 성장 일지의 한 부분이 될거다...^^