Connect with us

์ƒˆ๋กœ์šด ์‹œ์Šคํ…œ, ์›จ์–ด๋Ÿฌ๋ธ” ๊ธฐ๊ธฐ์™€ ๊ฐ€์ „์ œํ’ˆ์— AI๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค

์ธ๊ณต์ง€๋Šฅ

์ƒˆ๋กœ์šด ์‹œ์Šคํ…œ, ์›จ์–ด๋Ÿฌ๋ธ” ๊ธฐ๊ธฐ์™€ ๊ฐ€์ „์ œํ’ˆ์— AI๋ฅผ ๊ฐ€์ ธ์˜ฌ ์ˆ˜ ์žˆ๋‹ค

mm

MIT의 연구팀은 마이크로컨트롤러에 심층 학습 신경망을 가져오는 작업을 진행하고 있다. 이 발전은 인공 지능(AI)이 웨어러블 의료 기기, 가전제품, “사물 인터넷”(IoT)의 다른 250억 개의 객체에 있는 작은 컴퓨터 칩에 구현될 수 있음을 의미한다. IoT는 센서, 소프트웨어, 기타 기술이 내장된 물리적 객체의 네트워크로, 다른 기기와 시스템과 데이터를 교환하고 연결하는 데 도움이 된다.

연구는 12월에 열리는 신경 정보 처리 시스템 회의에서 발표될 예정이다. 연구의 제1저자는 Ji Lin으로, MIT 전기 공학 및 컴퓨터 과학부의 Song Han 연구실의 박사 과정 학생이다. 공저자로는 MIT의 Han과 Yujun Lin, National University Taiwan의 Wei-Ming Chen, MIT-IBM Watson Lab의 John Cohn과 Chuan Gan이 있다.

MCUNet 시스템

이 시스템은 MCUNet이라고 하며, IoT 기기에서极한 속도와 정확도를 갖는 컴팩트한 신경망을 설계한다. 이 시스템은 더 에너지 효율적이고 데이터 보안을 강화할 수 있다.

팀은 “tiny deep learning” 시스템을 개발하기 위해 두 가지 구성 요소를 결합했다. 첫 번째 구성 요소는 신경망의 작동이고, 두 번째 구성 요소는 마이크로컨트롤러이다. 첫 번째 구성 요소는 TinyEngine으로, 인터페이스 엔진으로 작동하여 리소스 관리를 지시한다. TinyEngine은 TinyNAS가 선택한 특정 신경망 구조를 실행하도록 최적화되어 있다. TinyNAS는 신경망 아키텍처 검색 알고리즘이다.

Lin은 기존의 신경망 아키텍처 검색 기술을 작은 마이크로컨트롤러에 적용하는 것이 어려웠기 때문에 TinyNAS를 개발했다. 이러한 기존 기술은 미리 정의된 템플릿을 기반으로 많은 가능한 신경망 구조 중에서 가장 정확하고 비용 효율적인 구조를 찾는다.

“그것은 GPU 또는 스마트폰에서 잘 작동할 수 있다”고 Lin은 말한다. “하지만 이러한 기술을 직접 작은 마이크로컨트롤러에 적용하는 것은 어렵다. 왜냐하면 그것들이 너무 작기 때문이다.”

TinyNAS는 사용자 정의 크기의 네트워크를 생성할 수 있다.

“우리는 다양한 전력 용량과 메모리 크기를 갖는 많은 마이크로컨트롤러가 있다”고 Lin은 말한다. “따라서 우리는 다양한 마이크로컨트롤러에 대한 검색 공간을 최적화하기 위해 알고리즘[TinyNAS]을 개발했다.”

TinyNAS가 사용자 정의할 수 있기 때문에, 마이크로컨트롤러에 대한 가장 좋은 컴팩트한 신경망을 생성할 수 있다.

“그런 다음 우리는 최종적인 효율적인 모델을 마이크로컨트롤러에 전달한다”고 Lin은 계속한다.

