انواع شبکه های عصبی مصنوعی — راهنمای جامع

۸۷۹۶ بازدید
آخرین به‌روزرسانی: ۳۰ مرداد ۱۴۰۲
زمان مطالعه: ۱۱ دقیقه
انواع شبکه های عصبی مصنوعی — راهنمای جامع

خانواده «شبکه‌های عصبی مصنوعی» (Artificial Neural Networks) هر روز شاهد حضور اعضای جدیدی است. با توجه به تعدد انواع شبکه های عصبی موجود، در این مطلب، یک راهنمای جامع از انواع شبکه های عصبی مصنوعی ارائه شده است. در این راهنما، توپولوژی انواع شبکه های عصبی مصنوعی روش عملکرد و کاربرد شبکه‌های عصبی مصنوعی مورد بررسی قرار گرفته است. برای آشنایی با مفهوم شبکه‌های عصبی مصنوعی و پیاده‌سازی آن در زبان‌های برنامه‌نویسی گوناگون، مطالعه مطالب زیر پیشنهاد می‌شود.

انواع شبکه‌های عصبی مصنوعی

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

برای مشاهده این راهنمای جامع در ابعاد بزرگ، کلیک کنید.

برای مشاهده تصویر بالا، در ابعاد بزرگ، کلیک کنید.

شبکه عصبی پرسپترون

«پرسپترون» (Perceptron | P)، ساده‌ترین و قدیمی‌ترین مدل از نورون محسوب می‌شود که تاکنون توسط بشر شناخته شده است. پرسپترون، تعدادی ورودی را دریافت، آن‌ها را تجمیع و تابع فعال‌سازی را روی آن‌ها اعمال می‌کند و در نهایت، آن‌ها را به لایه خروجی پاس می‌دهد. در این قسمت، معجزه اصلی شبکه‌های عصبی مصنوعی به وقوع نمی‌پیوندد.

برای مطالعه بیش‌تر پیرامون پرسپترون چند لایه، مطالعه مطلب «پرسپترون چند لایه در پایتون — راهنمای کاربردی» پیشنهاد می‌شود.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه عصبی پیش‌خور

«شبکه‌های عصبی پیش‌خور» (Feed Forward Neural Networks | FF) نیز از اعضای قدیمی خانواده شبکه‌های عصبی محسوب می‌شوند و رویکرد مربوط به آن‌ها از دهه ۵۰ میلادی نشأت می‌گیرد. عملکرد این الگوریتم، به طور کلی از قواعد زیر پیروی می‌کند:

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

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

در اغلب مواقع، این نوع از شبکه‌های عصبی با استفاده از روش «پس‌انتشار» (Backpropagation) آموزش داده می‌شوند.

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

«شبکه‌های عصبی شعاعی پایه» (Radial Basis Networks | RBF) در واقع شبکه‌های عصبی پیش‌خوری (FF) هستند که از «تابع شعاعی پایه» (Radial Basis Function)، به جای «تابع لجستیک» (Logistic Function)، به عنوان تابع فعال‌سازی استفاده می‌کنند. سوالی که در این وهله مطرح می‌شود این است که تفاوت شبکه عصبی شعاعی پایه با شبکه عصبی پیش‌خور چیست؟

تابع لجستیک برخی از مقادیر دلخواه را به یک بازه ۰ تا ۱ نگاشت می‌کند تا به یک پرسش «بله یا خیر» (پرسش دودویی) پاسخ دهد. این نوع از شبکه‌های عصبی برای «دسته‌بندی» (Classification) و «سیستم‌های تصمیم‌گیری» (Decision Making Systems) مناسب هستند، ولی برای مقادیر پیوسته عملکرد بدی دارند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

