جفری هینتون [بالا] و دانشجویان فارغ التحصیلش، الکس کریژفسکی و ایلیا سوتسکور، AlexNet، یک شبکه عصبی برای
      تشخیص تصویر، را در سال 2012 منتشر کردند. Johnny Guatto/دانشگاه تورنتو
جفری هینتون [بالا] و دانشجویان فارغ التحصیلش، الکس کریژفسکی و ایلیا سوتسکور، AlexNet، یک شبکه عصبی برای تشخیص تصویر، را در سال 2012 منتشر کردند. Johnny Guatto/دانشگاه تورنتو

کد منبع AlexNet اکنون متن‌باز است

AlexNet که اولین بار در سال 2012 منتشر شد، انقلابی در هوش مصنوعی و بینایی کامپیوتر ایجاد کرد

موزه تاریخ کامپیوتر با همکاری گوگل، کد منبع AlexNet، شبکه عصبی‌ای که در سال 2012 رویکرد غالب امروزی به هوش مصنوعی را آغاز کرد، منتشر کرده است. کد منبع به عنوان متن‌باز در صفحه GitHub موزه تاریخ کامپیوتر در دسترس است.

AlexNet چیست؟

AlexNet یک شبکه عصبی مصنوعی است که برای تشخیص محتویات تصاویر عکاسی ایجاد شده است. این شبکه در سال 2012 توسط الکس کریژفسکی و ایلیا سوتسکور، دانشجویان فارغ التحصیل دانشگاه تورنتو در آن زمان، و جفری هینتون، مشاور هیئت علمی آنها، توسعه یافت.

ریشه‌های یادگیری عمیق

هینتون به عنوان یکی از پدران یادگیری عمیق، نوعی از هوش مصنوعی که از شبکه‌های عصبی استفاده می‌کند و اساس هوش مصنوعی اصلی امروزی است، شناخته می‌شود. شبکه‌های عصبی ساده سه لایه با تنها یک لایه وزن‌های تطبیقی اولین بار در اواخر دهه 1950 ساخته شدند—که مهمترین آنها توسط فرانک روزنبلات، محقق دانشگاه کرنل بود—اما مشخص شد که محدودیت‌هایی دارند. [این توضیح‌دهنده جزئیات بیشتری در مورد نحوه کار شبکه‌های عصبی ارائه می‌دهد.] به طور خاص، محققان به شبکه‌هایی با بیش از یک لایه وزن‌های تطبیقی نیاز داشتند، اما راه خوبی برای آموزش آنها وجود نداشت. تا اوایل دهه 1970، شبکه‌های عصبی تا حد زیادی توسط محققان هوش مصنوعی رد شده بودند.

فرانک روزنبلات [سمت چپ، نشان داده شده با چارلز دبلیو. وایتمن] اولین شبکه عصبی مصنوعی، پرسپترون، را در سال 1957 توسعه داد.
فرانک روزنبلات [سمت چپ، نشان داده شده با چارلز دبلیو. وایتمن] اولین شبکه عصبی مصنوعی، پرسپترون (Perceptron)، را در سال 1957 توسعه داد. Division of Rare and Manuscript Collections/Cornell University Library

در دهه 1980، تحقیقات شبکه عصبی در خارج از جامعه هوش مصنوعی توسط دانشمندان علوم شناختی در دانشگاه کالیفرنیا سن دیگو، تحت نام جدید "اتصال‌گرایی" احیا شد. هینتون پس از اتمام دکترای خود در دانشگاه ادینبورگ در سال 1978، به عنوان فوق دکترا در UCSD شد، جایی که با دیوید روملهارت و رونالد ویلیامز همکاری کرد. این سه نفر الگوریتم پس انتشار (Backpropagation) را برای آموزش شبکه‌های عصبی دوباره کشف کردند و در سال 1986 دو مقاله منتشر کردند که نشان می‌داد این الگوریتم شبکه‌های عصبی را قادر می‌سازد تا لایه‌های متعددی از ویژگی‌ها را برای وظایف زبانی و بینایی یاد بگیرند. پس انتشار، که امروزه اساس یادگیری عمیق است، از تفاوت بین خروجی فعلی و خروجی مورد نظر شبکه برای تنظیم وزن‌ها در هر لایه، از لایه خروجی به عقب تا لایه ورودی، استفاده می‌کند.

