یه شبکه عصبی عصبی زنی با یه حرکت: چیکار می‌کنه SDSNN؟!

Fall Back

امروز می‌خوام براتون درباره یه مدل خیلی خفن حرف بزنم که اسمش هست SDSNN. ببین، شاید تا حالا اسم SNN یا همون Spiking Neural Network به گوشت خورده باشه. اینا همون شبکه‌های عصبی‌ای‌ هستن که سعی می‌کنن شبیه مغز آدم اطلاعات رو پردازش کنن. یعنی به جای اینکه اطلاعات رو یهو بریزن سر هم (مثل شبکه‌های عصبی عادی)، تک‌تک و به صورت “اسپایک” یا همون پالس‌هایی شبیه سیگنال عصبی منتقل می‌کنن. این کار باعث می‌شه مصرف انرژی‌شون خیلی کمتر باشه چون فقط وقتی نیازه کار انجام می‌دن و خیلی خونه‌خراب نمی‌شن!

ولی خب، مشکلشون اینه که باید اطلاعات رو تو چندین مرحله یا همون timestep پردازش کنن. یعنی کلی زمان و انرژی، درنهایت برای عملیات پیش‌بینی یا inference می‌خوره. حالا تو محیط‌هایی که منابع کم داری (مثلاً توی هوش مصنوعی روی موبایل یا دستگاه‌های کوچیک که edge computing می‌گن)، این دردسر ساز می‌شه.

حالا یه اکیپ باهوش اومدن یه مدل جدید ساختن به اسم SDSNN که اساس قضیه رو عوض کرده. ایده‌شون اینه که بیایم همه محاسبات رو فقط تو یه “تک حرکت” (یا همون Single-Timestep) انجام بدیم، نه چند مرحله! یعنی هم دقت رو بالا ببر و هم مصرف انرژی رو بیار پایین.

چطور؟ اینا چند تا نوآوری دارن:

  1. نورون‌های خود-ریزشی یا Self-Dropping Neuron: خب این یعنی نورون‌هایی که خودشون تصمیم می‌گیرن کی یه پیام رو بندازن دور و کی نگه دارن؛ اینجوری نمی‌ذارن اطلاعات اضافی الکی رد و بدل بشه. یه چیزی هم به اسم “آستانه پویا” هم دارن، یعنی نورون‌ها بسته به شرایط، خودشون آستانه تحریک‌شون رو تنظیم می‌کنن. این کار باعث می‌شه اطلاعات مهم‌تر راحت‌تر منتقل شه و سر و صدای اضافی حذف بشه.
  2. بهینه‌سازی بیزی یا Bayesian Optimization: این یه روش هوشمندانه‌ست واسه اینکه بتونیم بهترین حالت تنظیمات زمانی مدل (مثلاً پارامترهای مربوط به زمان) رو پیدا کنیم و مدل با همون یک حرکت، دقیق‌ترین عملکرد رو داشته باشه.

حالا بریم سراغ نتایج هیجان‌انگیزشون! این مدل رو روی سه دیتاست معروف امتحان کردن: Fashion-MNIST (دیتاست عکس لباس‌ها)، CIFAR-10 و CIFAR-100 (این دوتا انواع عکس‌های دسته‌بندی شده از اشیا و حیوانات و … هستن).

  • تو Fashion-MNIST با دقت ۹۳.۷۲ درصد کار کرد،
  • تو CIFAR-10 رسید به ۹۲.۲۰ درصد،
  • و تو CIFAR-100 هم ۶۹.۴۵ اینا گرفت!

جالب اینجاست که این مقادیر تقریباً با مدل‌های قدیمی چند مرحله‌ای (که مثلاً با مدل LIF یا Leaky Integrate-and-Fire کار می‌کردن – این مدل یه جور از نورون مجازی هست که شبیه به شارژ و خالی شدن باتری کار می‌کنه)، یا حتی بهتر بودن!

تازه مصرف انرژی رو هم کلی پایین آوردن: مثلاً تو Fashion-MNIST، مدلشون ۵۶ درصد انرژی کمتر مصرف کرد. توی اون دوتای دیگه هم ۲۱ و ۲۲ درصد کمتر شد.

خلاصه اگر دنبال SNNهایی هستی که هم سریع باشن، هم کم‌مصرف – مخصوصاً برای دستگاه‌هایی که نمی‌خوای باتری‌شون زود تموم شه – این SDSNN با اون نورون‌های خلاقانه و بهینه‌سازی بیزیش خیلی ایده خفنیه! کلاً داره نشون می‌ده با یه حرکت (Single-Timestep) هم می‌شه معجزه کرد!

اگه سوالی داشتی درباره SNN یا این مدل جدید، بپرس که جواب بدم!

منبع: +