این در حالی است که توابع شعاعی پایه به این پرسش پاسخ می‌دهند که «چقدر از هدف دوریم؟» و این امر موجب می‌شود تا این شبکه‌های عصبی برای تخمین تابع و کنترل ماشین (برای مثال، به عنوان جایگزینی برای کنترل کننده PID) مناسب محسوب شوند. به طور خلاصه باید گفت که شبکه‌های عصبی شعاعی پایه در واقع نوعی از شبکه‌های عصبی پیش‌خور با تابع فعال‌سازی و ویژگی‌های متفاوت هستند.

شبکه عصبی پیش‌خور عمیق

«شبکه عصبی پیش‌خور عمیق» (Deep Feed Forward Neural Networks | DFF)، در اوایل دهه ۹۰ میلادی، مقدمه‌ای بر بحث شبکه‌های عصبی شد. این نوع از شبکه‌های عصبی نیز شبکه‌های عصبی پیش‌خور هستند، ولی بیش از یک «لایه پنهان» (Hidden Layer) دارند. سوالی که در این وهله پیش می‌آید آن است که تفاوت این نوع از شبکه‌های عصبی با شبکه‌های عصبی پیش‌خور سنتی در چیست؟

در هنگام آموزش دادن یک شبکه عصبی پیش‌خور، تنها بخش کوچکی از خطا به لایه پیشین پاس داده می‌شود. به همین دلیل، استفاده از لایه‌های بیشتر، منجر به رشد نمایی زمان آموزش می‌شود و همین موضوع، موجب می‌شود که شبکه‌های عصبی پیش‌خور عمیق، عملا بدون کاربرد و غیر عملی باشند. در اوایل سال دو هزار میلادی، رویکردهایی توسعه پیدا کردند که امکان آموزش دادن یک شبکه عصبی پیش‌خور عمیق (DFF) را به صورت موثر فراهم می‌کردند. امروزه، این شبکه‌های عصبی، هسته سیستم‌های یادگیری ماشین مدرن را تشکیل می‌دهند و هدفی مشابه با هدف شبکه‌های عصبی پیش‌خور (FF) را پوشش می‌دهند؛ اما نتایج بهتری را دربردارند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه‌های عصبی بازگشتی

«شبکه‌های عصبی بازگشتی» (Recurrent Neural Networks | RNN) نوع متفاوتی از سلول‌ها با عنوان «سلول‌های بازگشتی» (Recurrent Cells) را معرفی می‌کنند. اولین شبکه از این نوع، «شبکه جردن» (Jordan Network) است؛ در این نوع از شبکه، هر یک از سلول‌های پنهان، خروجی خود را با تاخیر ثابت - یک یا تعداد بیشتری تکرار- دریافت می‌کنند. صرف نظر از این موضوع، شبکه جردن مشابه با شبکه‌های عصبی پیش‌خور متداول بود.

البته، تغییرات گوناگونی مانند پاس دادن حالت به «گره‌های ورودی» (Input Nodes)، تأخیر متغیرها و دیگر موارد در این نوع از شبکه‌ها اتفاق افتاده، اما ایده اصلی به همان صورت باقی مانده است. این نوع از شبکه‌های عصبی (NN) اساسا هنگامی استفاده می‌شوند که «زمینه» (Context) مهم است و در واقع یعنی هنگامی که تصمیم‌گیری‌ها از تکرارهای قبلی یا نمونه‌ها، می‌تواند نمونه‌های کنونی را تحت تاثیر قرار دهد. به عنوان مثالی متداول از این نوع از زمینه‌ها، می‌توان به «متن» (Text) اشاره کرد. در متن، یک کلمه را می‌توان تنها در زمینه کلمه یا جمله پیشین تحلیل کرد.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

حافظه کوتاه مدت بلند

«حافظه کوتاه مدت بلند» (Long/Short Term Memory | LSTM) نوع جدیدی از «سلول حافظه» (Memory Cell) را معرفی می‌کند. این سلول می‌تواند داده‌ها را هنگامی که دارای شکاف زمانی (یا تاخیر زمانی) هستند، پردازش کند.