در سال 1987، هینتون به دانشگاه تورنتو پیوست. دور از مراکز هوش مصنوعی سنتی، کار هینتون و دانشجویان فارغ التحصیلش تورنتو را به یک مرکز تحقیقات یادگیری عمیق در دهه‌های آینده تبدیل کرد. یکی از دانشجویان فوق دکترای هینتون، یان لکون (Yann LeCun) بود که اکنون دانشمند ارشد در متا (Meta) است. لکون در حالی که در تورنتو کار می‌کرد، نشان داد که وقتی پس انتشار در شبکه‌های عصبی "کانولوشنال" استفاده می‌شود، آنها در تشخیص اعداد دست نویس بسیار خوب می‌شوند.

مجموعه داده تصویر ImageNet فی-فی لی، که در سال 2009 تکمیل شد، در آموزش AlexNet بسیار مهم بود. در اینجا، لی [سمت راست] با تام کلیل در موزه تاریخ کامپیوتر صحبت می‌کند.
مجموعه داده تصویر ImageNet فی-فی لی (Fei-Fei Li)، که در سال 2009 تکمیل شد، در آموزش AlexNet بسیار مهم بود. در اینجا، لی [سمت راست] با تام کلیل (Tom Kalil) در موزه تاریخ کامپیوتر صحبت می‌کند. Douglas Fairbairn/Computer History Museum

ImageNet و پردازنده‌های گرافیکی (GPUs)

با وجود این پیشرفت‌ها، شبکه‌های عصبی نمی‌توانستند به طور مداوم از انواع دیگر الگوریتم‌های یادگیری ماشین بهتر عمل کنند. آنها به دو پیشرفت از خارج از هوش مصنوعی نیاز داشتند تا راه را هموار کنند. اولین مورد ظهور مقادیر بسیار بیشتری از داده‌ها برای آموزش بود که از طریق وب در دسترس قرار گرفت. دومی قدرت محاسباتی کافی برای انجام این آموزش، در قالب تراشه‌های گرافیکی سه بعدی، معروف به پردازنده‌های گرافیکی (GPUs) بود. تا سال 2012، زمان برای AlexNet رسیده بود.

مجموعه داده تصویر ImageNet فی-فی لی، که در سال 2009 تکمیل شد، در آموزش AlexNet بسیار مهم بود. در اینجا، لی [سمت راست] با تام کلیل در موزه تاریخ کامپیوتر صحبت می‌کند.
مجموعه داده تصویر ImageNet فی-فی لی (Fei-Fei Li)، که در سال 2009 تکمیل شد، در آموزش AlexNet بسیار مهم بود. در اینجا، لی [سمت راست] با تام کلیل (Tom Kalil) در موزه تاریخ کامپیوتر صحبت می‌کند. Douglas Fairbairn/Computer History Museum

داده‌های مورد نیاز برای آموزش AlexNet در ImageNet، پروژه‌ای که توسط فی-فی لی، استاد استنفورد آغاز و رهبری شد، یافت شد. لی از سال 2006، و برخلاف خرد متعارف، مجموعه داده‌ای از تصاویر را تصور کرد که هر اسم در زبان انگلیسی را پوشش می‌دهد. او و دانشجویان فارغ التحصیلش شروع به جمع آوری تصاویر یافت شده در اینترنت و طبقه بندی آنها با استفاده از تاکسونومی ارائه شده توسط WordNet، پایگاه داده‌ای از کلمات و روابط آنها با یکدیگر، کردند. با توجه به عظمت وظیفه خود، لی و همکارانش در نهایت وظیفه برچسب گذاری تصاویر را به کارگران گیگ، با استفاده از پلت فرم Mechanical Turk آمازون، برون سپاری کردند.

AlexNet از پردازنده‌های گرافیکی NVIDIA با اجرای کد CUDA آموزش دیده بر روی مجموعه داده ImageNet استفاده کرد. جنسن هوانگ، مدیر عامل NVIDIA، به دلیل مشارکت‌هایش در تراشه‌های گرافیکی کامپیوتر و هوش مصنوعی، به عنوان عضو CHM در سال 2024 معرفی شد.
AlexNet از پردازنده‌های گرافیکی NVIDIA با اجرای کد CUDA آموزش دیده بر روی مجموعه داده ImageNet استفاده کرد. جنسن هوانگ (Jensen Huang)، مدیر عامل NVIDIA، به دلیل مشارکت‌هایش در تراشه‌های گرافیکی کامپیوتر و هوش مصنوعی، به عنوان عضو CHM در سال 2024 معرفی شد. Douglas Fairbairn/Computer History Museum

