آشنایی با مبانی شبکههای عصبی مصنوعی
شبکههای عصبی مصنوعی امروزه از مهمترین الگوریتمهای یادگیری ماشین محسوب شده و اختراع آن مربوط به دهه ۱۹۷۰ است اما در حال حاضر به دلیل افزایش قدرت محاسباتی به محبوبیت زیادی دست یافته و تقریباً همه جا استفاده میشود.
رابط کاربری هوشمند در تمام برنامههای کاربردی از شبکههای مصنوعی استفاده میکند. در ادامه با این تکنیک کاربردی در یادگیری ماشین بیشتر آشنا خواهید شد.
مفهوم شبکه عصبی مصنوعی در یادگیری ماشین
نوع خاصی از الگوریتم یادگیری ماشین بوده که مدل بندی آن دقیقاً منطبق بر مغز انسان و قادر به یادگیری از دادهها و ارائه و دسته بندی پاسخهاست.
شبکههای عصبی مصنوعی معمولاً مدلهای آماری غیر خطی بوده که برای کشف الگوی جدید از یک رابطه پیچیده بین ورودیها و خروجیها استفاده میکند.
این تکنیک کاربردهای فراوانی در صنعت داشته که مهمترین آنها عبارتند از: ۱- شناسایی تصویر و گفتار، ۲- ترجمه ماشینی، ۳- تشخیص پزشکی.
آشنایی با ساختار شبکههای عصبی
عملکرد شبکههای مصنوعی دقیقاً مشابه سیستم عصبی انسان بوده و از ۳ لایه اساسی تشکیل شده است.
لایه ورودی
اولین لایه شبکههای عصبی مصنوعی ANN (لایه ورودی) نام داشته که اطلاعات ورودی را در قالب متنهای مختلف از جمله اعداد، فایلهای صوتی و پیکسلهای تصویر دریافت میکند.
لایه ANN (مخفی)
این لایه معمولاً در میانه مدل قرار گرفته و شبکههای عصبی میتوانند دارای یک یا چند لایه باشند که انواع محاسبات عصبی روی آنها انجام میشود.
لایه خروجی
لایههای خروجی نتیجه حاصل از محاسبات دقیق میانی را به دست آورده و معمولاً در یک شبکه عصبی چندین پارامتر و ابر پارامتر وجود داشته که بر عملکرد مدل تأثیر میگذارد.
برخی از پارامترهای شبکههای مصنوعی عبارتند از: وزن، اریبی، نرخ یادگیری، اندازه دسته و… که تقریباً هر گره در ANN دارای وزن خاصی است.
مفهوم تابع فعالسازی در شبکههای عصبی مصنوعی
خروجی نهایی معمولاً بر اساس مقداری نهایی گره به دست آمده و برای محاسبه آن با استفاده از توابع خطا، اختلاف خروجی پیش بینی شده و نتیجه را محاسبه کرده سپس وزن شبکههای عصبی را از طریق فرایندی به نام پس انتشار تنظیم میکنند.
آشنایی با انواع شبکههای مصنوعی در یادگیری ماشین
معمولاً شبکههای عصبی به ۲ دسته عمده تقسیم شده که عبارتند از:
شبکه عصبی پیش خور؛
شبکه عصبی پس خور؛
در ادامه هر کدام از این موارد به طور جداگانه بیان میشوند.
شبکه عصبی پیش خور (FeedForward)
شبکههای عصبی مصنوعی پیش خور جریان اطلاعات را تنها از یک جهت نشان داده یعنی جریان را از لایه ورودی به پنهان، سپس به لایه خروجی منتقل میکند. بنابراین هیچ حلقه پسخوری در این شبکه وجود ندارد.
شبکه پیش خور معمولاً در یادگیری نظارت شده برای طبقه بندی، شناسایی تصویر و… به کار رفته و معمولاً در محاسبه دادههای غیر دنبالهای استفاده میشوند.
شبکههای عصبی Feedback (پس خور)
این شبکهها معمولاً دارای حلقههایی بوده که عمدتاً برای نگهداری حافظه، دادههای دنبالهای یا سریهای زمانی (دادههای وابسته به زمان) استفاده میشوند.
شبکههای بیزی در یادگیری ماشین
این شبکههای عصبی یک مدل گرافیکی احتمالاتی داشته که معمولاً برای محاسبه احتمال استفاده شده و به عنوان شبکههای باور هم شناخته میشوند. در این شبکهها مسیرهایی وجود داشته که گرهها را به هم وصل کرده و در آن هر گره روی دیگری تأثیر میگذارد.
شبکههای بیزی قابلیت بازگشت جهت دار به گره را نداشته، به همین دلیل آنها را گراف جهت دار غیر مدور هم مینامند. همچنین این شبکهها قابلیت کنترل متغیرهای چند مقداری هم داشته و عموماً از ۲ بعد تشکیل میشوند.
کاربرد شبکههای عصبی مصنوعی در صنعت
شبکههای عصبی معمولاً کاربردهای زیادی در صنعت داشته که در این بخش به برخی از آنها اشاره خواهیم کرد:
شناسایی کاراکترهای دست نویس
لایههای ورودی شبکههای عصبی (ANN) اغلب برای تشخیص کاراکترهای دست نویس استفاده شده که این کار به شکل حروف یا ارقام آموزش داده میشود.
تشخیص و شناسایی گفتار
یکی دیگر از قابلیتهای لایه ورودی شبکههای عصبی مصنوعی، شناسایی گفتار بر مبنای مدلهای آماری مانند مدلهای مارکوف است. نکته مهم اینکه با پیشرفت روش یادگیری عمیق، تنها گزینه برای دستیابی به یک طبقه بندی دقیق استفاده از شبکههای عصبی است.
طبقه بندی افراد از طریق امضاء
برای شناسایی امضاء و طبقه بندی افراد بر اساس آن اغلب از شبکههای عصبی استفاده شده که بر مبنای آن این شبکهها امضای واقعی را از مدل جعلی آن تشخیص میدهند.
شناسایی چهره
شبکههای عصبی در حوزه امنیت سیستم برای تشخیص چهره استفاده میشوند.
برای آشنایی با مبانی یادگیری عمیق در هوش مصنوعی و روشهای آموزش آن به مقالات مرتبط مراجعه کنید.