شبکه عصبی پیش‌خور می‌تواند متن را با «به خاطر سپردن» ده کلمه پیشین پردازش کند. این در حالی است که LSTM می‌تواند قاب‌های ویدئو را با «به خاطر سپردن» چیزی که در قاب‌های بسیار پیشین اتفاق افتاده است پردازش کند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه‌های LSTM به طور گسترده‌ای برای «بازشناسی گفتار» (Speech Recognition) و «بازشناسی نوشتار» (Writing Recognition) مورد استفاده قرار می‌گیرند. سلول‌های حافظه اساسا ترکیبی از یک جفت عنصر که به آن‌ها گیت گفته می‌شود هستند. این عنصرها، بازگشتی هستند و چگونگی به یاد آوردن و فراموش کردن اطلاعات را کنترل می‌کنند. ساختار این نوع از شبکه‌ها، در تصویر زیر به خوبی مشخص است. این نکته که هیچ تابع فعال‌سازی بین بلوک‌ها وجود ندارد نیز شایان توجه است.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

X‌های موجود در نمودار، گیت‌ها هستند و وزن و گاهی تابع فعال‌سازی خود را دارند. برای هر نمونه، Xها تصمیم می‌گیرند داده‌ها را به جلو پاس دهند یا خیر، حافظه را پاک کنند یا نه و به همین ترتیب. گیت ورودی، تصمیم می‌گیرد که چه میزان اطلاعات از آخرین نمونه در حافظه نگه‌داری می‌شود. گیت خروجی میزان داده‌های پاس داده شده به لایه بعدی را تنظیم می‌کند و گیت فراموشی، نرخ خارج شدن از موارد ذخیره شده در حافظه را کنترل می‌کند. آنچه بیان شد، یک شکل بسیار ساده از سلول‌های LSTM است و معماری‌های متعدد دیگری نیز برای این نوع از شبکه‌های عصبی، موجود است.

شبکه عصبی واحد بازگشتی گِیتی

«واحد بازگشتی گیتی» (Gated Recurrent Unit | GRU) نوعی از LSTM با گیت‌ها و دوره زمانی متفاوت است. این نوع از شبکه عصبی ساده به نظر می‌آید. در حقیقت، فقدان گیت خروجی، تکرار چندین باره یک خروجی مشابه را برای ورودی‌ها ساده‌تر می‌سازد. این نوع از شبکه‌های عصبی بازگشتی در حال حاضر بیشتر در «موتور متن به گفتار» (Speech Synthesis) و «ترکیب صدا» (Music Synthesis) به کار می‌رود. البته، ترکیب واقعی LSTM با GRU اندکی متفاوت است. زیرا، همه گیت‌های LSTM در یک گیت که به آن گیت به روز رسانی گفته می‌شود ترکیب شده‌اند و گیت «بازشناسی» (Reset) از نزدیک به ورودی گره خورده است. GRU‌ها نسبت به LSTM‌ها کمتر از منابع استفاده می‌کنند و اثر مشابهی را دارند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه عصبی خود رمزگذار

شبکه‌های عصبی «خود رمزگذار» (Auto Encoder | AE) برای دسته‌بندی، «خوشه‌بندی» (Clustering) و «فشرده‌سازی ویژگی‌ها» (Feature Compression) استفاده می‌شوند. هنگامی که یک شبکه عصبی پیش‌خور برای دسته‌بندی آموزش داده می‌شود، باید نمونه‌های X در Y دسته به عنوان خوراک داده شوند و انتظار می‌رود یکی از سلول‌های Y فعال‌سازی شده باشد. به این مورد، «یادگیری نظارت شده» (Supervised Learning) گفته می‌شود. از سوی دیگر، شبکه‌های عصبی خود رمزگذار را می‌توان بدون نظارت، آموزش داد.

