Core Concepts
마이크로컨트롤러의 제한된 자원을 고려하여 딥러닝 모델의 아키텍처와 실행 엔진을 공동 최적화함으로써 높은 정확도와 효율성을 달성할 수 있다.
Abstract
이 논문은 마이크로컨트롤러에서의 딥러닝 기술인 TinyML에 대해 다루고 있다.
TinyML의 정의, 과제 및 응용 분야를 소개한다. 마이크로컨트롤러의 제한된 메모리와 계산 자원으로 인해 기존의 모바일 또는 클라우드 기반 딥러닝 모델을 그대로 적용할 수 없음을 설명한다.
최근 TinyML 분야의 연구 동향을 정리한다. 알고리즘 측면에서는 모델 압축, 양자화, 아키텍처 검색 등의 기술이 소개되고, 시스템 측면에서는 경량 추론 엔진, 메모리 관리 기법 등이 소개된다.
저자들이 제안한 MCUNet 기술을 소개한다. MCUNet은 딥러닝 모델 아키텍처와 추론 엔진을 공동 최적화하여 마이크로컨트롤러의 제한된 자원을 효과적으로 활용한다. 구체적으로 TinyNAS를 통해 최적화된 모델 아키텍처를 찾고, TinyEngine을 통해 메모리 효율적인 추론 실행을 달성한다.
MCUNet을 통해 마이크로컨트롤러에서 ImageNet 수준의 높은 정확도를 달성할 수 있음을 보인다.
Stats
마이크로컨트롤러는 모바일 기기보다 메모리와 저장 용량이 3-6 orders of magnitude 작다.
ResNet-50 모델은 마이크로컨트롤러의 메모리 용량을 100배 초과하고, MobileNetV2 모델도 20배 초과한다.
심지어 MobileNetV2의 int8 양자화 버전도 마이크로컨트롤러의 메모리 용량을 5.3배 초과한다.
Quotes
"TinyML은 IoT 기기와 마이크로컨트롤러에 딥러닝 모델을 탑재하여 AI 응용 범위를 확장하고 보편적인 지능을 실현한다."
"마이크로컨트롤러의 제한된 메모리 자원으로 인해 딥러닝 모델 배포가 어렵다."
"모바일 플랫폼 최적화 모델은 마이크로컨트롤러에 적합하지 않으며, 오히려 메모리 사용량을 더 증가시킨다."
"모델 학습을 위한 메모리 요구량은 추론보다 6.9배 더 크다."