در سالهای اخیر، شبکههای عصبی CNN (سرنام Convolutional Neural Network) نقش مهمی در پیشرفت هوش مصنوعی داشتهاند. اما این شبکهها یک ضعف بسیار مهم هم دارند و آن وابستگی زیاد به عملیات ریاضی نظیر ضرب است. بهمنظور غلبه بر این چالش محاسباتی بسیار مهم، راهکارهای متنوعی برای شتابدهی فرآیند آموزش و تفسیر این شبکهها ارائهشده و طیف وسیعی از معماریهای سختافزاری و نرمافزاری برای بهبود عملکرد و کارایی شبکههای CNN در مراکز داده و لبه (edge) طراحیشده است. تراشههای قابل برنامهریزی در محل (FPGA)، پردازندههای گرافیکی و چندین معماری اختصاصی سختافزاری با یکدیگر در رقابت هستند تا سهمی از بازار رو به رشد محاسبات مبتنی بر هوش مصنوعی را به دست آورند.
شبکههای SNN (سرنام Spiking Neural Network) از نظر ساختاری در مقایسه با CNN شباهت بیشتری به شبکههای عصبی زیستی دارند. بر این اساس، SNN، برای انجام وظایف خود به منابع محاسباتی بسیار کمتری نیاز داشته و در نتیجه فرآیند تفسیر توسط این شبکهها در کاربردهای لبهای بسیار بهینهتر است. شبکههای CNN بر اساس جبر خطی کار میکنند و به ضرب ماتریسی، توابع واحد یکسوسازی شده، لایه pooling، لایههایی با درجه اتصال بسیار بالا و مهمتر از همه به آموزش با حجم بسیار بزرگی از دادههای آموزشی نیاز دارند که این بخش آخر معمولا خارج از تراشه هوش مصنوعی و با استفاده از مراکز داده انجام میشود.
در مقابل، شبکههای SNN از منطق آستانه (Threshold Logic) و تقویت اتصال از طریق پالسها (Spikes) و آموزش پیشرو (Feed-Forward) که هم روی تراشه و هم خارج از تراشه قابلاجراست استفاده میکنند. این روش، امکان آموزش سریعتر و مداوم را فراهم میکند. شبکههای عصبی SNN بهعنوان شبکههای عصبی نسل سوم شناخته میشوند. در طول سالهای اخیر به این نوع از شبکههای عصبی توجه کمتری شده و شاید یکی از دلایل آن، رواج این تفکر اشتباه بوده که چنین شبکههایی به توان محاسباتی بیشتری نیاز دارند.
شرکت برینچیپ
شرکت برینچیپ در بازار پردازش عصبی، راهی متفاوت را در پیشگرفته است. این شرکت طی 10 سال گذشته روی توسعه سختافزارها و نرمافزارهای مورد نیاز برای محاسبات نورومورفیک مبتنی بر شبکههای عصبی SNN کار کرده است. برای مثال، شرکت برینچیپ ابزاری نرمافزاری بهنام Brainchip Studio (شکل ۱) در اختیار دارد که بر اساس نرمافزاری متعلق به شرکت SpikeNet Technology توسعه دادهشده است. برینچیپ این شرکت را در سال ۲۰۱۷ خرید. بنابر ادعای برینچیپ، Brainchip Studio یک نرمافزار آموزش نظارتشده است که امکان آموزش سریع و با دقت زیاد را با صرف توان به نسبت کم فراهم میکند و در مواردی که دادههای آموزشی کمی در دسترس است مفید خواهد بود.
شکل۱. BrainChip Studio با کمک شبکههای SNN قادر است حجم زیادی از تصاویر ویدیویی را پردازش کند. این نرمافزار با پردازش تصاویری با ابعاد ۲۴ پیکسل، قادر به شناسایی چهره است.
آکیدا: تراشهای مبتنی بر SNN
سال گذشته میلادی شرکت برینچیپ تراشهای جدید با نام آکیدا (Akida NSoC) معرفی کرد که بهمنظور پیادهسازی شبکههای SNN و استفاده در کاربردهایی نظیر محاسبات لبهای (Edge Computing) و بهطور خاص، برای بینایی ماشینی و شناسایی تصاویر طراحیشده است (شکل ۲).
شکل2. طرحی از اجزای داخلی تراشه آکیدا.
استفاده در امنیت سایبری و تجزیهوتحلیلهای مالی از دیگر کاربردهای چنین تراشهای عنوانشده است. شبکههای عصبی SNN نسبت به شبکههای معمول CNN برق کمتری مصرف میکنند، زیرا از عملیات سنگین ریاضی و روشهای آموزش پسانتشار (back-propagation) استفاده نکرده و در عوض از توابع عصبی الهامبخش از طبیعت و روشهای آموزش پیشرو (Feed-Forward) استفاده میکنند. اگرچه فرآیند ساخت آکیدا، مبتنی بر روشهای مرسوم ساخت تراشههای دیجیتال است، اما به دلیل نوع عملکرد شبکههای SNN، شاهد کاهش میزان کلیدزنی ترانزیستورها نسبت به شبکههای CNN هستیم و این سبب کاهش قابلتوجه مصرف برق میشود. یکی از ویژگیهای جذاب SNN در مقایسه با CNN امکان آموزش شبکه در محل و هنگام کار است. در شبکههای CNN مجبوریم پیش از بهکارگیری، آنها را توسط سامانههای پردازشی پرقدرت آموزش دهیم. با این حال، هنوز مشخص نیست آموزش در محل چطور روی آکیدا پیاده میشود.
نگاهی نزدیکتر
هر تراشه آکیدا شامل یکمیلیون و دویست هزار نورون و 10 میلیارد سیناپس در 11 لایه SNN است. یک پردازنده RISC روی آکیدا جاسازیشده که وظیفه کنترل پیکربندی Akida Neuron Fabric و ارتباط تراشه با بیرون را بر عهده دارد. آکیدا در مقایسه با تراشههای نورومورفیک آزمایشی شرکتهایی نظیر آیبیاِم و اینتل، کارایی بسیار بهتری از خود نشان داده است. این تراشه میتواند در ازای مصرف یک وات، ۱۴۰۰ فریم را در ثانیه پردازش کند. این نتایج برای تراشهای 10 دلاری بسیار چشمگیر هستند. تراشهای با این قیمت و کارایی میتواند رقیب جدی برای تراشههای قابل برنامهیزی در محل (FPGA) محسوب شود که از گزینههای مهم برای استفاده در مرحله تفسیر هستند. آکیدا در آزمونهایی نظیر CIFAR-10 در مقایسه با شتابدهندههای CNN نتایج به نسبت خوبی کسب کرده است. این تراشه از یک مدل عصبی ثابت که به حافظه روی تراشه کمتری نسبت به پیادهسازی CNN نیاز دارد (۶ مگابایت در مقابل ۳۰ تا ۵۰ مگابایت حافظه مورد نیاز برای CNN) که این ویژگی از دلایل کاهش مصرف برق آکیدا است. روشهای آموزشی مدل عصبی پیاده شده آکیدا به صورتهای نظارتشده و بدون نظارت هستند. در حالت نظارتشده لایههای نخستین شبکه بهطور خودگردان، خود را آموزش میدهند، درحالیکه در لایههای پایانی که اتصالات کاملی دارند، برچسبها (label) قابلاعمال هستند.
آکیدا با هدف استفاده بهعنوان یک شتابدهنده توکار مستقل یا یک کمک پردازنده طراحیشده است. این تراشه رابطهای مورد نیاز را برای ارتباط با حسگرها (در حالت استفاده بهعنوان یک پردازنده توکار) یا رابطهایی برای تبادل داده (در حالت استفاده بهعنوان کمک پردازنده) در اختیار دارد. آکیدا به رابطهای مناسب برای تصویرگیری سنتی مبتنی بر پیکسل، حسگرهای بصری پویا DVS (سرنام Dynamic Vision Sensors)، لایدار، صوت و سیگنالهای آنالوگ مجهز است. علاوه بر این، قادر به پشتیبانی از رابطهای سریعی نظیر PCI-Express، یواِسبی، اترنت، CAN و UART نیز است. از سوی دیگر، مبدلهای تبدیل داده به پالسِ توکار کمک میکنند تا آکیدا به بهترین شکل ممکن دادههای با فرمتهای پرکاربرد را به پالسهای قابلاستفاده برای شبکه عصبی تبدیل کند.
در استفاده از آکیدا، امکان آموزش بیرون تراشه، با استفاده از فریمورک یادگیری ماشینی Akida Development Environment و امکان آموزش روی تراشه وجود دارد. این فریمورک امکان ساخت، آموزش و آزمودن شبکههای SNN را بهمنظور استفاده روی آکیدا فراهم کرده و از اسکریپهای پایتون و ابزارها و کتابخانههایی نظیر NumPy و Matplotlib پشتیبانی میکند (شکل ۳).
شکل3. فریمورک ADE امکان ساخت، آموزش و آزمودن شبکههای SNN را بهمنظور استفاده روی آکیدا فراهم کرده است.
اهمیت لبه
آکیدا تراشهای کوچک، ارزانقیمت و با مصرف برق کم است و گزینهای ایدهآل برای استفاده در کاربردهای لبهای نظیر سامانههای کمکراننده پیشرفته (ADAS)، خودرانها، پهپادها و روباتهای بینا و نیز سامانههای نظارتی و بینایی خواهد بود. مقیاسپذیری آکیدا به کاربران اجازه میدهد دستگاههای مجهز به این تراشه را بهمنظور آموزش و بهکارگیری شبکههای عصبی پیچیده، با هم شبکه کنند و در بازارهایی نظیر فناوریهای کشاورزی (AgTech)، امنیت سایبری و فناوریهای مالی (FinTech) از آن بهره ببرند.
در اواخر سال ۲۰۱۹ عرضه آکیدا آغاز خواهد شد و قیمت آن حدود ۱۰ دلار برآورد شده است. چنین قیمتی آن را در رقابت با محصولاتی نظیر Movidius اینتل قرار میدهد که بازار سودآور تفسیر در لبه را هدف قرار دادهاند. برینچیپ مدعی است که کارایی آکیدا به ازای هر وات مصرف برق بسیار بهتر از نمونههایی نظیر واحد پردازش بینایی Movidius Myriad 2 اینتل (شکل ۴) خواهد بود که در صورت صحت این ادعا، آکیدا را به یک رقیب جدی در این بازار تبدیل خواهد کرد.
شکل4. واحد پردازش بینایی Movidius Myriad 2 اینتل
پیشبینی میشود ارزش بازار تراشههای شتابدهنده هوش مصنوعی تا سال ۲۰۲۵ به ۶۰ میلیارد دلار برسد. پردازش نورومورفیک، موتور محرکی برای هوش مصنوعی در کاربردهایی است که به مصرف برق کمتری نیاز دارند. بنا بر پیشبینی مؤسسه Tractica. طی چند سال آینده، شاهد گونه جدیدی از سختافزارهای بهینهسازی شده برای کاربردهای هوش مصنوعی خواهیم بود. لو دیناردو (Lou DiNardo) مدیر ارشد اجرایی شرکت برینچیپ معتقد است: «شرکتهای دیگر، اعم از شرکتهای بزرگ و کوچک با وجود تلاشهای زیادی که کردهاند، تاکنون موفق به عرضه انبوه تراشه نورومورفیک به بازار نشدهاند.» به عقیده او طی این سالها و بهمرور، کاربرد هوش مصنوعی در محاسبات لبهای بهاندازه سختافزار اهمیت پیدا کرده است.
ماهنامه شبکه را از کجا تهیه کنیم؟
ماهنامه شبکه را میتوانید از کتابخانههای عمومی سراسر کشور و نیز از دکههای روزنامهفروشی تهیه نمائید.
ثبت اشتراک نسخه کاغذی ماهنامه شبکه
ثبت اشتراک نسخه آنلاین
کتاب الکترونیک +Network راهنمای شبکهها
- برای دانلود تنها کتاب کامل ترجمه فارسی +Network اینجا کلیک کنید.
کتاب الکترونیک دوره مقدماتی آموزش پایتون
- اگر قصد یادگیری برنامهنویسی را دارید ولی هیچ پیشزمینهای ندارید اینجا کلیک کنید.
نظر شما چیست؟