با توجه به ساختار این شبکه‌ها (که در آن تعداد لایه‌های پنهان کوچک‌تر از تعداد سلول‌های ورودی است و تعداد سلول‌های خروجی برابر با سلول‌های ورودی است) و اینکه AE به نوعی آموزش داده می‌شود که خروجی تا حد امکان به ورودی نزدیک باشد، شبکه عصبی خود رمزگذار مجبور می‌شود داده‌ها را تعمیم دهد و به دنبال الگوهای متداول بگردد.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه عصبی خود رمزگذار متغیر

«شبکه عصبی خود رمزگذار متغیر» (Variational Auto Encoder | VAE) در مقایسه با شبکه عصبی خود رمزگذار، احتمالات را به جای ویژگی‌ها فشرده می‌کند. علارغم تغییرات کوچک که بین دو شبکه عصبی مذکور اتفاق افتاده است، هر یک از این انواع شبکه های عصبی مصنوعی به پرسش متفاوتی پاسخ می‌دهند. شبکه عصبی خودرمزگذار به پرسش «چگونه می‌توان داده‌ها را تعمیم داد؟» پاسخ می‌دهد، در حالی که شبکه عصبی خود رمزگذار متغیر به پرسش «اتصال بین دو رویداد چقدر قوی است؟ آیا باید خطا را بین دو رویداد توزیع کرد یا آن‌ها به طور کامل مستقل هستند؟» پاسخ می‌دهد.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه عصبی خود رمزگذار دینوزینگ

با وجود جالب بودن شبکه‌های خود رمزگذار، اما این شبکه‌های عصبی گاهی به جای پیدا کردن مستحکم‌ترین ویژگی، فقط با داده‌های ورودی سازگار می‌شوند (این مورد مثالی از بیش‌برازش یا همان Overfitting است). شبکه عصبی «خود رمزگذار دینوزینگ» (Denoising AutoEncoder | DAE) اندکی نویز به سلول ورودی اضافه می‌کنند.

با این کار، شبکه عصبی خود رمزگذار دینوزینگ، مجبور می‌شود که خروجی را از یک ورودی نویزی، مجددا بسازد و آن را عمومی‌تر کند و ویژگی‌های متداول بیشتری را انتخاب کند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه عصبی خود رمزگذار اسپارس

شبکه عصبی «خود رمزگذار اسپارس» (Sparse AutoEncoder | SAE) نیز یک نوع دیگر از شبکه‌های عصبی مصنوعی خود رمزگذار است که در برخی موارد، می‌تواند برخی از الگوهای گروهی پنهان موجود در داده‌ها را آشکار کند. ساختار شبکه عصبی خود رمزگذار اسپارس نیز مشابه با AE است، در این نوع از شبکه‌های عصبی، تعداد لایه پنهان، بیشتر از تعداد سلول لایه ورودی/خروجی است.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

زنجیره مارکوف

«زنجیره‌های مارکو» (Markov Chains) مفهومی بسیار قدیمی از گراف‌ها هستند که در آن‌ها، هر یالی یک احتمال دارد. در زمان‌های قدیم، از زنجیره‌های مارکوف برای ساخت متن استفاده می‌شد؛ برای مثال، بعد از کلمه Hello، با احتمال %0/0053 کلمه Dear و با احتمال %0.03551 کلمه You می‌آید (در فناوری پیش‌بینی متن T9 که در موبایل‌ها وجود دارد، از زنجیره‌های مارکوف استفاده می‌شود).

زنجیره‌های مارکوف، شبکه‌های عصبی به شیوه کلاسیک نیستند و می‌توانند برای دسته‌بندی بر پایه احتمالات (مانند فیلترهای بیزی)، برای خوشه‌بندی (برخی از انواع) و «ماشین حالت متناهی» (Finite State Machine) استفاده شوند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه عصبی هاپفیلد

