MIT, 웨어러블·가전제품·IoT기기 MCU에 작은딥러닝 구현 

타이니NAS, 맞춤화 속성으로 매개변수 없이 최고 AI 생성

타이니엔진, DWC 사용해 메모리 사용량·가동시간 절반으로 

상용 MCU 이미지 분류에 적용하자 기존 54% 능가한 71% 

▲MIT 연구원들은 마이크로컨트롤러(MCU)에 기계 학습을 제공하는 MCU넷(MCUNet)이라 불리는 시스템을 개발했다. 이 발전은 사물인터넷(IoT)에 연결된 장치의 기능과 보안을 강화할 수 있게 될 것으로 기대를 모은다. (사진=MIT)
▲MIT 연구원들은 마이크로컨트롤러(MCU)에 기계 학습을 제공하는 MCU넷(MCUNet)이라 불리는 시스템을 개발했다. 이 발전은 사물인터넷(IoT)에 연결된 장치의 기능과 보안을 강화할 수 있게 될 것으로 기대를 모은다. (사진=MIT)

우리 주변의 어떤 작은 전자기기든 자체적으로 경제적이고 안전한 딥러닝 인공지능(AI)을 수행하게 해 줄 기술이 개발됐다. 소규모 용량을 가진 마이컴, 또는 마이크로컨트롤러로 불리는 MCU에서 직접 소셜미디어를 큐레이션하고 구글 검색 결과 같은 것을 제공해 주는 AI 알고리즘과 검색엔진기술이다. 이를 이용해 지금까지보다 단순한 작은 전자 기기에도 심층 학습 AI 신경망을 구성할 수 있게 됐다. 예를 들면 단순한 헬스케어용 웨어러블 기기, 가전제품, 그리고 사물인터넷(IoT) 기기 등이 그것이다.   

매사추세츠공대(MIT)뉴스는 13일(현지시각) 이 대학 연구원들이 이처럼 웨어러블 의료기기나 가전품 속의 작은 컴퓨터 칩(MCU)에도 심층학습(딥러닝) AI를 접목시켜 주는 ‘MCU넷(MCU Net)’ 시스템을 개발했다고 보도했다. 이 시스템이 수행하는 AI는 타이니 딥러닝(tiny deep learning)이라 불린다.   

MCU넷은 지금까지 AI수행을 위해 사용되던 고급 AI 대신 우리 주변의 모든 작은 기기 속 MCU에 접목돼 작동하게 된다. 이 시스템은 제한된 메모리와 처리 능력만 갖고 있음에도 모든 IoT 기기에서 딥러닝을 위한 전례 없는 속도와 정확성을 전달하는 소형 신경망을 설계한다.   

이를 활용하면 전 세계 2500억개에 이르는 모든 기기내 MCU가 제각각 주변 환경변화에 따라 알아서 작동하는 세상이 가능해질 전망이다. 

이 기술적 발전은 가전품에 AI기능을 제공할 뿐 아니라 데이터 보안과 에너지 효율을 높이는 기능까지 제공하게 될 것으로 기대를 모은다. 굳이 기기에서 클라우드를 거쳐 다시 기기로 돌아오는 과정을 거칠 필요가 없기 때문이다. 많은 컴퓨팅 능력을 필요하지 않아 에너지를 절약할 수 있고, 흔히 개별기기에서 클라우드를 거치는 과정에서 발생하는 해킹을 막을 수 있기 때문이다.  

◆사물 인터넷(IoT)

IoT는 1980년대 초에 태어났다. 마이크 카자(Mike Kazar)를 카네기 멜론대 대학원생들은 콜라-콜라 기계를 인터넷에 연결했다. 그 그룹의 동기는 간단했다. 즉, 일종의 귀차니즘이었다. 
 
이들은 콜라를 사기 위해 사무실에서 콜라 자판기까지 가기 전에 재고가 있는지 확인하기 위해 컴퓨터를 사용하고 싶어 했다. 그것은 세계 최초의 인터넷 연결 기기였다. 현재 마이크로소프트(MS)엔지니어인 카자는 “이것은 농담의 핵심으로 취급됐다”며 “인터넷에서 수십억 대의 기기를 예상한 사람은 아무도 없었다”고 말했다. 