ImageNet که در سال 2009 تکمیل شد، بزرگتر از هر مجموعه داده تصویر قبلی به میزان چندین مرتبه بود. لی امیدوار بود که در دسترس بودن آن باعث پیشرفت‌های جدیدی شود و او در سال 2010 مسابقه‌ای را برای تشویق تیم‌های تحقیقاتی به بهبود الگوریتم‌های تشخیص تصویر خود آغاز کرد. اما در طول دو سال بعد، بهترین سیستم‌ها تنها پیشرفت‌های جزئی داشتند.

شرط دوم لازم برای موفقیت شبکه‌های عصبی دسترسی اقتصادی به مقادیر زیادی محاسبات بود. آموزش شبکه عصبی شامل تعداد زیادی ضرب ماتریس مکرر است که ترجیحاً به صورت موازی انجام می‌شود، کاری که پردازنده‌های گرافیکی (GPUs) برای انجام آن طراحی شده‌اند. NVIDIA، که توسط مدیرعامل جنسن هوانگ (Jensen Huang) تأسیس شد، در دهه 2000 راه را در عمومی‌تر و قابل برنامه‌ریزی‌تر کردن پردازنده‌های گرافیکی (GPUs) برای کاربردهایی فراتر از گرافیک سه بعدی، به ویژه با سیستم برنامه‌نویسی CUDA که در سال 2007 منتشر شد، رهبری کرد.

هم ImageNet و هم CUDA، مانند خود شبکه‌های عصبی، پیشرفت‌های نسبتاً خاصی بودند که منتظر شرایط مناسب برای درخشش بودند. در سال 2012، AlexNet این عناصر - شبکه‌های عصبی عمیق، مجموعه‌های داده بزرگ و پردازنده‌های گرافیکی (GPUs) - را برای اولین بار با نتایج پیشگامانه گرد هم آورد. هر یک از اینها به دیگری نیاز داشت.

نحوه ایجاد AlexNet

تا اواخر دهه 2000، دانشجویان فارغ التحصیل هینتون در دانشگاه تورنتو شروع به استفاده از پردازنده‌های گرافیکی (GPUs) برای آموزش شبکه‌های عصبی برای تشخیص تصویر و گفتار کردند. اولین موفقیت‌های آنها در تشخیص گفتار به دست آمد، اما موفقیت در تشخیص تصویر نشان می‌داد که یادگیری عمیق یک راه حل عمومی ممکن برای هوش مصنوعی است. یکی از دانشجویان، ایلیا سوتسکور (Ilya Sutskever)، معتقد بود که عملکرد شبکه‌های عصبی با مقدار داده‌های موجود مقیاس می‌شود و ورود ImageNet فرصت را فراهم کرد.

در سال 2011، سوتسکور (Sutskever) همکار دانشجوی فارغ التحصیل خود، الکس کریژفسکی (Alex Krizhevsky) را متقاعد کرد، که توانایی زیادی در به دست آوردن حداکثر عملکرد از پردازنده‌های گرافیکی (GPUs) داشت، تا یک شبکه عصبی کانولوشنال را برای ImageNet آموزش دهد، و هینتون (Hinton) به عنوان محقق اصلی خدمت می‌کرد.

AlexNet از پردازنده‌های گرافیکی NVIDIA با اجرای کد CUDA آموزش دیده بر روی مجموعه داده ImageNet استفاده کرد. جنسن هوانگ، مدیر عامل NVIDIA، به دلیل مشارکت‌هایش در تراشه‌های گرافیکی کامپیوتر و هوش مصنوعی، به عنوان عضو CHM در سال 2024 معرفی شد.
AlexNet از پردازنده‌های گرافیکی NVIDIA با اجرای کد CUDA آموزش دیده بر روی مجموعه داده ImageNet استفاده کرد. جنسن هوانگ (Jensen Huang)، مدیر عامل NVIDIA، به دلیل مشارکت‌هایش در تراشه‌های گرافیکی کامپیوتر و هوش مصنوعی، به عنوان عضو CHM در سال 2024 معرفی شد. Douglas Fairbairn/Computer History Museum