«شبکه‌های هاپفیلد» (Hopfield Networks | HN) روی مجموعه محدودی از نمونه‌ها آموزش دیده‌اند و بنابراین، به یک نمونه شناخته شده با نمونه مشابهی پاسخ می‌دهند. پیش از آموزش، هر سلول به عنوان یک سلول ورودی، در طول آموزش به عنوان یک سلول پنهان و در هنگام استفاده، به عنوان یک سلول خروجی کار می‌کند. یک شبکه هاپفیلد در تلاش است تا نمونه‌های آموزش دیده‌ای را بسازد، این شبکه‌ها برای دینوزینگ و بازگردانی ورودی‌ها مورد استفاده قرار می‌گیرند. در صورتی که به این شبکه‌ها نیمی از یک تصویر یا توالی یاد گرفته شده ارائه شود، نمونه کامل  را بازمی‌گردانند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

ماشین بولتزمن

«ماشین‌های بولتزمن» (Boltzmann Machines | BM) از این جهت که برخی از سلول‌ها به عنوان ورودی علامت‌گذاری می‌شوند و پنهان باقی می‌مانند، شباهت بسیاری زیادی به شبکه‌های هاپفیلد دارند. سلول‌های ورودی به محض اینکه سلول‌های پنهان حالت خود را به روز رسانی می‌کنند، به سلول‌های خروجی مبدل می‌شوند (در طول آموزش، ماشین بولتزمن/شبکه هاپفیلد، سلول‌ها را یکی یکی به روز رسانی می‌کند و این کار به صورت موازی انجام نمی‌شود).

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

ماشین بولتزمن محدود

«ماشین بولتزمن محدود» (Restricted Boltzmann Machine) در ساختار شبیه به BM است. اما به دلیل محدود بودن، فقط امکان آموزش دادن آن با استفاده از پس‌انتشار، صرفا به عنوان پیش‌خور وجود دارد (تنها با این تفاوت که داده‌های پاس داده شده پس‌انتشار، یک‌بار به لایه ورودی برگشت داده می‌شوند).

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه باور عمیق

«شبکه باور عمیق» (Deep Belief Network | DBN) که در تصویر بالا قابل مشاهده است، در واقع پشته‌ای از ماشین‌های بولتزمن است (با خودرمزگذار متغیر احاطه شده است).

آن‌ها را می‌توان به صورت زنجیره‌ای با یکدیگر قرار داد (هنگامی که یک شبکه عصبی دیگری را آموزش می‌دهد) و برای تولید داده‌ها با یک الگوی یاد گرفته شده، قابل استفاده است.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه پیچشی عمیق

«شبکه پیچشی عمیق» (Deep Convolutional Network | DCN) در حال حاضر، ستاره شبکه‌های عصبی است. این نوع از شبکه‌های عصبی، دارای سلول‌های پیچشی (یا لایه‌های پولینگ) و کرنل‌هایی هستند که هر یک، به هدف متفاوتی خدمت‌دهی می‌کند. کرنل‌های پیچشی در واقع داده‌های ورودی را پردازش می‌کنند و لایه‌های پولینگ (گردآوری) این کار را با کاهش ویژگی‌های غیر لازم، ساده‌تر می‌کنند (معمولا با استفاده از توابع غیر خطی مانند Max).

شبکه‌های عصبی پیچشی عمیق معمولا برای «بازشناسی تصویر» (Image Recognition) مورد استفاده قرار می‌گیرند؛ این شبکه‌ها، روی یک زیرمجموعه از تصاویر (چیزی در حدود 20x20) عمل می‌کنند. پنجره ورودی، روی کل تصویر به صورت کرکره‌ای، پیکسل به پیکسل، عبور می‌کند. داده‌ها به لایه‌های پیچشی پاس داده می‌شوند و این امر موجب می‌شود که یک قیف شکل بگیرد (فشرده‌سازی ویژگی‌های ورودی). در حوزه بازشناسی تصویر، اولین لایه گرادیان، دومین لایه خطوط و سومین لایه شکل را شناسایی می‌کند و این روال به همین ترتیب در مقیاس یک شی مشخص ادامه خواهد داشت. DFF معمولا به لایه پیچشی نهایی پیوست می‌شود تا پیش‌پردازش‌های داده آتی انجام شود.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه دکانولوشنی

