반응형
안녕하세요
오늘은 인공지능에 대해 쉽게 이해하고 실제로 활용할 수 있는 프로그램에 대해 알아보겠습니다.
바로 구글 티처블 머신입니다.
인공지능에 대해 관심있는 분이라면 한 번씩 사용해보셨을텐데요
구글 티처블 머신은 단순히 이미지나 음성, 동작을 학습하여 구분짓는 것에서 벗어나
인공지능의 학습 방법을 이해할 수 있는 도구이며, 다각도로 활용할 수 있는 가능성을 보여주고 있습니다.
먼저 티처블 머신 사용법에 대해 설명드리겠습니다.




'구글 티처블 머신' 검색을 통해 홈페이지 들어갑니다. 이미지, 음성, 동작 세 가지 분석을 할 수 있습니다.
이미지 분석을 해보도록 하겠습니다.

기본적으로 왼쪽 Class1과 Class2로 학습할 대상을 구분할 수 있습니다. 이름 또한 변경 가능합니다.


그리고 학습시킬 이미지는 웹캠을 통해 실시간 노트북 또는 웹캠 카메로로 촬영할 수 있습니다.
다운로드 받은 이미지도 업로드 버튼을 눌러 할 수 있습니다.
Class는 추가 버튼을 눌러 추가할 수 있습니다.
전체 과정은 이미지 촬영 및 업로드 > 트레이닝 > 테스트 순입니다.

저는 실습 예제로 3D프린터로 출력한 빨간 강아지와 피카츄를 구분하여 보도록 하겠습니다.

먼저 노트북 웹캠을 통해 사물을 돌려가며 아래의 'Hold to Record' 버튼을 누릅니다.
오른쪽 촬영한 사진을 확인할 수 있습니다
상단에 총 몇 장의 이미지를 촬영하였는지 알 수 있습니다.
기본적으로 학습에 필요한 이미지 데이터는 200~300장 정도 필요합니다.

두 번째 대상인 피카츄도 이미지 촬영합니다.


여기에서는 Class의 이름을 변경하지 않았지만 Class의 이름은 나중에 테스트 결과의 항목으로 나타나기 때문에
꼭 변경해주시는 게 좋습니다.

다음은 트레이닝 세팅에 대해 알아보겠습니다.
이미지 촬영 후 이미지 분석 및 학습을 해야하는데 이것을 트레이닝이라고 합니다

아래의 Advanced를 클릭하면 Epochs, Batch Size, Learning Rate 가 있습니다.
Epochs는 전체 이미지 데이터를 기반으로 학습하는 횟수를 말합니다.
교과서 완독을 몇 번하는 것과 비슷한데 많이 하면 학습을 잘하겠지만 시간이 오래 걸리고 불필요한 것까지
너무 많이 알아버리는 단점이 있기도 합니다.
기본 설정값 50으로 되어 있습니다.
Batch Size는 한 번 이미지 데이터 학습을 할 때 어느 정도의 데이터의 양으로 학습을 반복할 것인지 선택합니다.
16개의 이미지로 학습을 계속 반복합니다.
기본 설정값 16으로 되어 있습니다.
Learning Rate은 학습률로 학습하는 속도라고 볼 수 있습니다 빠르게 반복하는 것은 시간을 단축할 수 있지만
학습 성과가 떨어질 수 있는 단점이 있습니다.
기본 학습률로 0.001을 설정합니다.

Training을 진행하면 아래 경과 시간과 Epochs가 몇 번 진행되었는지 알 수 있습니다.

학습이 완료되면 오른쪽에서 바로 웹캠을 통해 테스트를 할 수 있습니다.
기본 Output의 값은 Class1에 확률값으로 채워져 있습니다.

첫 번째 빨간 강아지를 웹캠에 노출시키니 Class1의 확률값이 100%가 되었습니다.

두 번째 피카츄를 웹캠에 노출시키니 Class2의 확률값이 100%가 되었습니다.
각 사물을 이미지 학습 결과를 바탕으로 구분하고 있습니다.

피카츄를 살짝 눕혀 비스듬히 노출을 시켰더니 오히려 Class1의 확률값이 더 높게 나왔습니다

혹시나해서 빨간 강아지도 살짝만 보이게 눕혀서 노출시켜보았는데
형체가 다 보이지 않아도 Class1 100%가 나오는 것을 볼 수 있습니다.
빨간 강아지 데이터는 모두 빨간색이기 때문에 빨간색 데이터만 보여도 금방 인식을 할 수 있지만
피카츄의 경우 빨간색, 노란색, 검정색 등이 섞여 충분한 학습이 되지 않는다면
확률값이 다르게 나올 수 있는 것입니다.

다음으로는 동작 분석 프로그램을 사용하여 가위, 바위, 보를 구분하는 테스트를 만들어보았습니다.
손가락이 아닌 몸으로 하는 가위, 바위, 보입니다.



각각의 동작을 학습시켜 이미지로 저장하였습니다.
이미지 분석과 다른 점은 이미지 전체에 대한 학습 데이터가 아닌 파란색 점과 선으로 인식되는 동작의
움직임을 기록하여 변화 추이를 학습하기 때문에 정적인 이미지가 아닌 동적인 동작을 분석할 수 있습니다.

학습을 진행한 뒤...



각각의 동작을 잘 인식하는 것을 볼 수 있습니다.

마지막으로 이상한 동작을 취했더니 확률값을 다르게 측정하는 것도 볼 수 있습니다.
여기까지 간단하게 구글 티처블 머신을 통해 이미지와 동작 분석하는 과정에 대해 설명드렸습니다.
이것을 통해 인공지능의 알고리즘이나 학습 방법에 대해 모두 다 알 수는 없겠지만
인공지능은 데이터를 기반으로 하고 데이터를 수집 및 가공하는 과정에 대해 간접적이나마 체험을 할 수 있는
프로그램이지 않을까 싶습니다.
세상 모든 일이 정확하게 확률값에 따라 구분지을 수는 없지만
앞으로 발전할 인공지능 사회에 적응하기 위해서는 하나씩 알아둘 필요가 있겠습니다.
감사합니다.
반응형
'AI' 카테고리의 다른 글
| [구글 티처블 머신] 이미지 업로드로 티처블 머신 모델 활용하기 (0) | 2021.01.29 |
|---|---|
| [인공지능 실습]구글 두들 - 요한 제바스티안 바흐 기념 (0) | 2020.10.07 |
| [인공지능 실습]엔비디아(NVIDIA) AI 플레이그라운드(Playground)-GAUGAN (0) | 2020.09.27 |
| [인공지능 입문]AI 오픈 소스 (0) | 2020.04.30 |
| [인공지능 입문]탐색 알고리즘 (0) | 2020.04.23 |