마이크로컨트롤러가 작은 신경망을 실행하기 위해서는 깨끗하고 가벼운 인터페이스 엔진이 필요하다. 많은 인터페이스 엔진에는 거의 실행되지 않는 작업에 대한 지침이 있으므로 마이크로컨트롤러를 방해할 수 있다.

“그것은 오프-CHIP 메모리가 없고, 디스크도 없다”고 Han은 말한다. “모두 함께 모인 것은 단지 1메가바이트의 플래시이므로 우리는 매우 작은 리소스를 신중하게 관리해야 한다.”

TinyEngine은 TinyNAS가 개발한 사용자 정의 신경망을 실행하는 데 필요한 코드를 생성한다. 컴파일 시간은 죽은 코드를 제거함으로써 단축된다.

“우리는 필요한 것만 유지한다”고 Han은 말한다. “그리고 우리는 신경망을 설계했기 때문에, 우리는 정확히 무엇이 필요한지 알고 있다. 그것이 시스템-알고리즘 공동 설계의 이점이다.”

테스트 결과 TinyEngine의 컴파일된 바이너리 코드는 Google과 ARM의 마이크로컨트롤러 엔진과 비교하여 1.9에서 5배 더 작았다. 피크 메모리 사용量도 거의 절반으로 줄었다.

MCUNet의 능력

MCUNet의 첫 번째 테스트는 이미지 분류를 중심으로 진행되었다. ImageNet 데이터베이스를 사용하여 시스템을 학습시킨 후, 새로운 이미지에 대한 능력을 테스트했다.

MCUNet이 상업용 마이크로컨트롤러에서 테스트되었을 때, 새로운 이미지 중 70.7%를 성공적으로 분류했다. 이는 이전의 최고의 신경망과 간섭 엔진의 조합보다 훨씬 더 좋았다. 이전의 최고 조합은 54%의 정확도를 보였다.

“심지어 1%의 개선도重大한 것으로 간주된다”고 Lin은 말한다. “따라서 이것은 마이크로컨트롤러 설정에서巨大한 도약이다.”

캘리포니아 대학교 버클리의 컴퓨터 과학자인 Kurt Keutzer에 따르면, 이것은 “심층 신경망 설계의 최전선까지 더 나아간다. 작은 에너지 효율적인 마이크로컨트롤러의 계산 도메인으로” MCUNet는 “심플한 가전제품에 지능형 컴퓨터 비전 기능을 가져올 수 있다. 또는 더 지능적인 모션 센서를 가능하게 할 수 있다”고 한다.

MCUNet는 또한 데이터 보안을 강화한다.

“주요한 장점은 개인 정보를 보호하는 것이다”고 Han은 말한다. “클라우드에 데이터를 전송할 필요가 없다.”

로컬에서 데이터를 분석함으로써, 개인 정보가 노출될 가능성이 줄어든다.

또한 MCUNet는 심박수, 혈압, 산소 수치와 같은 정보를 분석하고 통찰력을 제공할 수 있다. 그리고 제한된 인터넷 접근이 있는 차량 및 기타 장소의 IoT 기기에 심층 학습을 가져올 수 있다. 또한 큰 신경망에 필요한 에너지의 작은 부분만을 사용하여탄소 발자국을 줄일 수 있다.

Alex McFarland์€ ์ธ๊ณต ์ง€๋Šฅ์˜ ์ตœ์‹  ๊ฐœ๋ฐœ์„ ํƒ๊ตฌํ•˜๋Š” AI ์ €๋„๋ฆฌ์ŠคํŠธ์ด์ž ์ž‘๊ฐ€์ž…๋‹ˆ๋‹ค. ๊ทธ๋Š” ์ „ ์„ธ๊ณ„์˜ ์ˆ˜๋งŽ์€ AI ์Šคํƒ€ํŠธ์—…๊ณผ ์ถœํŒ๋ฌผ๋“ค๊ณผ ํ˜‘๋ ฅํ–ˆ์Šต๋‹ˆ๋‹ค.