글: 크리스 아디스(Kris Ardis) / 아나로그디바이스(Analog Devices, Inc.)
우리가 어릴 적에 예상한 대로라면 지금쯤 하늘을 나는 자동차가 나왔어야 하지 않을까? 또, 로봇 집사가 집안을 돌아다니며 시중을 들어야 하지 않을까? 운이 나쁘다면, 인류가 지구에 재앙을 초래하기 전에 의식 있는 로봇이 인류를 상대로 봉기를 들어야 하지 않을까?
이런 일들은 아직 현실에서 일어나지 않았지만, 오늘날 인공 지능(AI) 기술이 우리 생활 깊숙이 파고들고 있는 것만은 확실하다. 우리가 알렉사(Alexa)에게 무언가 요구할 때마다 머신 러닝(ML) 기술은 우리가 말한 것을 이해하고 우리가 원하는 것을 실행하기 위해 애쓰고 있다. 넷플릭스나 아마존이 “다음에 볼 영화”나 “다음에 구입할 물건”을 추천할 때마다 정교한 머신 러닝 알고리즘이 우리의 마음을 잡아끌기 위해서 애쓰고 있다. 아직은 우리 모두가 자율주행차를 가지고 있는 것은 아니지만, 자율주행이 얼마나 빠르게 진보하고 있고 미래에 어떤 것들을 가능하게 할지는 우리 모두 잘 알고 있다.
AI 기술이 가진 잠재력은 어마어마하다. 이 기술은, 기계가 자신의 주변에 대해서 의사결정을 하고 사람처럼 (혹은 사람보다 더 뛰어나게) 정보를 처리할 수 있다는 개념에 바탕을 두고 있다. 하지만 서두에서 언급한 사례들도 그렇듯이, 사람들이 흔히 생각하는 AI는 “대형 기계들(big machines)”이다. 이러한 “대형 기계들”은 전력, 크기, 비용에 있어서 제약이 그리 많지 않다. 달리 말하면 온도가 높아질 수 있고, 라인 전원을 사용할 수 있고, 크기가 크고, 가격대가 비싸다. 알렉사나 넷플릭스는 우리가 원하는 것을 이해하기 위해서 클라우드에 있는 크고 전력 소모가 많은 서버에 의존한다. 자율주행차는 배터리에 의존적이긴 하지만, 바퀴를 굴리고 조정해야 한다는 점을 고려할 때, 가장 비싼 AI 의사 결정보다도 더 많은 에너지를 필요로 한다.
AI의 잠재력이 크다는 점에도 불구하고, “소형 기계들(little machines)”에 대한 관심은 저조한 편이다. 소형 배터리를 사용하거나 비용이나 크기에 있어서 제한이 따르는 디바이스들은 기계가 보고 들을 수 있다는 발상에 끼어들지 못하고 있는 것이다. 오늘날 이러한 소형 기계들은 단순한 AI 기술만을 활용할 수 있다. 간단한 키워드를 인식하거나 심박수 측정을 위한 광 혈류 측정(PPG) 같은 차원이 낮은 신호를 분석하는 것 정도이다.
소형 기계들이 보고 들을 수 있다면?
소형 기계들이 보고 들을 수 있다면 어떻게 될까? 도어벨 카메라 같은 사물이 자율주행이나 자연어 처리 같은 기술을 사용할 필요는 없겠지만 어휘 인식, 목소리 인식, 이미지 분석 같이 덜 복잡하고, 집중적인 처리를 덜 필요로 하는 AI 연산을 수행할 수 있다.
- 도어벨 카메라와 보안 카메라는 바람이 불어서 식물이 흔들리거나 구름 때문에 색조가 급격히 달라지거나 개나 고양이가 문 앞에서 달리는 것과 같은 이벤트에 경고음을 발생할 수 있다. 이렇게 잘못된 경고음이 여러 번 반복되면 어느 순간 집주인이 경고음을 무시하는 지경에 이를 수 있다. 또는 집주인이 해외 여행을 가서 잠을 자고 있는데 일출, 구름, 일몰 등에 따른 밝기 변화로 인해 카메라가 경고음을 일으킬 수도 있다. 이럴 때 지능적인 스마트 카메라는 ‘프레임 안에 사람이 포함될 때’ 같은 좀더 구체적인 이벤트를 조건으로 작동할 수 있다.
- 도어 록이나 그 밖에 다른 출입 장소에서는 얼굴 인식이나 음성 인식을 사용해서 승인된 사람에게만 문을 열어줄 수 있다. 그러면 열쇠나 출입 카드를 가지고 다니지 않아도 된다.
- 많은 카메라는 특정 이벤트에 경고음을 울린다. 예컨대 삼림 카메라는 프레임 안에 사슴이 등장하면 경고를 울리고, 보안 카메라는 프레임 안에 사람이 나타나거나 문소리나 발자국 소리 같은 소리가 들렸을 때 경고를 울리고, 개인용 카메라는 음성 명령으로 작동할 수 있다.
- 어휘 명령은 많은 애플리케이션에 유용하게 쓰일 수 있다. 20개 이상의 어휘를 사용할 수 있다면 산업용 장비, 홈 오토메이션, 주방 가전, 그 밖에 다른 디바이스에 음성 명령을 사용해서 사람의 상호작용을 간소화할 수 있다.
이러한 사례들은 단지 일부일 뿐이다. 과거에 사람의 개입이 필요했던 “소형 기계들”이 보고 듣고 문제를 해결할 수 있도록 함으로써 새롭고 놀라운 것들이 가능해질 것이다. 실제로 창의적인 활용 사례들이 매일 새롭게 등장하고 있다.
“소형 기계들”이 보고 듣게 하기 위해 해결해야 할 과제들
“소형 기계들”에 AI를 활용하려면 어떻게 해야 할까? 해답은 처리 성능에 있다. AI 추론은 신경망 모델을 처리한 결과이다. 신경망 모델은 사람의 뇌가 이미지나 소리를 처리하는 방식을 모방한 것이다. 예를 들어 이미지를 작은 조각들로 분할하고 패턴을 인식한 다음, 그 조각들을 다시 조합한다. 첨단 머신 비전에 주로 사용되는 모델은 컨볼루션 신경망(CNN)이다. CNN은 이미지 분석에 뛰어나며 오디오 분석에도 유용하다. 문제는 이러한 모델들을 처리하려면 수백만 혹은 수십억 회의 수학적 계산이 필요하다는 것이다. 이러한 애플리케이션을 구현하기 위해서는 다음과 같은 방법 중에서 선택을 해야 한다:
- 저가의 저전력 마이크로컨트롤러 솔루션을 사용한다. 그러면 평균 전력 소모는 낮겠지만, CNN이 계산을 처리하는 데 수 초가 걸릴 것이다. 그러면 AI 추론은 실시간으로 이루어질 수 없으며, 그 동안에 상당한 배터리 전력을 소모할 것이다.
- 고가의 고전력 프로세서를 사용한다. 이러한 프로세서는 요구되는 지연시간 안에 수학적 연산을 처리할 수 있고, AI 추론을 매우 빠르게 실행한다. 대신에 이들은 통상적으로 크기가 크고 히트 싱크나 그 밖에 다른 냉각 부품을 포함한 다수의 외부 부품을 필요로 한다.
- AI 기능을 사용하지 않는다. 저가의 마이크로컨트롤러 솔루션은 속도가 너무 느리고, 고전력 프로세서는 비용, 크기, 전력 예산을 초과할 것이다.
바로 이럴 때 필요한 것이 애초에 컨볼루션 신경망 처리의 에너지 소모를 최소화하도록 설계된 임베디드 AI 솔루션을 사용하는 것이다. AI 추론은 기존 마이크로컨트롤러 또는 프로세서 솔루션보다 더 적은 에너지로 훨씬 더 빠르게 실행해야 하며, 메모리 같은 외부적 부품을 필요로 하지 않아야 한다. 외부적 부품들은 에너지 소모, 크기, 비용을 늘리기 때문이다. AI 추론 솔루션이 머신 비전의 에너지 문제를 극복할 수만 있다면 소형 디바이스들도 자신의 주변에서 일어나는 일들을 감지하고 인식할 수 있게 될 것이다.
이러한 변화가 이제 막 일어나기 시작했으며, “소형 기계들”에서 혁신이 일어나고 있다. AI 추론의 에너지 비용을 거의 제거하고 배터리 구동 머신 비전을 가능하게 하는 솔루션들이 등장하고 있는 것이다. 현재 이러한 솔루션으로서
불과 수 마이크로줄의 에너지만을 사용해서 AI 추론을 실행하도록 설계된 마이크로컨트롤러가 시장에 공급되고 있다.
제품스펙