CNS Story/Coding Genius

‘댕댕이 통역기’ 등장? AI로 동물소리 번역해보자!

2020. 6. 18. 09:30


안녕하세요. 코지입니다.

여러분, 동물 울음소리를 듣고 그 뜻을 이해할 수 있을까요? AI는 ‘꼬꼬댁’하는 닭 울음소리만 듣고도 무슨 말을 하는지 알아낼 수 있다고 하는데요.



미국 조지아 공대의 엔지니어들은 수백만 마리의 닭을 키우는 양계업자와 협력해 수년간 닭들의 울음소리를 수집하고 분석했다고 하는데요. 닭들을 다양한 환경에 노출하고 녹음한 울음소리를 머신러닝 기법으로 AI에게 학습시켜서, 울음소리만 듣고도 그들이 무슨 상태인지 AI가 알아낼 수 있게 한 것입니다. 알을 낳을 때, 독수리 등의 위험을 감지할 때, 보호해야 할 암탉이 있을 때 등등 말이죠.


앞으로 닭의 모든 울음소리를 분석해낼 수 있게 된다면, AI에 의해 운영되는 스마트 양계장을 기대해 볼 수 있겠죠? 닭이 배고플 때 자동으로 사료를 공급해 주고, 추울 때 히터를 틀어주는 것이죠.



닭 울음소리뿐만 아니라 머신러닝을 활용한 아기, 돌고래, 강아지, 고양이 울음소리 분석도 상당 부분 이루어져 있고, 이미 동물 번역기 앱이 출시되어 있기도 한데요. 동물과 대화할 수 있는 시대가 정말 머지않은 것 같습니다.


그럼 동물 번역기의 원리에 적용된 머신러닝을 코지와 함께 체험해볼까요?



https://teachablemachine.withgoogle.com/


머신러닝 체험은 총 3단계의 과정을 거쳐야 합니다.

첫 번째로 ‘수집’입니다. AI가 학습할 샘플의 다양한 예시를 수집하는 것이죠. 두 번째는 ‘훈련’인데요. 이 과정은 사전에 개발된 구글 AI의 머신러닝 원리를 바탕으로 자동으로 이루어집니다. 우리가 할 일은 그저 샘플을 학습하라고 지시하는 것뿐이랍니다. 세 번째는 ‘추출’로 이전의 두 단계에서 학습된 머신러닝 모델을 추출해 우리만의 프로젝트를 만드는 것입니다.



우리만의 별도 프로젝트는 아직 없으니 앞의 두 단계까지 체험해보도록 할까요?



AI를 훈련할 수 있는 종류는 크게 3가지입니다. 사진 등의 이미지, 소리 그리고 포즈(자세)인데요. 코지는 이번 화에서 이미지와 소리 두 가지를 체험해보려고 합니다.


● 이미지 학습시키기



먼저 이미지 프로젝트를 클릭하면 이런 화면이 나옵니다. Class 1과 Class 2에 각각 구분이 필요한 2가지의 사물을 웹캠 촬영이나 사진 업로드를 통해, 학습 이미지 샘플을 제공해야 합니다. 코지는 웹캠을 이용해서 ‘빗’과 ‘포크’를 학습 시켜 보려고 합니다.



Class 1에는 빗을 인식시킬 겁니다. 먼저 제목에 ‘빗’이라고 입력합니다. 다음 웹캠을 활성화하고 카메라에 빗이 잘 보이게끔 가까이 댄 다음, ‘Add to Record’ 버튼을 클릭해보겠습니다. 2~3개의 이미지 파일이 연사처럼 자동 생성되는 걸 볼 수 있는데요. 빗을 다양한 각도로 돌려가면서 이미지 파일을 원하는 만큼 생성시킵니다. 많이 생성시킬수록 AI의 사물 구별 능력은 정교해질 겁니다.



다음은 Class 2에 포크를 인식해보겠습니다. 아까와 마찬가지로 포크를 카메라에 가까이 대고 다양한 각도로 돌려가며 촬영했습니다. AI가 사물을 인식할 만큼 샘플의 개수가 충분히 생성되었다고 판단된다면, 2단계로 ‘Train Model’ 버튼을 클릭해봅니다. AI는 다양한 각도의 이미지 파일을 머신러닝을 통해 학습하게 됩니다.