그 코카콜라 자판기 이후 일상의 물체들이 점점 더 성장하는 IoT에 네트워크로 연결되고 있다. 여기에는 웨어러블 심박 모니터에서부터 우유 부족을 알려주는 스마트 냉장고에 이르기까지 모든 것이 포함된다. IoT 기기는 운영체제(OS)가 없는 간단한 컴퓨터 칩, 최소한의 처리 능력, 그리고 일반 스마트폰 메모리의 1000분의 1도 안 되는 마이크로 컨트롤러(MCU)에서 작동하는 경우가 많다. 

따라서 딥러닝과 같은 패턴 인식 작업은 IoT 기기에서는 자체적으로 실행하기 어렵다. 복잡한 분석을 위해 IoT기기 수집 데이터를 클라우드로 전송하는 경우가 많아 해킹에 취약하다.

◆시스템-알고리즘 통합설계로 MCU넷에 딥러닝 넣다 

공저자 한린은 “어떻게 하면 이런 작은 기기에 직접 신경망을 배치할 수 있을까가 아주 뜨거운 관심을 끄는 새로운 연구 분야”라며 “구글이나 ARM 같은 회사들은 모두 이런 방향으로 일하고 있다”고 말했다. 

그의 연구 그룹은 MCU넷을 통해 ‘작은 딥러닝(tiny deep learning)’, 즉 MCU에 신경망을 작동하기 위해 필요한 2개 구성 요소를 통합 설계했다. 

그 하나는 타이니 엔진(Tiny Engine)으로, 직접 자원관리를 지시하는 OS와 유사한 추론 엔진이다. 타이니엔진은 특정한 신경망 구조를 실행하는 데 최적화돼 있다. 

또하나는 타이니 NAS라는 알고리즘이었다. 

이 신경망 구조는 MCU넷의 다른 구성요소인 신경구조 검색 알고리즘(타이니NAS·TinyNAS)에 의해 선택됐다.   

MCU용 심층망(딥 네트워크) 설계 과정은 쉽지 않았다. 

기존 신경 아키텍처 검색 기술은 미리 정의된 템플릿에 기반한 가능한 네트워크 구조의 커다란 풀에서 시작해 점차 높은 정확도와 낮은 비용으로 가게 된다. 이 방법은 효과가 있지만, 가장 효율적인 방법은 아니다. 주저자 지린은 “이것은 그래픽칩(GPU)이나 스마트폰에 꽤 잘 작동할 수 있다”면서 “하지만 이러한 기법을 작은 MCU에 직접 적용하기는 어려웠는데, 너무 작기 때문이었다”라고 설명했다. 

지린은 원하는 크기의 맞춤형 네트워크를 만드는 신경 아키텍처 검색 방법인 타이니NAS를 개발했다. 

지린은 “우리는 다른 전력 용량과 다른 메모리 크기를 가진 많은 MCU를 보유하고 있다. 그래서 우리는 서로 다른 MCU가 검색공간을 최적화할 수 있도록 (타이니NAS)알고리즘을 개발했다. 그는 “타이니NAS의 맞춤화된 속성(customized nature)은 불필요한 매개변수 없이 주어진 MCU에  가능한 최고의 성능을 가진 컴팩트한 신경망을 생성할 수 있다는 것을 의미한다. 그러고 나면 최종적이고 효율적인 모델을 MCU에 전달한다”고 말했다. 

그 작은 신경망을 작동시키기 위해서는 MCU에도 약한 수준이나마 추론 엔진이 필요했다. 일반적인 추론 엔진은 거의 실행되지 않을 수 있는 작업용 지침인 데드 웨이트(dead weight)코드까지 수행한다. 이 추가 코드는 노트북이나 스마트폰에서는 문제가 없지만 쉽사리 MCU를 압도할 수 있다. 한린은 “오프칩 메모리도 없고 디스크도 없다”며 “모든 것을 한 데 모아도 단지 1메가바이트(MB)의 플래시메모리에 불과하기 때문에 우리는 정말 그 작은 자원을 신중히 관리해야 한다”고 말했다. 

연구원들이 개발한 타이니엔진은 타이니NAS의 맞춤화된 신경망을 실행하는 데 필요한 핵심코드를 생성했다.  
 