کریژفسکی (Krizhevsky) قبلاً کد CUDA را برای یک شبکه عصبی کانولوشنال با استفاده از پردازنده‌های گرافیکی (GPUs) NVIDIA، به نام cuda-convnet، که بر روی مجموعه داده تصویر CIFAR-10 بسیار کوچکتر آموزش داده شده بود، نوشته بود. او cuda-convnet را با پشتیبانی از چندین پردازنده گرافیکی (GPUs) و سایر ویژگی‌ها گسترش داد و دوباره آن را بر روی ImageNet آموزش داد. این آموزش بر روی یک کامپیوتر با دو کارت NVIDIA در اتاق خواب کریژفسکی (Krizhevsky) در خانه والدینش انجام شد. در طول سال بعد، او دائماً پارامترهای شبکه را تغییر داد و دوباره آن را آموزش داد تا زمانی که به عملکردی برتر از رقبای خود دست یافت. این شبکه در نهایت AlexNet نامیده شد، پس از کریژفسکی (Krizhevsky). جف هینتون (Geoff Hinton) پروژه AlexNet را اینگونه خلاصه کرد: "ایلیا فکر کرد که باید این کار را انجام دهیم، الکس آن را عملی کرد و من جایزه نوبل را گرفتم."

کریژفسکی (Krizhevsky)، سوتسکور (Sutskever) و هینتون (Hinton) مقاله‌ای در مورد AlexNet نوشتند که در پاییز سال 2012 منتشر شد و توسط کریژفسکی (Krizhevsky) در کنفرانس بینایی کامپیوتر در فلورانس، ایتالیا، در ماه اکتبر ارائه شد. محققان باتجربه بینایی کامپیوتر متقاعد نشدند، اما لکون (LeCun)، که در این جلسه حضور داشت، آن را نقطه عطفی برای هوش مصنوعی اعلام کرد. او درست می‌گفت. قبل از AlexNet، تقریباً هیچ یک از مقالات پیشرو در زمینه بینایی کامپیوتر از شبکه‌های عصبی استفاده نمی‌کردند. پس از آن، تقریباً همه آنها استفاده می‌کردند.

AlexNet تازه آغاز کار بود. در دهه بعد، شبکه‌های عصبی پیشرفت می‌کنند تا صداهای انسانی باورپذیر را سنتز کنند، بازیکنان قهرمان Go را شکست دهند و آثار هنری تولید کنند، که با انتشار ChatGPT در نوامبر 2022 توسط OpenAI، شرکتی که توسط سوتسکور (Sutskever) تأسیس شد، به اوج خود رسید.

انتشار کد منبع AlexNet

در سال 2020، من با کریژفسکی (Krizhevsky) در مورد کد AlexNet تماس گرفتم تا متوجه شوم که او و هینتون (Hinton) هرگز قصد انتشار آن را نداشته‌اند. در زمان این پروژه، انتشار کد به طور معمول انجام نمی‌شد و کریژفسکی (Krizhevsky) مشتاق تکرار تجربیات خود با پروژه‌های دیگر با کد خود بود. از آنجایی که در آن زمان در گوگل مشغول به کار بودم، هینتون (Hinton) پیشنهاد کرد که از کد AlexNet در گوگل استفاده کنیم، که ما هم این کار را انجام دادیم.

این وضعیت اخیراً توسط همکارم، دیوید هی (David Ha)، که مدیر تحقیقات مولد در گوگل است، دوباره مورد توجه قرار گرفت. هی به این نتیجه رسید که از آنجایی که AlexNet اهمیت تاریخی دارد، گوگل باید آن را منتشر کند تا در دسترس عموم قرار گیرد. هی دوباره با هینتون (Hinton) تماس گرفت، که اکنون نیز در گوگل کار می‌کند، که با این کار موافقت کرد. به نوبه خود، از من خواسته شد تا با موزه تاریخ کامپیوتر تماس بگیرم تا کد را در اختیار عموم قرار دهم. به نظر می‌رسد که مسائل، در بیشتر موارد، حلقه‌ای دارند.