«شبکه دکانولوشنی» (Deconvolution Network | DN)، معکوس DCN است. شبکه دکانولوشنی تصویر گربه را دریافت و برداری مانند $$ \left\{dog: 0, lizard: 0, horse: 0, cat: 1 \right\}$$ می‌سازد. شبکه پیچشی عمیق می‌تواند این بردار را دریافت کند و بر اساس آن، تصویر یک گربه را بکشد.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه گرافیکی معکوس پیچشی عمیق

«شبکه گرافیکی معکوس پیچشی عمیق» (Deep Convolutional Inverse Graphics Network | DCIGN) که در تصویر بالا نمایش داده شده، به گونه‌ای است که به نظر می‌رسد DCN و DN به یکدیگر چسبانده شده‌اند؛ اما این درست نیست. در واقع، DCIGN یک خود رمزگذار است. DCN و DN به عنوان شبکه‌های مجزا عمل نمی‌کنند، در عوض، آن‌ها فاصله‌گذارهایی برای ورودی و خروجی شبکه هستند. این نوع از شبکه‌ها که بیشتر برای پردازش تصویر مورد استفاده قرار می‌گیرند، می‌توانند تصاویری را پردازش کنند که پیش از این، با آن‌ها آموزش ندیده باشند. DCIGN‌ها به دلیل سطوح انتزاعی که دارند، می‌توانند شی خاصی را از تصویر حذف کنند، آن را از نو بکشند و یا مثلا، اسب‌ها را با گوره‌خرها جایگزین کنند (مانند کاری که با CycleGAN در یک پژوهشی انجام شده است).

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه مولد تخاصمی

«شبکه‌های مولد تخاصمی» (Generative Adversarial Networks) خانواده بزرگی از شبکه‌های دوتایی هستند که از «مولد» (Generator) و «متمایزگر» (Discriminator) ساخته شده‌اند.

این نوع از شبکه‌های عصبیِ دائما در حال تحول، در شرایطی که بتوان توازن آموزش را بین این دو شبکه (در دوتایی) حفظ کرد، می‌توانند تصاویر واقعی تولید کنند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

ماشین حالت سیال

«ماشین حالت سیال» (Liquid State Machine | LSM) یک شبکه عصبی اسپارس (کاملا متصل نیست) است که در آن، توابع فعال‌سازی با سطح آستانه جایگزین شده‌اند. سلول، مقادیر را از نمونه‌های ترتیبی تجمیع می‌کند و خروجی را تنها هنگامی می‌دهد که به آستانه رسیده باشد.

سپس، شمارنده خارجی را مجددا روی صفر قرار می‌دهد. چنین ایده‌ای، از مغز انسان الهام گرفته شده است و این شبکه‌ها به طور گسترده‌ای در «بینایی کامپیوتری» (Computer Vision) و سیستم‌های بازشناسی گفتار مورد استفاده قرار می‌گیرند؛ اما پیشرفت‌های اساسی نداشته‌اند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

ماشین یادگیری حداکثری

«ماشین یادگیری حداکثری» (Extreme Learning Machine | ELM) تلاشی برای کاهش پیچیدگی نهفته در پس شبکه‌های عصبی پیش‌خور است. این کار با ساخت لایه‌های پنهان اسپارس با اتصالات تصادفی، انجام می‌شود.

این نوع از شبکه‌های عصبی به قدرت محاسباتی کم‌تری نیاز دارند، اما کارایی واقعی آن‌ها به شدت بستگی به وظیفه قابل انجام و داده‌ها دارد.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه حالت پژواک

