تراشه عصبی نوری
در ابتدا باید بدانید که یک شبکه عصبی چگونه کار میکند. عمل پردازش در شبکههای عصبی با عبور دادن دادهها از میان شمار زیادی از لایههای محاسباتی انجام میشود. این لایههای محاسباتی شامل عناصر پردازشی یا گرههایی موسوم به نورون هستند که با یکدیگر در ارتباط اند. با این روش پردازش، شبکههای عصبی میتوانند در انبوهی از دادهها، الگوهایی را بیابند. نورونها، ورودی را از همسایگان بالادستی خود دریافت میکنند و یک سیگنال خروجی را محاسبه کرده و برای نورونهایی در پاییندست ارسال میکنند و نتایج، بین لایهها دستبهدست میشود تا اینکه نتیجه نهایی به لایه خروجی برسد. در این ساختار پردازشی، میزان اهمیت هر ورودی و تأثیرگذاریاش در نتیجه نهایی در قالب یک مقدار که به آن «وزن» میگویند، تعریف میشود. میزان اهمیت این ورودیها یا مقادیر این وزنها در جریان فرآیندی موسوم به آموزش شبکه عصبی تنظیم میشود. با نفوذ بیشتر دادهها به لایههای عمیقتر، شبکه اطلاعات پیچیدهتری را میآموزد و لایه خروجی، پیشبینی نهایی شبکه را تولید میکند که بر اساس محاسبات لایههای پیشین بهدست آمده است. اگر بخواهیم به آنچه توضیح دادیم با دید ریاضی نگاه کنیم، با یکسری عملیات ماتریسی یا به بیان بهتر با ضربهای ماتریسی ـ برداری و به بیان سادهتر با مجموعهای از ضربها و جمعها سر و کار داریم .
پیادهسازی شبکههای عصبی روی سختافزارهای محاسباتی امروزی چندان بهصرفه نیست که بخش زیادی از این ناکارآمدی به طراحی این سختافزارها مربوط است. سختافزارهای امروزی الکترونیکی بوده و مبتنی بر معماری فوننویمان (Von Neumann) هستند . پیادهسازی شبکههای عصبی در معماری فوننویمان نیازمند برداشت و ذخیرهسازی مکرر دادهها است و در یک شبکه عصبی پیاده شده بر چنین سختافزاری، شاهد رفتوآمد دیوانهوار دادهها بین پردازنده و حافظه خواهیم بود و این یعنی مصرف برق زیاد. تا به امروز برای طراحی معماریهای الکترونیکی که مناسب پیادهسازی شبکههای عصبی مصنوعی باشند و سرعت محاسباتی بالا و توان مصرفی بهینهای را عرضه کنند، تلاشهای زیادی شده است.
هرچه ساختار شبکه عصبی، چه نوع مرسوم الکترونیکی و چه گونههای
جدید، پیچیدهتر میشود، مقادیر بسیار بیشتری از توان الکتریکی را میبلعد. بهمنظور
یافتن راهکاری برای برطرفکردن این مشکل اساسی، مراکز پژوهشی و شرکتهای فناور
بزرگ نظیر گوگل، آیبیاِم، تسلا، هوواوی و سامسونگ به توسعه شتابدهندههای هوشمصنوعی (AI accelerators) اقدام کردهاند؛
تراشههای ویژهای که سرعت و بهرهوری آموزش و آزمودن شبکههای عصبی را بهبود میدهند.
برای مصرف انرژی تراشههای الکتریکی از جمله همین شتابدهندههای هوش مصنوعی، از
نظر تئوری محدودیتی وجود دارد، یعنی تا حد مشخصی میتوان این مصرف توان را کاهش
داد.
یک شتابدهنده شبکه عصبی برای اینکه
بتواند در این زمینه بر رقبایی نظیر پردازندههای گرافیکی پیروز شود باید مصرف
توان را بهطور قابلتوجهی پایین بیاورد تا استفاده از آن توجیهپذیر باشد. علاوه
بر این، چنین شتابدهندههایی باید سریع، قابل برنامهریزی و جمعوجور بوده و
بتوان آنها را روی شمار بیشتری از نورونها اعمال کرد (مقیاسپذیری). در حال حاضر
مدارهای مجتمع با کاربرد خاص (ASIC) بهترین گزینه برای توسعه شتابدهندههای شبکه عصبی هستند.
نمونههای پیشرفته چنین تراشههایی قادرند مصرف انرژی را به حدود ۱ پیکوژول بر MAC سرنام برسانند
که حدود یک بیستم مصرف توان پردازندههای مدرن گرافیکی است. با اینحال حتی با
بهترین معماری، بخش زیادی از انرژی صرف جابهجایی دادهها میشود، نه پردازش.
راهکارهایی نظیر استفاده از مِمریستور برای برطرف کردن این مشکل مطرحشده که
راهکارهای بیعیب و نقصی نیستند. در نتیجه برای دستیابی به بهرهوری سختافزاری در
حوزه یادگیری ماشین، نمیتوان فقط به معماریهای الکترونیکی متکی بود.
راهکار نوری
شبکههای عصبی کاملا اپتیکی میتوانند جایگزین بسیار مناسبی برای پیادهسازیهای الکترونیکی یا اپتیکی-الکترونیکی باشند به عقیده برخی از محققان میتوان تبدیلات خطی و حتی تبدیلات غیرخطی را با سرعت نور اجرا کرد و با سرعتهای بالا که شاید به فراتر از ۱۰۰ گیگاهرتز هم برسند و با کمترین میزان مصرف توان، آنها را در شبکههای نوری ارزیابی کرد. حالا بهخوبی مشخص شده که میتوان با یک لنز و بدون اینکه ذرهای توان مصرف شود تبدیل فوریه را اجرا کرد یا برخی از عملیات ماتریسی را بهطور اپتیکی بدون مصرف توان انجام داد. بااینحال، ابعاد فیزیکی قطعات اپتیکی نظیر فیبرها و لنزها، پیادهسازی شبکههای عصبی را با مشکل مواجه میکند، زیرا در شبکههای عصبی به تعداد زیادی نورون نیاز داریم و ابعاد این قطعات، کوچکسازی سختافزار پردازشی نهایی را دشوار میکند. رایانش با نور و ساخت تراشههای نوری، چالش برانگیز است. تلاشهای گذشته در این زمینه با شکست روبهرو شده که از دلایل آن میتوان به دشوار بودن شبیهسازی عملکرد ترانزیستور با ادوات نوری و رفتار کموبیش غیرقابل پیشبینی نور اشاره کرد. اما رایانش نوری برتری خود را در حوزه یادگیری عمیق بهخوبی نشان میدهد. محققان معتقدند:
«تراشههای نوری برای انجام عملیات ضرب ماتریسی که در یادگیری عمیق نقش مهمی ایفا میکند، بسیار مناسب هستند.»
ضرب ماتریسی روی سختافزار
نوری برای ضرب ماتریسی که در حقیقت مجموع مقادیر وزندهی شده است، ابتدا مقادیر، به سیگنالهای نوری تبدیل میشوند. هرچه عدد بزرگتر، شدت نور هم بیشتر. تراشه نوری، عملیات ضرب ماتریسی مورد نظر را به قطعات کوچکتری میشکند و هر قطعه را به یک سلول از تراشه میسپارد. برای درک عملکرد هر یک از این سلولهای محاسباتی، دو جریان آب را تصور کنید که به درون این سلول پردازشی جاری میشوند و نمایانگر پرتوهای نوری ورودی هستند. این سلولها نظیر شبکهای از حوضچهها و پمپها عمل میکنند. بهطوریکه پرتوها را تقسیم، سرعت آنها را کم و زیاد کرده و دوباره آنها را ترکیب میکنند. با کنترل کردن سرعت پمپها، این واحد پردازشی میتواند مقادیر مختلفی از آب را به هریک از جریانهای خروجی هدایت کند. در تراشه نوری، کانالهای سیلیکونی با دمای قابل تنظیم، عملکردی شبیه همین پمپها دارند. اتمهای سیلیکون وقتی حرارت میبینند کمی پخش میشوند و این، سرعت نور عبوری را تغییر میدهد. پرتوهای نوری که از چنین ساختاری و با سرعتهای مختلف عبور داده میشوند یکدیگر را تقویت یا تضعیف میکنند. یک کامپیوتر معمولی میزان حرارت را به گونهای تنظیم میکند که پرتوی حاصل در خروجی هر سلول معادل مجموع وزندهی شده ورودیها باشد. در حقیقت، گرمکنندهها وزن ورودی را مشخص میکنند و با تغییر دادن سرعت پرتوهای ورودی، به آنها وزن میدهند.
در ادامه به مثالهایی از تحقیقات صورت گرفته میپردازیم. همانطور که خواهید دید، این مثالها مبتنی بر تحقیقات دانشگاه اِمآیتی است و حتی دو شرکتی که از آنها یاد خواهد شد، شرکتهایی هستند که تأسیس آنها حاصل تحقیقات دانشگاه اِمآیتی بوده است.
Ryan Hamerly از آزمایشگاه تحقیقات الکترونیک میگوید: « محققان به دنبال فناوری هستند که قابلیت محاسباتی فراتر از محدودیتهای بنیادین مصرف انرژی داشته باشد.» او میگوید شتابدهندههای فوتونیک امیدبخش هستند، اما آنچه محققان اِمآیتی به دنبال آن هستند ساخت شتابدهنده فوتونیکی است که بتوان از آن برای شبکههای عصبی بزرگ استفاده کرد. Hamerly معتقد است: « اگر شتابدهنده فوتونیک توانایی پردازش بیش از صد نورون به ازای هر لایه را نداشته باشد، پیادهسازی شبکههای عصبی بزرگ با استفاده از آن معماری دشوار خواهد شد. در این روش پس از ضرب نوری ماتریسها، یک سیگنال خروجی الکتریکی ( و نه نوری) تولید میشود. نتیجه استفاده از این روش صرفهجویی قابلتوجه در فضای روی تراشه است. بنابراین تراشه قابلیت مقیاسپذیری بالایی دارد، بهطوریکه پیادهسازی شبکههای عصبی که در هر لایه خود بیش از یکمیلیون نورون دارند با چنین دستاوردی امکانپذیر میشود. بر اساس نتایج شبیهسازی، محققان اینطور نتیجه گرفتند که از نظر مصرف توان، این شتابدهنده برتری بسیار قابل توجهی نسبت به رقبای الکترونیکی و حتی نوری خود دارد. در حال حاضر، تقاضای رو به افزایشی برای اجرای شبکههای عصبی بزرگ روی مرکز دادهها وجود دارد و از جمله کاربردهای چنین شتابدهندهای کاهش مصرف انرژی در مراکز داده است.
شرکت Lightmatter
در سال ۲۰۱۴ نیکلاس هریس و همکارش در جریان تحقیقات مربوط به دکترای خود در دانشگاه اِمآیتی روی ترکیب فناوری اپتیک با رایانش کوانتومی کار میکردند. یک سال بعد این دو علاوه به رایانش کوانتومی بر حوزههایی دیگر از جمله هوش مصنوعی متمرکز شدند. هریس و همکارش مهندسانی بودند که اطلاع زیادی از راهاندازی کسبوکار نداشتند. به همین دلیل تصمیم گرفتند، دورهای آموزشی در زمینه کارآفرینی را در دانشکده مدیریت اِمآیتی بگذرانند و این فرصتی شد تا با توماس گراهام آشنا شوند. شرکتکنندگان در این دوره باید ایدههای تجاری را در قالب ویدیوهایی معرفی میکردند. گراهام ویدیویی را که هریس در زمینه رایانش نوری ساخته بود، دید و این ایده توجهاش را جلب کرد. این سه تصمیم گرفتند در رقابت کارآفرینی اِمآیتی شرکت کنند و همه تلاششان را برای بهدست آوردن پاداش ۱۰۰هزار دلاری این رقابت به کار بستند و با هم یک طرح کسبوکار ارائه کردند و در نهایت موفق شدند در سال ۲۰۱۷ با کنار زدن شمار زیادی از رقبا پاداش را به دست آوردند. برنده شدن در این رقابت راه را برای سفر به سیلیکونوَلی، و ملاقات با سرمایهگذاران بیشتر هموار کرد. در تراشهای که این استارتآپ توسعه داده بهجای واحد MAC که بخشی متداول در شتابدهندههای هوش مصنوعی است و وظیفه انجام عملیات ضرب و جمع متوالی را برعهده دارد، از واحد اپتیکی موسوم به تداخلسنج ماخ-زندر استفاده شده است.
البته متقاعد کردن سرمایهگذاران چندان هم ساده نبوده و آنها برای سرمایهگذاری روی چنین تراشهای به دلایل خوب نیاز داشتند. توماس گراهام به یاد میآورد که سرمایهگذاران میگفتند: « ثابت کنید که آنچه طراحی کردهاید چیزی بیش از یک پروژه تحقیقاتی است.» و حالا آنها موفق شدهاند اعتماد شرکتهای فناور مهمی را جلب کنند. دستیابی به چنین تراشهای آنقدر جذاب بوده تا شرکتی نظیر آلفابت از این استارتآپ حمایت کند. این گروه هدفشان این است که تراشهشان با فریمورکهای محبوب هوش مصنوعی نظیر TensorFlow گوگل کار کند. هریس میگوید: «در مراکز داده دو جنبه بسیار مهم وجود دارد؛ حجم عملیاتی که در هر ثانیه انجام میشود و بهرهوری مصرف انرژی؛ یعنی اینکه در هر ثانیه و به ازای هر وات چه میزان پردازش انجام میشود.» او مدعی است راهکارشان بیش از ده برابر راهکارهای فعلی کارآیی دارد. شرکت او ۲۳ کارمند دارد و هریس معتقد است، در بازه زمانی ۵ تا ۱۰ ساله این تراشه عملیاتی خواهد شد. به گفته هریس، تلاش زیادی میشود که چنین دستگاههایی قابلیت اتصال و اجرا ( plug and play ) داشته باشد و بتوان از آنها به همان روشی که از پردازندههای گرافیکی استفاده میشود، در سامانههای پردازشی بهره برد
شرکت Lightelligence
استارتآپ Lightelligence نمونه اولیهای از تراشه نوری ارائه کرده که میزان تأخیر را در مقایسه با سختافزارهای مرسوم تا ده هزار برابر بهبود داده و مصرف توان را به میزان قابلتوجهی کاهش میدهد. این شرکت توسط Yichen Shen راهاندازی شده است. او با همکاری گروهی از محققان اِمآیتی و از جمله نیکلاس هریس مقالهای در زمینه پردازندههای نوری نوشت ،و به تحقیق در زمینه پردازش نوری شبکههای عصبی پرداخت. او Lightelligence را ماهها بعد تاسیس کرد و استادش از نخستین کسانی بود که به هیئت مدیره شرکت پیوست. Soljacic معتقد است: « خیلی بهندرت اتفاق میافتد که استادی در دوران کاری خود به دانشجویی نظیر Yichen برخورد کند، حتی در اِمآیتی. او یک آیندهنگر تمامعیار و یک پیشگام در حوزه استفاده از مدارهای مجتمع اپتیکی برای هوش مصنوعی است.» روی این تراشه مدارهای نوری شبیه فیبرهای نوری که سیگنالها را منتقل میکنند، پیاده شده است. هدف طراحان این است که این تراشه قادر به اجرای فریمورکهایی نظیر Tensorflow شرکت گوگل، Caffe2 فیسبوک و Pytorch باشد. این شرکت مدعی است، عملکرد این تراشه در انجام ضربهای ماتریس برداری و سایر عملیات خطی که عامل مهمی در مدلهای هوش مصنوعی محسوب میشوند، بر اساس آزمون MNIST یک مدل یادگیری ماشین مرجع برای آزمودن کارآیی شبکههای عصبی نزدیک به ۱۰۰ بار سریعتر از تراشههای الکترونیکی پیشرفته امروزی است. این شرکت تا به امروز موفق شده چندین میلیون دلار سرمایه را به خود جلب کند و بیش از ۲۰ کارمند دارد که شماری از آنها از مراکز تحقیقاتی نظیر کلمبیا، جورجیاتِک و برکلی به این شرکت پیوستهاند و از میان آنها میتوان به دکتر Gilbert Hendry اشاره کرد که سمتهای مختلفی در شرکتهای گوگل و مایکروسافت داشته است
یکی از تحلیلگران مؤسسه VLSI Research که نوآوریهای حوزه طراحی تراشهها را بررسی میکند، معتقد است که تمایل به تراشههای نوری جدید روبه افزایش است که این مدیون گامهایی است که برای طراحی و تولید دستگاههای مورد استفاده در شبکهها برداشته شده است. از سوی دیگر، ساخت تراشههای نوری به نسبت سادهتر است و ارزان تمام میشود و این نکته مهم باعث میشود که شرکتهای نوپا با رغبت بیشتری روی طراحی و توسعه چنین تراشههایی کار کنند. با این حال، شرکتهایی نظیر Lightelligence با چالشهایی مواجه هستند. به عقیده مدیر استارتآپ OURS Technology حتی اگر چنین تراشهای آنطور که ادعا میشود کار کند، تولید انبوه آن دشوار است. بستهبندی و آزمودن تراشهای با طراحی کاملا جدید چالش بزرگی است، بهویژه اینکه ابزارهای مناسبی برای طراحی نرمافزار چنین تراشههای نوری موجود نیست ( که این خود میتواند برای استارتآپهای دیگر محرکی باشد تا روی توسعه چنین نرمافزارهایی کار کنند و این خلأ را بپوشانند).
به عقیده او اگرچه نور ویژگیهای جذابی برای استفاده در رایانش دارد، اما مدارهای الکترونیکی را که لازم است از آنها در کنار اجزا نوری در تراشه استفاده شود نظیر راهاندازهای لیزر، مدارهای گیرنده فوتون و مدولاتورهای الکترونیکی روند طراحی را پیچیده میکنند.
علی پرتویی، یکی از بنیانگذاران شرکت نِروانا، (استارتآپی که روی تراشههای عصبی کار میکرد و بعدها توسط شرکت اینتل خریداری شد) علاقهمند به سرمایهگذاری روی تراشههای نوری است. او که در کنار سرمایهگذارانی نظیر اوبر و مایکروسافت روی شرکتی تازه تأسیس به نام Luminous Computing سرمایهگذاری کرده است میگوید: «من همیشه سرمایهگذاری روی گروههای جوان و خلاق را به سرمایهگذاری در شرکتهای بزرگ و تثبیت شده ترجیح میدهم. چنین سرمایهگذاریهایی بسیار پرخطرند، اما ارزشاش را دارند. چون اگر فرصت را از دست بدهیم و چنین رقابتی به سرانجام برسد، دیگر برای سرمایهگذاری خیلی دیر شده است.