CNS Story/Coding Genius

깜놀! AI로 초간단 '표정분석' 해보기

2020. 4. 23. 13:00


안녕하세요 코지입니다! 이번에는 AI를 실제로 체험해보겠습니다. 2019년 11월, 구글에서 티처블 머신 2.0(Teachable Machine 2.0)을 공개했습니다. 티처블 머신은 구글에서 6살 어린이도 AI 모델을 학습시킬 수 있다고 홍보할 정도로, AI 관련 사전 지식 없이도 매우 간편하고 쉽게 사용할 수 있는 서비스라고 하니, 우리도 함께 체험해 볼까요?


https://teachablemachine.withgoogle.com/


위의 사이트로 들어갑니다. 회원가입, 다운로드도 필요 없으며, 웹에 연결만 되어 있으면 브라우저에서 바로 시작할 수 있습니다. 사용법은 1. Gather ▶ 2. Train ▶ 3. Export의 세 단계로 나누어져 있습니다.



Gather는 모든 AI의 시작 단계로 데이터를 모으는 것입니다. 사실 AI 기술의 발전은 최근의 디지털 기술의 비약적인 발전으로 인해, 과거와는 달리 이미지, 영상을 포함한 다양한 형태의 빅데이터가 수집되고 활용될 수 있기 때문에 가능해진 것입니다.


데이터가 많을수록 기계는 학습을 많이 할 것이고 답을 찾을 수 있는 정확도는 높아지겠죠. 여기에서는 학습시킬 수 있는 모델이 아래와 같이 3종류입니다. (다른 모델도 추가될 수 있다고 가능성을 열어 두었네요.)



사진(Image)과 음성(Audio), 자세(Pose)를 모델로 만들어 프로젝트를 진행할 수 있는데요. 오늘 우리가 만들어 볼 프로젝트는, ‘표정으로 감정 알아맞히기’ 입니다. 인간의 감정을 읽는 로봇을 만든다고 생각해보면, 인간의 표정을 보고 그 감정을 유추해낼 수 있도록 로봇에게 인간의 다양한 표정을 학습 시켜야겠죠?

 


머신러닝 기술로 한번 기본 기능을 구현해보도록 하겠습니다.


Image Project를 클릭해서 들어가 보겠습니다. Class(분류)가 있고, Class 별로 이미지를 웹캠을 이용해 실시간으로 올리거나 혹은 기존의 사진을 업로드할 수 있게 되어 있습니다. Class 별 데이터 수집하고 학습 시킨 후 모델이 완성되면 입력받은 데이터가 어떤 Class에 속하는지 예측할 수 있게 되죠. 그럼 먼저 어떤 클래스를 만들지 정해보겠습니다.


인간의 감정은 너무 다양하지만, 오늘은 ‘기쁨’, ‘슬픔’, ‘놀람’ 이렇게 세 가지 감정으로만 클래스를 만들어보려고 합니다.



각 클래스의 데이터는 어떻게 모을 수 있을까요? 표정 이미지를 검색해서 하나씩 다운로드는 설마 아니겠죠?


데이터를 한 번에 다운로드하는 방법이 있습니다. 먼저 크롬(Chrome) 브라우저에서 고맙게도 그 기능을 제공하네요. 크롬 브라우저에서 아래 링크로 들어가서 ‘Fatkun 일괄 다운로드 이미지’라는 확장 프로그램을 다운로드합니다.


https://chrome.google.com/webstore/detail/fatkun-batch-download-ima/nnjjahlikiabnchcpehcpkdeckfgnohf/related?hl=ko


다운로드한 후, 구글에서 ‘기쁜 표정’을 검색한 후, 주소창 옆을 보시면 Fatkun 이미지가 보입니다.



클릭한 후 현재 탭의 이미지만 받아 보겠습니다.



불필요한 Garbage 데이터가 조금 섞여 있긴 하지만, 순식간에 344개의 이미지를 다운로드했네요. 이 정도면 훌륭하죠? ‘슬픈 표정’, ‘놀란 표정’ 데이터도 동일한 방법으로 받아 보겠습니다.



친절하게 폴더 이름까지 자동으로 만들어서 데이터를 넣어주네요. 자, 이제 다운로드 한 사진을 각 클래스 별로 업로드해보겠습니다.

클래스 아래의 ‘Choose images from your files, or drag & drop here’ 버튼을 눌러 사진을 업로드하면 끝!



데이터를 다 수집했으면, AI에게 학습을 시켜보겠습니다. Train Model 버튼을 누르면 AI가 우리가 업로드한 사진들을 기반으로 학습을 시작하는데요.



학습이 끝나고 나면 맨 오른쪽 영역이 활성화되어 해당 모델의 성능을 직접 테스트해볼 수 있습니다. 그럼 마지막 단계. 감정별 이미지를 업로드해 머신러닝이 잘 진행되었는지 테스트를 해볼까요?


코지가 활짝 웃는 얼굴 이미지를 Drag&Drop 해보면,



기쁨 100%의 결과를 보여주네요. 놀란 표정과 슬픈 표정 이미지도 테스트해 보겠습니다.


 


놀란 표정의 이미지는 기쁨 48%와 놀람 52%로 결과가 나왔고, 슬픈 표정의 이미지는 슬픔 66%와 놀람 34%로 결과가 나왔습니다.


단지 몇십, 몇백 개의 표정 데이터를 가지고 학습시켰는데도, 꽤 유사한 결과를 보여주고 있는데요. 더 많은 샘플 데이터가 있다면 좀 더 정확한 테스트가 되겠죠? 우측의 Preview 상단의 Export Model 버튼을 누르면, 내가 만든 인공지능 모델의 소스를 추출해 다른 프로젝트에 적용할 수도 있어요.


지금까지 AI를 직접 체험해 볼 수 있는 티처블 머신이라는 사이트를 간단히 이용해 보았는데요. AI에 대한 전문적인 지식이 없는 사람도 쉽게 AI 모델을 만들고, 원하는 프로젝트에 적용까지 할 수 있다니 AI가 더 이상 멀게만 느껴지지 않죠?


 

티쳐블 머신 외에도 AI를 쉽게 체험해볼 수 있는 사이트 하나 더 추천해드리겠습니다. 바로, 머신러닝포키즈인데요.


https://machinelearningforkids.co.uk/ 


IBM 왓슨 인공지능 활용해 AI 모델을 만들어주고, 결과물을 파이썬뿐 아니라 스크래치나 앱인벤터와도 연동해 제작 가능하다고 하니, 이 사이트 역시 기대가 됩니다.


그럼 모든 국민이 AI를 쉽게 이해하고 적용할 수 있는 그날이 올 때까지, 여러분을 힘껏 돕겠습니다. 감사합니다.


글 l LG CNS 대외협력팀


* 해당 콘텐츠는 저작권법에 의해 보호받는 저작물로 LG CNS 블로그에 저작권이 있습니다.

* 해당 콘텐츠는 사전 동의없이 2차 가공 및 영리적인 이용을 금하고 있습니다.



Posted by IT로 만드는 새로운 미래를 열어갑니다 LG CNS

댓글을 달아 주세요

위로