13 نوامبر 2020توسط دانیل آکرمن ، انستیتوی فناوری ماساچوست
با گسترش فناوری های نوین ، یادگیری عمیق همه جا هست. این شاخه از هوش مصنوعی رسانه های اجتماعی شما را تحت نظارت قرار داده و نتایج جستجو را در موتور های جستجو یشما را ارائه می دهد. به زودی ، یادگیری عمیق همچنین می تواند وضعیت حیوانات شما را بررسی کند یا ترموستات شما را تنظیم کند. محققان MIT سیستمی را ایجاد کرده اند که می تواند شبکه های عصبی یادگیری عمیق را به مکان های جدید – و بسیار کوچکتر – مانند تراشه های کوچک رایانه در دستگاه های پزشکی پوشیدنی ، لوازم خانگی و 250 میلیارد شی ء دیگر که “اینترنت اشیا” را تشکیل می دهند ، ارائه دهد ( اینترنت اشیا)
این سیستم که MCUNet نام دارد ، شبکه های عصبی کامپکت را طراحی می کند که با وجود حافظه و قدرت پردازش محدود ، سرعت و دقت بی سابقه ای را برای یادگیری عمیق در دستگاه های اینترنت اشیا ارائه می دهد. این فناوری می تواند ضمن صرفه جویی در مصرف انرژی و بهبود امنیت داده ها ، گسترش جهان اینترنت اشیا را تسهیل کند.
اینترنت اشیا
اینترنت اشیا در اوایل دهه 1980 متولد شد. دانشجویان گراد دانشگاه کارنگی ملون ، از جمله مایک کازار ’78 ، یک دستگاه کولاکولا را به اینترنت متصل کردند. انگیزه این گروه ساده بود: تنبلی. آنها می خواستند با استفاده از رایانه های خود قبل از بیرون رفتن از دفتر خود برای خرید آنرا از دستگاه را خرید كنند. این اولین وسیله متصل به اینترنت در جهان بود. کازار که اکنون مهندس مایکروسافت است ، می گوید: “این تقریباً به عنوان یک شوخی تلقی می شد.” “هیچ کس انتظار میلیاردها دستگاه در اینترنت را نداشت.”
از آن دستگاه نوشابه ، اشیاء روزمره به طور فزاینده ای به اینترنت اشیا در حال رشد تبدیل می شوند. این شامل همه چیز از مانیتورهای پوشیدنی قلب گرفته تا یخچال های هوشمند است که به شما می گویند شیر در یخچال کم است. دستگاه های اینترنت اشیا اغلب با میکروکنترلرها کار می کنند – تراشه های رایانه ای ساده بدون سیستم عامل ، حداقل قدرت پردازش و کمتر از یک هزارم حافظه تلفن های هوشمند معمولی را نیاز دارند. بنابراین انجام وظایف شناسایی الگو مانند یادگیری عمیق به طور محلی بر روی دستگاه های اینترنت اشیا دشوار است. برای تجزیه و تحلیل پیچیده ، داده های جمع آوری شده اینترنت اشیا اغلب به ابر ارسال می شوند و این امر در برابر هک شدن آسیب پذیر است.
هان می گوید: “چگونه می توانیم شبکه های عصبی را مستقیماً روی این دستگاه های کوچک مستقر کنیم؟ این یک حوزه تحقیقاتی جدید است که در آینده بسیار داغ می شود.” “شرکت هایی مانند Google و ARM همه در این راستا کار می کنند.” هان هم با استفاده از MCUNet ، گروه هان دو مولفه مورد نیاز برای “یادگیری عمیق کوچک” – عملکرد شبکه های عصبی بر روی میکروکنترلرها را رمزگذاری کرد. یک جز component TinyEngine است ، یک موتور استنباطی که مدیریت منابع را هدایت می کند ، شبیه به یک سیستم عامل. TinyEngine برای اجرای یک ساختار شبکه عصبی خاص بهینه شده است که توسط مولفه دیگر یا MCUNet برای TinyNAS ، الگوریتم جستجوی معماری عصبی انتخاب شده است.
طراحی مشترک الگوریتم سیستم
طراحی یک شبکه عمیق برای میکروکنترلرها آسان نیست. تکنیک های موجود در جستجوی معماری عصبی با انبوهی از ساختارهای شبکه احتمالی مبتنی بر یک الگوی از پیش تعریف شده شروع می شوند ، سپس به تدریج یکی از آنها را با دقت بالا و هزینه کم پیدا می کنند. در حالی که این روش کار می کند ، اما کارآمدترین نیست. لین می گوید: “این می تواند برای GPU ها یا تلفن های هوشمند بسیار خوب عمل کند.” “اما استفاده مستقیم از این تکنیک ها در میکروکنترلرهای کوچک بسیار دشوار است ، زیرا آنها بسیار کوچک هستند.”
بنابراین لین TinyNAS را توسعه داد ، یک روش جستجوی معماری عصبی که شبکه هایی با اندازه سفارشی ایجاد می کند. لین می گوید: “ما میکروکنترلرهای زیادی داریم که با ظرفیت های مختلف قدرت و اندازه حافظه متفاوت ارائه می شوند.” “بنابراین ما الگوریتم [TinyNAS] را برای بهینه سازی فضای جستجو برای میکروکنترلرهای مختلف توسعه دادیم.” ماهیت سفارشی TinyNAS به این معنی است که می تواند شبکه های عصبی جمع و جوری با بهترین عملکرد ممکن برای یک میکروکنترلر – بدون پارامترهای غیر ضروری – ایجاد کند. لین می گوید: “سپس ما مدل نهایی و کارآمد را به میکروکنترلر تحویل می دهیم.”
برای اجرای آن شبکه عصبی کوچک ، یک میکروکنترلر همچنین به یک موتور استنباط ناب نیاز دارد. یک موتور استنتاج معمولی وزن کمی دارد – دستورالعمل هایی برای کارهایی که ممکن است به ندرت کار کند. کد اضافی برای لپ تاپ یا گوشی هوشمند مشکلی ایجاد نمی کند ، اما به راحتی می تواند یک میکروکنترلر را تحت فشار قرار دهد. هان می گوید: “این وسیله حافظه خارج از تراشه ندارد و دیسک نیز ندارد.” “همه چیز کنار هم فقط یک مگابایت است ، بنابراین ما باید واقعاً یک منبع کوچک را با دقت مدیریت کنیم.”
محققان موتور استنباط خود را در همکاری با TinyNAS توسعه دادند. TinyEngine کد اساسی لازم برای اجرای شبکه عصبی سفارشی TinyNAS را تولید می کند. هرگونه کد نامناسب کنار گذاشته می شود که باعث کاهش زمان کامپایل می شود. هان می گوید: “ما فقط آنچه نیاز داریم را نگه می داریم.” “و از آنجایی که ما شبکه عصبی را طراحی کردیم ، دقیقاً می دانیم که به چه چیزهایی نیاز داریم. این مزیت طراحی الگوریتم سیستمی است.” در تست های گروه TinyEngine ، اندازه کد باینری وارد شده بین 1.9 تا 5 برابر کوچکتر از موتورهای استنباط میکروکنترلر قابل مقایسه از Google و ARM بود. TinyEngine همچنین حاوی نوآوری هایی است که باعث کاهش زمان کار می شود ، از جمله پیچش عمقی در محل ، که اوج استفاده از حافظه را تقریباً به نصف کاهش می دهد. پس از رمزگذاری TinyNAS و TinyEngine ، تیم هان MCUNet را آزمایش کردند.
اولین چالش MCUNet طبقه بندی تصویر بود. محققان از پایگاه داده ImageNet برای آموزش سیستم با تصاویر دارای برچسب و سپس آزمایش توانایی طبقه بندی تصاویر جدید استفاده کردند. MCUNet با استفاده از یک میکروکنترلر تجاری که آنها آزمایش کردند ، 70.7 درصد از تصاویر جدید را با موفقیت طبقه بندی کرد – پیشرفته ترین شبکه عصبی و موتور استنتاج قبلی فقط 54 درصد دقیق بود. لین می گوید: “حتی یک درصد پیشرفت نیز قابل توجه است.” “بنابراین این یک جهش عظیم برای تنظیمات میکروکنترلر است.”
این تیم نتایج مشابهی را در آزمایشات ImageNet سه میکروکنترلر دیگر یافتند. با توجه به سرعت و دقت ، MCUNet رقابت برای انجام وظایف صوتی و تصویری “واژه” را برطرف می کند ، جایی که کاربر با استفاده از نشانه های صوتی تعامل با رایانه را آغاز می
“پتانسیل عظیم”
نتایج امیدوار کننده آزمون ، هان را امیدوار می کند که به استاندارد جدید صنعت برای میکروکنترلرها تبدیل شود. وی می گوید: ” پتانسیل عظیمی دارد.”
کورت کویتزر ، دانشمند علوم کامپیوتر از دانشگاه کالیفرنیا در برکلی ، که در کار دخیل نبوده ، می گوید: “پیشرفت” مرز طراحی شبکه عصبی عمیق را حتی تا حدی بیشتر به حوزه محاسباتی میکروکنترلرهای کوچک با مصرف انرژی گسترش می دهد. ” وی می افزاید که MCUNet “می تواند قابلیت های هوشمند بینایی رایانه را حتی به ساده ترین وسایل آشپزخانه بیاورد ، یا حسگرهای حرکتی هوشمندتری را فعال کند.”
MCUNet همچنین می تواند باعث امنیت بیشتر دستگاه های اینترنت اشیا شود. هان می گوید: “یک مزیت اصلی حفظ حریم خصوصی است.” “شما نیازی به انتقال داده ها به ابر ندارید.”
تجزیه و تحلیل داده ها به صورت محلی خطر سرقت اطلاعات شخصی را کاهش می دهد – از جمله داده های بهداشت شخصی. هان ساعت های هوشمندی را با MCUNet متصور است که فقط ضربان قلب ، فشار خون و میزان اکسیژن کاربران را درک نمی کند بلکه به آنها کمک می کند تا این اطلاعات را درک کنند. MCUNet همچنین می تواند برای وسایل اینترنت اشیا در وسایل نقلیه و مناطق روستایی با دسترسی محدود به اینترنت ، یادگیری عمیقی ایجاد کند.
به علاوه ، رد پای محاسباتی باریک MCUNet به یک ردپای تولید کربن باریک تبدیل می شود. هان با بیان اینکه “رویای بزرگ ما هوش مصنوعی سبز است” ، افزود: آموزش یک شبکه عصبی بزرگ می تواند تولیدکربن را معادل انتشار مادام العمر پنج اتومبیل بسوزاند. MCUNet در یک میکروکنترلر به بخش کوچکی از این انرژی نیاز دارد. هان می گوید: “هدف نهایی ما این است كه هوش مصنوعی كوچك و کارآمد با منابع محاسباتی كمتر ، منابع انسانی كمتر و داده های كمتر فراهم كنیم.”