
افزایش سرعت محاسبات یادگیری عمیق با کمک امواج نوری
اگر از یک دستگاه خانگی هوشمند در مورد وضعیت آبوهوا سؤال کنید، چند ثانیهای طول میکشد، تا پاسخ بدهد. یکی از دلایل این تأخیر به این موضوع برمیگردد که دستگاههای متصل، حافظه یا انرژی کافی برای ذخیرهسازی و اجرای مدلهای یادگیری عمیق را در اختیار ندارند و همین مدلها هستند که به دستگاه اجازه میدهند، تا سؤال کاربر را بفهمد. مدلهای موجود در مراکز داده که شاید صدها کیلومتر آن طرفتر باشند، پاسخ را محاسبه کرده و به دستگاه ارسال میکنند.

پژوهشگران MIT روش جدیدی برای محاسبه مستقیم روی خود دستگاهها طراحی کردهاند که تأخیر زمانی را بهشدت کاهش میدهد. این تکنیک آن مراحل از یادگیری ماشینی را که به حافظه زیاد نیاز دارند، به یک سرور مرکزی انتقال میدهد و در این سرور مرکزی، مؤلفههای مدل به امواج نوری تبدیل میشوند. امواج با استفاده از فیبرهای نوری به دستگاههای متصل منتقل میشوند؛ به همین دلیل، حجم زیادی از داده را میتوان با سرعت نور در سطح شبکه جابهجا کرد. رسیور از یک دستگاه نوری ساده استفاده میکند که با تکیه بر مؤلفههای موجود در امواج، محاسبات را بهسرعت انجام میدهد.
این تکنیک، در مقایسه با سایر روشها، بازدهی در مصرف انرژی را چند صد برابر افزایش میدهد. علاوه بر این، امنیت هم ارتقاء مییابد، چون دیگر نیازی نیست دادههای کاربر به یک مرکز واحد فرستاده شوند. با تکیه بر فناوری یادگیری عمیق، خودروهای خودران میتوانند در عین کاهش مصرف انرژی، تصمیمات آنی بگیرند، مکالمه بدون تأخیر با دستگاههای خانگی هوشمند امکانپذیر میشود، ویدئوهای زنده در سطح شبکه سلولی پردازش میگردند و تصاویر در ماهوارههایی که میلیونها کیلومتر با زمین فاصله دارند، بهسرعت طبقهبندی میشوند.
درک انگلاند Dirk Englund ، نویسنده اصلی مقاله، استاد مهندسی برق و علوم کامپیوتر MIT و عضو آزمایشگاه تحقیقات الکترونیک این دانشگاه، توضیح میدهد: «برای استفاده از شبکههای عصبی، باید نرمافزار مربوطه را اجرا کنید و سرعت اجرای نرمافزار هم به این بستگی دارد که با چه سرعتی از حافظه فراخوانی میشود. روال پردازشی که ما معرفی کردهایم بسیار گسترده است؛ برای درک بهتر سرعت این رویکرد، تصور کنید که میتوانید یک فیلم کامل را در عرض چند دهم ثانیه ارسال کنید. حالا دادهها میتوانند با همین سرعت وارد سیستم شوند و محاسبات یادگیری عمیق نیز بالطبع با همین سرعت انجام میشوند.»
الکساندر اسلادز Alexander Sludds ، دانشجوی دکتری مهندسی برق و علوم کامپیوتر، نویسنده اصلی مقاله است. سامیل باندیوپادیی Saumil Bandyopadhyay و راین همرلی Ryan Hamerly سایر نویسندگان مقاله هستند. آزمایشگاه لینکلن MIT و شرکت نوکیا نیز در انجام پروژه همکاری داشتهاند. مقاله در ژورنال Science منتشر خواهد شد.
انجام محاسبات شبکههای عصبی توسط دادههای نوری
شبکههای عصبی، مدلهای یادگیری عمیق هستند که از چندین لایه متشکل از گرههای متصل (یا نورون) استفاده میکنند تا الگوهای موجود در دیتاستها را تشخیص داده و مسائل مختلف همچون طبقهبندی تصاویر یا تشخیص گفتار را انجام دهند. این مدلها، میلیاردها پارامتر وزن weight parameters دارند؛ پارامترهای وزن مقادیر عددی هستند که دادههای ورودی را در طول فرایند پردازش تغییر میدهند و این وزنها باید در حافظه ذخیره شوند. درعینحال، فرایند تغییر دادهها مستلزم میلیاردها محاسبات جبری است که بسیار انرژیبر هستند. فرایند دریافت دادهها (وزنهای شبکههای عصبی) از حافظه و انتقالشان به کامپیوتر برای اجرای محاسبات را میتوان یکی از برجستهترین عوامل محدودکننده سرعت و بازدهی دانست. اسلادز در این باره میگوید: «با توجه به این توضیحات، به این فکر افتادیم که این بار سنگین را از روی دوش دستگاه لبه برداریم و در عوض به جای دیگری منتقل کنیم که به انرژی و حافظه زیادی دسترسی دارد. بدینترتیب، پارامترهای وزن خیلی سریعتر دریافت میشوند.»
معماری شبکه عصبی جدید که Netcast نام دارد، وزنها را در یک سرور مرکزی ذخیره میکند که به یک قطعه سختافزار به نام ترنسیور هوشمند smart transceiver متصل است. این ترنسیور هوشمند، تراشهای به اندازه یک انگشت شست است که دادهها را دریافت و منتقل میکند. این تراشه از فناوریای به نام فوتونیک سیلیکونیsilicon photonics استفاده میکند، تا در هر ثانیه، چندین تریلیون پارامتر وزن را از حافظه دریافت کند. ترنسیور هوشمند، پارامترهای وزن را بهعنوان سیگنال الکتریکی دریافت میکند و سپس آنها را به شکل امواج نور درمیآورد. از آنجایی که پارامترهای وزن بهصورت بیت (0 و 1) رمزگذاری میشوند، ترنسیور هم با خاموش و روشنکردن لیزر، آنها را نمایش میدهد؛ بهنحوی که برای بیت 1 لیزر روشن شده و برای بیت 0 خاموش میشود. ترنسیور این امواج نور را ترکیب میکند و سپس به صورت دورهای، از طریق یک شبکه فیبر نوری انتقال میدهد، تا دستگاه کلاینتclient برای دریافتشان، نیازی به کوئریquery از سرور نداشته باشد.
باندیوپادیی توضیح میدهد: «فیبر نوری گزینه بسیار خوبی است، چون دادهها را میتوان به شیوههای متعدد در این فیبرها انتقال داد. برای مثال، دادهها را میتوان بر اساس امواج نوری با رنگهای مختلف منتقل کرد. درنتیجه، هم حجم دادههای انتقالیافته افزایش مییابد و هم پهنای باند دستگاهها گستردهتر میشود.»