자, 그럼 학습이 잘 되었는지 확인해볼까요?



먼저 아까 학습에 활용했던 빗과 포크를 다시 한번 카메라에 인식해 보겠습니다. Output 영역에 각 사물의 종류에 따라 빗 100%, 포크 100%라는 결과가 도출되었네요. 정확한 사물 구별에 성공한 거죠.



이번에는 모양이 조금 다른 빗과 포크를 인식 시켜 보았는데요. 빗의 날이 구불거리고 포크 끝이 레이스 모양으로 곡선 져 있는 형태입니다. 다른 모양에도 불구하고 이번에도 마찬가지로 인식에 성공했습니다. 하지만 실시간으로 변화하는 인식률 그래프의 출렁거림이 오리지널 사물보다는 심했는데요. 학습했던 이미지의 패턴과 조금 달랐기 때문이겠죠?


● 소리 학습시키기


이번에는 머신러닝을 통해 소리를 학습시켜보도록 하겠습니다. AI는 서로 다른 두 소리의 패턴을 인식하고 구분해낼 수 있을까요?



제일 먼저 학습시킬 소리는 주변 소음입니다. 녹음될 소리의 주변 소리 때문에 AI가 혼동되지 않도록 기본적인 소음부터 인식시키는 것이죠.



다음 코지는 유튜브에서 고양이 울음소리와 호랑이 울음소리를 찾아서 각각 인식시켰습니다. 2초 단위로 녹음한 후 샘플로 추출하면 음성 샘플 리스트에 추가되죠. 그런 다음 ‘Train Model’ 버튼을 클릭해 AI에게 샘플의 패턴을 학습시킵니다. 자, AI가 머신러닝을 통해 소리의 패턴을 찾아내는 데 성공했을까요?



다시 유튜브에서 고양이와 호랑이 울음소리를 들려주었더니, AI가 각각 87%, 99%의 확률로 누구의 울음소리인지 판독해내는 것에 성공했습니다. Output 그래프는 실시간 소리에 따라 달라지지만 대체로 높은 인식률을 보여주었습니다.



지금까지 구글 AI를 활용해 머신러닝을 직접 체험해봤습니다. AI 동물 번역기에 적용된 머신러닝의 원리를 직접 체험해보니 신기하지 않으셨나요?


다음 편에서는 IBM의 인공지능 ‘왓슨’을 활용해서 머신러닝 체험을 해보겠습니다. 오늘 진행한 구글의 머신러닝과 비슷하지만, 스크래치 혹은 파이썬 등을 활용한 프로그램과 연동할 수 있다는 점이 특징입니다. 그럼 다음 시간에 만나요!


글 l LG CNS 대외협력팀


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

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



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

댓글을 달아 주세요

  1. Favicon of https://antennagom.com BlogIcon 안테나곰 2020.06.18 10:59 신고  댓글주소  수정/삭제  댓글쓰기

    강아지 소리 번역기가 빨리 나오면 좋겠네요.
    무슨 생각인지 알고 싶어요

  2. Favicon of https://herojune.tistory.com BlogIcon 쭌강사 2020.06.18 11:24 신고  댓글주소  수정/삭제  댓글쓰기

    와~ 정말 4차산업혁명이 도래한게 맞군요? 잘 보고 갑니다.

  3. 이준기 2020.06.18 18:23  댓글주소  수정/삭제  댓글쓰기

    1. 스크래치 3.0을 기반한 카미블록을 사용하면 티처블머신에서 추출한 모델을 가져다 블록프로그래밍할 수 있습니다.
    2. 엠블록을 사용하시면 이미지 지도학습을 API키 없이도 쉽게사용할 수 있습니다. 이때 티처블머신을 옮겨온 확장을 사용합니다.
    늘 귀한 배움의 글로 큰 지식과 지혜를 전해 주셔서 진심으로 가득 감사합니다.

위로