◆NAS의 맞춤형 신경망. 

이제 모든 데드웨이트 코드는 삭제됐고 이는 컴파일 시간을 줄여주었다. 

한린은 “우리는 필요한 것만 운영하도록 했다. 그리고 신경망을 설계했기 때문에 우리가 필요로 하는 것이 무엇인지 정확히 알고 있다”고 말했다. 또 “그것이 시스템-알고리즘 통합설계의 장점”이라고 설명했다. 

이 그룹의 타이니엔진 테스트에서 컴파일링 된 바이너리 코드의 크기는 이에 필적하는 구글 및 ARM의 MCU추론 엔진에 비해 1.9~5배 작았다. 타이니엔진은 또한 최고 메모리 사용량을 거의 절반으로 줄여주는 뎁스와이즈합성곱(Depth-Wise Convolution·DWC)을 포함하면서 가동시간을 줄이는 혁신을 포함하고 있다. 

◆타이니NAS와 타이니엔진 통합 설계후 MCU넷 테스트 결과는?

연구팀은 타이니NAS와 타이니엔진을 통합설계한 후 MCU넷을 테스트했다. 

MCU넷의 첫 번째 도전은 이미지 분류였다. 연구원들은 이미지넷 데이터베이스를 사용, 라벨링된 이미지로 시스템을 훈련시킨 다음 새로운 이미지를 분류하는 능력을 테스트했다. 

MCU넷은 이들이 테스트한 상업용 MCU에서 70.7%의 새로운 이미지를 성공적으로 분류했는데, 이는 이전의 최첨단 신경망과 추론 엔진 조합의 54% 정확도를 크게 뛰어넘는 것이었다.  

지린은 “1%의 개선도 상당한 것으로 간주된다”며 “그래서 이것은 MCU에 배치하기 위한 커다한 도약이다”라고 말했다. 

연구팀은 3개의 다른 MCU으로 이미지넷(ImageNet)에서 테스트해 비슷한 결과를 얻었다. 

그리고 MCU넷은 속도와 정확성 모두에서 사용자가 음성 신호를 사용해 컴퓨터와 상호작용을 시작하는 “헤이 시리”같은 오디오 웨이크워드(wake-word), 그리고 단순히 방에 들어가는 것으로 상호작용하는 시각적 웨이크워드 과제 테스트 경쟁에서 이겼다. 이 실험은 수많은 응용분야에서의 MCU넷 적응성을 조명해 준다.

또한, MCU넷의 슬림한 컴퓨터 설치 공간은 더 적은 탄소발자국을 남기는 것으로 해석된다. 

한린은 “우리의 큰 꿈은 녹색 AI”라며 “거대한 신경망을 훈련하는 것은 자동차 5대의 평생 배출량에 해당하는 탄소를 태우는 수준”이라고 덧붙였다. MCU에 들어가는 MCU넷은 그 에너지의 작은 부분만 필요로 하게 된다. 

그는 “우리의 최종 목표는 더 적은 컴퓨팅자원, 인적 자원, 데이터를 사용하면서도 효율적이고 작은 AI를 가능케 하는 것”이라고 말했다. 

이번 연구는 다음달 열리는 신경정보처리시스템 컨퍼런스(Conference on Neural Information Processing Systems)에서 발표될 예정이다. 주저자 지린은 MIT전기공학 및 컴퓨터과학과 송한연구실 박사과정 학생이다. 
공저자는 한린과 유준린연구원, 웨이밍첸 MIT 및 대만국립대교수, 존 콘, 추앙간MIT-IBM 왓슨 AI연구실 연구원이다. 

KAIST, PIM 기술 접목한 AI 반도체 시스템 개발

전기연, AIㆍIoT 이용한 스마트 노인 돌봄 서비스 개발

 

 

키워드 관련기사
  • 아마존, '비싼' 엔비디아 대신 빠르고 저렴한 자사 AI칩 선택
  • 컴퓨터비전ㆍML 알고리즘으로 보행자 탐지해 전기 스쿠터 사고 줄인다
  • 유비쿼터스 AI 확산시킬 ‘타이니ML’ 급부상