افزایش سرعت محاسبات به چندین تریلیون در ثانیه
بعد از اینکه امواج نور به دستگاه کلاینت میرسند، یک مؤلفه نوری ساده به نام مدولاتور Mach-Zehnder با پهنای باند زیاد، از آنها استفاده میکند تا محاسبات آنالوگ را با سرعت بالا انجام دهد. طی این فرایند، دادههای ورودی رمزگذاری و به پارامترهای وزن تبدیل میشوند. در گام بعدی، این مدولاتور امواجی را که طول موج خاصی دارند، به رسیور میفرستد؛ رسیور هم نور را تشخیص داده و نتیجه محاسبات را اندازه میگیرد.
پژوهشگران روش جدیدی ارائه دادهاند تا بتوانند از این مدولاتور برای محاسبه تریلیونها ضرب در هر ثانیه استفاده کنند و بدینترتیب، در عین کاهش مصرف انرژی، سرعت محاسبات را افزایش دهند. اسلادز اضافه میکند: «برای سرعت بخشیدن به فرایندها باید مصرف انرژیشان را پایین آورد. با اینکه میان این دو متغیر معمولاً رابطهای معکوس به چشم میخورد، ما موفق شدیم سیستمی بسازیم که با مصرف حدود یک میلیوات انرژی، تریلیونها ضرب در هر ثانیه انجام میدهد.»
پژوهشگران برای آزمایش معماری جدید، پارامترهای وزن را از طریق یک فیبر نوری 86 کیلومتری که آزمایشگاهشان را به آزمایشگاه لینکلن متصل میکند، ارسال کردهاند. بر اساس یافتهها، Netcast توانست مسئله طبقهبندی تصویر را با دقت 7/98 درصد و مسئله تشخیص ارقام را با دقت 9/98 درصد، با سرعت بالا انجام دهد. همرلی در انتها اضافه میکند: «با اینکه مقداری کالیبراسیون باید انجام میدادیم، اما برای خودمان هم شگفتانگیز بود که با چه زحمت کمی توانستیم به چنین دقت بالایی دست پیدا کنیم. دقتی که Netcast طی آزمایشات از خود نشان داد با محصولات تجاری کنونی قابل مقایسه است.»
برنامه پژوهشگران برای آینده، تکرار آزمایشات برای دستیابی به عملکرد بهتر است. این گروه از متخصصان قصد دارند اندازه رسیور را که در حال حاضر به اندازه یک جعبه کفش است، کاهش دهند و به اندازه تراشهای برسانند که میتواند داخل دستگاههای هوشمند همچون گوشیهای همراه جای بگیرد.