شبکه عصبی اسپایکی

از ویکی‌پدیا، دانشنامهٔ آزاد
شبکه‌های عصبی اسپایکی

شبکه‌های عصبی اسپایکی (انگلیسی: Spiking Neural Networksشبکه‌های عصبی مصنوعی هستند که به‌طور دقیق تری از شبکه‌های عصبی زیستی الهام می‌گیرند.[۱] در شبکه‌های عصبی اسپایکی علاوه بر متغیرهای حالت نورونی و سیناپسی، مفهوم زمان نیز در مدل در نظر گرفته می‌شود. در شبکه‌های عصبی معمولی (مانند شبکه‌های پرسپترونی چند لایه)، خروجی هر نورون در هر تکرار محاسبه و به روز رسانی می‌شود، اما در شبکه‌های عصبی اسپایکی، هر نورون تنها زمانی اسپایک تولید می‌کند که پتانسیل غشای آن از یک حد آستانه بیشتر شده باشد. اندازه پتانسیل غشا توسط غلظتهای یونی دو طرف غشای سلولی تعیین می‌شود. در شبکه‌های عصبی زیستی، نورون تحریک پذیر با تولید اسپایک، سیگنالی را تولید می‌کند که اطلاعات را به سایر نورونها منتقل می‌نماید. پتانسیل غشای نورونهای گیرنده با توجه به نوع این سیگنال، افزایش یا کاهش می‌یابد.

نورون‌ها در این شبکه‌های عصبی توسط معادلات دیفرانسیل جریانی یا ولتاژی مدل می‌شوند. در مدل جریانی، اندازهٔ جریان به عنوان متغیر حالت مدل نورون در نظر گرفته می‌شود. با دریافت هر اسپایک یا سطح این جریان افزایش می‌یابد و نورون دریافت کننده در نهایت یک اسپایک تولید می‌کند یا اینکه جریان دریافتی مکانیسم‌های کاهش جریان را درنورون دریافت کننده فعال نموده و سبب مهار آن می‌شود. اسپایک‌ها به صورت قطارهای اسپایکی (متغیر گسسته در زمان) تولید و منتشر می‌شوند و برای تبدیل آنها به متغیر پیوسته در زمان، روش‌های کدگذاری متنوعی وجود دارد. محاسبه فرکانس اسپایک‌ها یا فاصلهٔ زمانی بین دو اسپایک متوالی از روشهایی هستند که برای این منظور به کار گرفته می‌شوند.

تاریخچه[ویرایش]

ساختار شبکه‌های عصبی مصنوعی معمولاً به گونه ای طراحی می‌شود که تمامی نورونها به یکدیگر متصل هستند و یک شبکه fully connected را ایجاد می‌کنند. این نورونها از تمامی نورونهای لایهٔ قبل ورودی گرفته و خروجی خود را به تمامی نورونهای لایهٔ بعد ارسال می‌کنند. اگرچه این شبکه‌ها کاربردهای یادگیری ماشین در زمینه‌های مختلف را به طرز چشمگیری دگرگون نموده و منجر به نتایج فوق‌العاده ای شده‌اند، مکانیسم یادگیری و انتشار اطلاعات در آنها دقیقاً منطبق با مکانیسم‌های شناخته شده در شبکه‌های عصبی زیستی نیستند.[۲]

اولین مدل محاسباتی نورونهای اسپایکی توسط هاجکین و هاکسلی در سال ۱۹۵۲ ارایه شد. این مدل با در نظر گرفتن کانالهای سدیمی و پتاسیمی روی غشای سلول، نشان می‌دهد که پتانسیل عمل چگونه ایجاد شده، در طول سلول منتشر می‌شود وهمچنین به سلولهای مجاور منتقل می‌گردد. در این مدل، نورونها اسپایک تولید نمی‌کنند و پیام خود را از طریق تغییر غلظت مواد شیمیایی موجود در فاصلهٔ بین دو نورون که نوروترنزمیتر نامیده می‌شوند به یکدیگر منتقل می‌کنند. پس از معرفی این مدل، مدل‌های پیچیده تری که متغیرهای حالت بیشتری را در نظر می‌گیرند معرفی شده‌اند که هر یک جنبه ای از تولید و انتشار اسپایک در نورون‌ها را بازنمایی می‌کنند. مدلهای integrate-and-fire, FitzHugh–Nagumo، و Hindmarsh–Rose مثالهایی از این مدل‌های زیستی هستند.

شبکه‌های عصبی اسپایکی علاوه بر شبیه‌سازی نرم‌افزاری، روی سخت‌افزارها نیز پیاده‌سازی می‌شوند و شاخه ای از تکنولوژی که به دنبال طراحی و پیاده‌سازی سخت‌افزاری شبکه‌های عصبی اسپایکی است با عنوان مهندسی نورومورفیک شناخته می‌شود. BrainChip اولین تراشه تجاری است که یه سیستم مبتنی بر شبکه‌های عصبی اسپایکی بر روی آن پیاده‌سازی شده‌است.

کاربردها[ویرایش]

شبکه‌های عصبی اسپایکی معمولاً در کاربردهایی مورد استفاده قرار می‌گیرند که پیش از این شبکه‌های عصبی غیر اسپایکی به کار گرفته شده‌اند.[۳] علاوه بر این کابردهای مربوط به یادگیری ماشین، شبکه‌های عصبی اسپایکی در مدلسازی سیستم عصبی مرکزی ارگانیسم‌های زیستی، مانند سیستم جستجوی غذا در حشرات بدون دانش اولیه نسبت به محیط،[۴] نیز کاربرد دارند. به دلیل مشابهت نسبی آنها با شبکه‌های عصبی زیستی، از شبکه‌های عصبی اسپایکی برای مطالعهٔ مدارهای نورونی زیستی نیز استفاده می‌شود. در این کاربردها ابتدا فرضیه ای درمورد ارتباط توپولوژی مدارهای نورونی زیستی با عملکرد (function) این مدارها (شبکه‌ها) مطرح می‌گردد، سپس، این مدل محاسباتی شبیه‌سازی شده و فعالیت نورون‌ها (و یا سایر متغیرهای حالت) در مدت زمان اجرا ثبت می‌شوند. سیگنال‌های ثبت شده در نهایت با سیگنال‌های ثبت شده از سیستم زنده مقایسه می‌شوند و فرضیه ابتدایی تأیید یا رد می‌گردد.

شبکه‌های عصبی اسپایکی بیشتر از اینکه کاربردهای مهندسی داشته باشند در نوروساینس مورد استفاده قرار میگرند. در کاربردهای مهندسی معمولاً شبکه ای تصادفی با تعداد بسیار زیادی از نورون‌ها طراحی می‌شود و قطارهای اسپایکی ثبت شده از نورون‌های این شبکه، با میانگین‌گیری زمانی (-مکانی) به کمیت‌های عددی پیوسته تبدیل شده و برای تعلیم وزنهای یک لایهٔ خروجی خطی مورد استفاده قرار می‌گیرند. این ساختار و روش تعلیم شبکه‌های عصبی بازگشتی با عنوان | Reservoir Computing شناخته می‌شود.

شبیه‌سازی نرم‌افزاری[ویرایش]

برای شبیه‌سازی شبکه‌های عصبی اسپایکی روی کامپیوترهای دیجیتال، نرم‌افزارهای و ابزارهای متنوعی توسعه داده شده‌اند.

  1. Maass, Wolfgang (1997). "Networks of spiking neurons: The third generation of neural network models". Neural Networks. 10 (9): 1659–1671.
  2. «Spiking Neural Networks, the Next Generation of Machine Learning». Towards Data Science.
  3. Alnajjar, F. ; Murase, K. (2008). "A simple Aplysia-like spiking neural network to generate adaptive behavior in autonomous robots". Adaptive Behavior. 14 (5): 306–324.
  4. X Zhang; Z Xu; C Henriquez; S Ferrari (Dec 2013). Spike-based indirect training of a spiking neural network-controlled virtual insect. IEEE Decision and Control. pp. 6798–6805