«شبکه حالت پژواک» (Echo State Network | ESN)، زیرنوعی از شبکه‌های عصبی بازگشتی با رویکرد آموزشی ویژه‌ای است. داده‌ها به ورودی و سپس، در صورتی که برای تکرارهای چندگانه مورد نظارت باشند، به خروجی پاس داده می‌شود (بدین شکل، این امکان فراهم می‌شود که ویژگی‌های بازگشتی دخیل شوند). پس از انجام این کار، فقط وزن‌های بین سلول‌های پنهان به روز رسانی می‌شود. البته، این نوع از شبکه‌های عصبی کاربردهای قابل توجهی ندارند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه باقیمانده عمیق

«شبکه باقیمانده عمیق» (Deep Residual Network | DRN) یک شبکه عمیق است که در آن، بخشی از داده‌های ورودی به لایه‌های بعدی پاس داده می‌شوند. این ویژگی، به این شبکه‌ها این امکان را می‌دهد که حقیقتا عمیق باشند (تا ۳۰۰ لایه)، اما در واقع، نوعی از شبکه‌های پیچشی عمیق بدون تاخیر صریح هستند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

شبکه عصبی کوهنن

«شبکه عصبی کوهنن» (Kohonen Network | KN)، ویژگی فاصله تا سلول را معرفی می‌کند. این نوع از شبکه‌های عصبی برای دسته‌بندی استفاده می‌شوند و تلاش می‌کنند تا سلول‌های خود را برای بیشینه واکنش به یک ورودی خاص آماده کنند. هنگامی که برخی از سلول‌ها به روز رسانی می‌شوند، نزدیک‌ترین همسایه‌های آن‌ها نیز به همین ترتیب به روز رسانی می‌شوند. همچون «ماشین بردار پشتیبان» (Support Vector Machine)، این نوع از شبکه‌ها نیز معمولا همیشه به عنوان شبکه‌های عصبی «واقعی» به حساب نمی‌آیند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

ماشین بردار پشتیبان

«ماشین بردار پشتیبان» (Support Vector Machine | SVM) برای وظیفه «دسته‌بندی دودویی» (Binary Classification) قابل استفاده است. اهمیتی ندارد که چند بُعد - یا ورودی - در شبکه پردازش شود، ورودی همیشه «بله» یا «خیر» است.

ماشین‌های بردار پشتیبان، در اغلب مواقع به عنوان شبکه‌های عصبی در نظر گرفته نمی‌شوند.

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

ماشین تورینگ عصبی

شبکه‌های عصبی به نوعی مانند جعبه سیاه هستند. این شبکه‌ها را می‌توان آموزش داد، نتایج آن‌ها را دریافت کرد، آن‌ها را بهبود بخشید؛ ولی مسیر تصمیم‌گیری آن‌ها در اغلب مواقع از چشم انسان پنهان است. «ماشین تورینگ عصبی» (Neural Turing Machine | NTM)، تلاشی برای حل این مشکل است.

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

انواع شبکه های عصبی مصنوعی -- راهنمای جامع

اگر این مطلب برای شما مفید بوده است، آموزش‌های زیر نیز به شما پیشنهاد می‌شوند:

^^

بر اساس رای ۴۹ نفر
آیا این مطلب برای شما مفید بود؟
اگر بازخوردی درباره این مطلب دارید یا پرسشی دارید که بدون پاسخ مانده است، آن را از طریق بخش نظرات مطرح کنید.
منابع:
Towards Data Science
۶ دیدگاه برای «انواع شبکه های عصبی مصنوعی — راهنمای جامع»

سلام ، میخواستم بدونم بنظر شما کدوم یک از انواع شبکه های عصبی برای تحلیل بازار های مالی مناسب هست؟؟؟

خیلی ممنون از مطالب خوبتون خسته نباشید

بسیار ممنون و سپاسگزار

سلام
ممنون خیلی عالی بود
میشه مطلب رو برام ارسال کنید

سلام
فوق العاده بود.
با تشکر فراوان

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

نظر شما چیست؟

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *