شبکههای عصبی مصنوعی – از صفر تا صد
در این مطلب همانطور که از عنوان انتظار میرود به شبکههای عصبی مصنوعی پرداخته شده و پیدایش، کاربرد و انواع آنها مورد بررسی قرار گرفته است. در انتها نیز منابعی برای مطالعه و یادگیری بیشتر معرفی شده است.
پیدایش شبکههای عصبی مصنوعی
مغر انسان، به اذعان بسیاری از دانشمندان، پیچیدهترین سیستمی است که تا کنون در کل گیتی مشاهده شده و مورد مطالعه قرار گرفته است. اما این سیستم پیچیده نه ابعادی در حد کهشکشان دارد و نه تعداد اجزای سازندهاش، بیشتر از پردازندههای ابررایانههای امروزی است. پیچیدگی راز آلود این سیستم بی نظیر، به اتصالهای فراوان موجود میان اجزای آن بازمیگردد. این همان چیزی است که مغز 1400 گرمی انسان را از همه سیستمهای دیگر متمایز می کند.
فرایندهای خودآگاه و ناخودآگاهی که در حدود جغرافیایی بدن انسان رخ میدهند، همگی تحت مدیریت مغز هستند. برخی از این فرایندها آنقدر پیچیده هستند، که هیچ رایانه یا ابررایانهای در جهان امکان پردازش و انجام آن را ندارد. با این حال، تحقیقات نشان میدهند که واحدهای سازنده مغز انسان، از نظر سرعت عملکرد، حدود یک میلیون بار کندتر از ترانزیستورهای مورد استفاده در تراشههای سیلیکونی CPU رایانه هستند.
سرعت و قدرت پردازش بسیار بالای مغز انسان، به ارتباطهای بسیار انبوهی باز میگردد که در میان سلولهای سازنده مغز وجود دارد و اساساً، بدون وجود این لینکهای ارتباطی، مغز انسان هم به یک سیستم معمولی کاهش مییافت و قطعاً امکانات فعلی را نداشت.
گذشته از همه اینها، عملکرد عالی مغز در حل انواع مسائل و کارایی بالای آن، باعث شده است تا شبیه سازی مغز و قابلیتهای آن به مهمترین آرمان معماران سختافزار و نرمافزار تبدیل شود. در واقع اگر روزی فرا برسد (که البته ظاهرا خیلی هم دور نیست) که بتوانیم رایانهای در حد و اندازههای مغز انسان بسازیم، قطعاً یک انقلاب بزرگ در علم، صنعت و البته زندگی انسانها، رخ خواهد داد.
از چند دهه گذشته که رایانهها امکان پیادهسازی الگوریتمهای محاسباتی را فراهم ساختهاند، در راستای شبیهسازی رفتار محاسباتی مغز انسان، کارهای پژوهشی بسیاری از سوی متخصصین علوم رایانه، مهندسین و همچنین ریاضیدانها شروع شده است، که نتایج کار آنها، در شاخهای از علم هوش مصنوعی و در زیرشاخه هوش محاسباتی تحت عنوان موضوع «شبکههای عصبی مصنوعی» یا Artificial Neural Networks (به اختصار: ANNs) طبقهبندی شده است. در مبحث شبکههای عصبی مصنوعی، مدلهای ریاضی و نرمافزاری متعددی با الهام گرفتن از مغز انسان پیشنهاد شدهاند، که برای حل گستره وسیعی از مسائل علمی، مهندسی و کاربردی، در حوزه های مختلف کاربرد دارند.
کاربردهای شبکههای عصبی مصنوعی
امروز به قدری استفاده از سیستمهای هوشمند و به ویژه شبکه عصبی مصنوعی گسترده شده است که میتوان این ابزارها را در ردیف عملیات پایه ریاضی و به عنوان ابزارهای عمومی و مشترک، طبقهبندی کرد. چرا که کمتر رشته دانشگاهی است که نیازی به تحلیل، تصمیمگیری، تخمین، پیشبینی، طراحی و ساخت داشته باشد و در آن از موضوع شبکههای عصبی استفاده نشده باشد.
فهرستی که در ادامه آمده است، یک فهرست نه چندان کامل است. اما همین فهرست مختصر نیز گستردگی کاربردهای شبکههای عصبی مصنوعی را تا حدود زیادی به تصویر میکشد.
زمینه کلی | کاربرد |
علوم کامپیوتر |
|
علوم فنی و مهندسی |
|
علوم پایه و نجوم |
|
علوم پزشکی |
|
علوم تجربی و زیستی |
|
علوم اقتصادی و مالی |
|
علوم اجتماعی و روانشناسی |
|
هنر و ادبیات |
|
علوم نظامی |
|
انواع شبکههای عصبی مصنوعی
انواع مختلفی از مدلهای محاسباتی تحت عنوان کلی شبکههای عصبی مصنوعی معرفی شدهاند که هر یک برای دستهای از کاربردها قابل استفاده هستند و در هر کدام از وجه مشخصی از قابلیتها و خصوصیات مغز انسان الهام گرفته شده است.
در همه این مدلها، یک ساختار ریاضی در نظر گرفته شده است که البته به صورت گرافیکی هم قابل نمایش دادن است و یک سری پارامترها و پیچهای تنظیم دارد. این ساختار کلی، توسط یک الگوریتم یادگیری یا تربیت (Training Algorithm) آن قدر تنظیم و بهینه میشود، که بتواند رفتار مناسبی را از خود نشان دهد.
نگاهی به فرایند یادگیری در مغز انسان نیز نشان میدهد که در واقع ما نیز در مغزمان فرایندی مشابه را تجربه میکنیم و همه مهارتها، دانستهها و خاطرات ما، در اثر تضعیف یا تقویت ارتباط میان سلولهای عصبی مغز شکل میگیرند. این تقویت و تضعیف در زبان ریاضی، خود را به صورت تنظیم یک پارامتر (موسوم به وزن یا Weight) مدلسازی و توصیف میکند.
اما طرز نگاه مدلهای مختلف شبکههای عصبی مصنوعی کاملا متفاوت است و هر یک، تنها بخشی از قابلیتهای یادگیری و تطبیق مغز انسان را هدف قرار داده و تقلید کردهاند. در ادامه به مرور انواع مختلف شبکههای عصبی پرداختهایم که مطالعه آن در ایجاد یک آشنایی اولیه بسیار موثر خواهد بود.
پرسپترون چندلایه یا MLP
یکی از پایهایترین مدلهای عصبی موجود، مدل پرسپترون چند لایه یا Multi-Layer Perceptron (به اختصار MLP) است که عملکرد انتقالی مغز انسان را شبیهسازی میکند. در این نوع شبکه عصبی، بیشتر رفتار شبکهای مغز انسان و انتشار سیگنال در آن مد نظر بوده است و از این رو، گهگاه با نام شبکههای پیشخورد (Feedforward Networks) نیز خوانده میشوند.
هر یک از سلولهای عصبی مغز انسان، موسوم به نورون (Neuron)، پس از دریافت ورودی (از یک سلول عصبی یا غیر عصبی دیگر)، پردازشی روی آن انجام میدهند و نتیجه را به یک سلول دیگر (عصبی یا غیر عصبی) انتقال میدهند. این رفتار تا حصول نتیجهای مشخص ادامه دارد، که احتمالاً در نهایت منجر به یک تصمیم، پردازش، تفکر و یا حرکت خواهد شد.
- مطلب پیشنهادی برای مطالعه: پرسپترون چند لایه در پایتون — راهنمای کاربردی
شبکههای عصبی شعاعی یا RBF
مشابه الگوی شبکههای عصبی MLP، نوع دیگری از شبکههای عصبی وجود دارند که در آنها، واحدهای پردازنده، از نظر پردازشی بر موقعیت خاصی متمرکز هستند. این تمرکز، از طریق توابع شعاعی یا Radial Basis Functions (به اختصار RBF) مدلسازی میشود.
از نظر ساختار کلی، شبکههای عصبی RBF تفاوت چندانی با شبکههای MLP ندارند و صرفا نوع پردازشی که نورونها روی ورودهایشان انجام میدهند، متفاوت است. با این حال، شبکههای RBF غالبا دارای فرایند یادگیری و آمادهسازی سریعتری هستند. در واقع، به دلیل تمرکز نورونها بر محدوده عملکردی خاص، کار تنظیم آنها، راحتتر خواهد بود.
- مطلب پیشنهادی برای مطالعه: شبکه عصبی در متلب — از صفر تا صد
ماشینهای بردار پشتیبان یا SVM
در شبکههای عصبی MLP و RBF، غالبا توجه بر بهبود ساختار شبکه عصبی است، به نحوی که خطای تخمین و میزان اشتباههای شبکه عصبی کمینه شود. اما در نوع خاصی از شبکه عصبی، موسوم به ماشین بردار پشتیبان یا Support Vector Machine (به اختصار SVM)، صرفا بر روی کاهش ریسک عملیاتی مربوط به عدم عملکرد صحیح، تمرکز میشود. ساختار یک شبکه SVM، اشتراکات زیادی با شبکه عصبی MLP دارد و تفاوت اصلی آن عملاً در شیوه یادگیری است.
- مطالب پیشنهادی برای مطالعه:
نگاشتهای خودسازمانده یا SOM
شبکه عصبی کوهونن (Kohonen) یا نگاشت خودسازمانده و یا Self-Organizing Map (به اختصار SOM) نوع خاصی از شبکه عصبی است که از نظر شیوه عملکرد، ساختار و کاربرد، کاملاً با انواع شبکه عصبی که پیش از این مورد بررسی قرار گرفتند، متفاوت است. ایده اصلی نگاشت خودسازمانده، از تقسیم عملکردی ناحیه قشری مغز، الهام گرفته شده است و کاربرد اصلی آن در حل مسائلی است که به مسائل «یادگیری غیر نظارت شده» معروف هستند. در واقع کارکرد اصلی یک SOM، در پیدا کردن شباهتها و دستههای مشابه در میان انبوهی از دادههایی است که در اختیار آن قرار گرفته است. این وضعیت مشابه کاری است که قشر مغز انسان انجام میدهد و انبوهی از ورودیهای حسی و حرکتی به مغز را در گروههای مشابهی طبقهبندی (یا بهتر است بگوییم خوشهبندی) کرده است.
- مطالب پیشنهادی برای مطالعه: انواع سلول ها و لایه ها در شبکه های عصبی — راهنمای جامع
یادگیرنده رقمیساز بردار یا LVQ
این نوع خاص شبکه عصبی، تعمیم ایده شبکههای عصبی SOM برای حل مسائل یادگیری نظارت شده است. از طرفی شبکه عصبی LVQ (یا Learning Vector Quantization)، میتواند به این صورت تعبیر شود که گویا شبکه عصبی MLP با یک رویکرد متفاوت، کاری را که باید انجام بدهد یاد میگیرد.
اصلیترین کاربرد این نوع شبکه عصبی در حل مسائل طبقهبندی است که گستره وسیعی از کاربردهای سیستمهای هوشمند را پوشش میدهد.
شبکه عصبی هاپفیلد یا Hopfield
این نوع شبکه عصبی، بیشتر دارای ماهیتی شبیه به یک سیستم دینامیکی است که دو یا چند نقطه تعادل پایدار دارد. این سیستم با شروع از هر شرایط اولیه، نهایتا به یکی از نقاط تعادلش همگرا میشود. همگرایی به هر نقطه تعادل، به عنوان تشخیصی است که شبکه عصبی آن را ایجاد کرده است و در واقع میتواند به عنوان یک رویکرد برای حل مسائل طبقهبندی استفاده شود. این سیستم، یکی از قدیمیترین انواع شبکههای عصبی است که دارای ساختار بازگشتی است و در ساختار آن فیدبکهای داخلی وجود دارند.
- مطالب پیشنهادی برای مطالعه: ساخت شبکه عصبی (Neural Network) در پایتون — به زبان ساده
مراجع مطالعاتی و منابع آموزشی مهم
در این بخش، قصد داریم منابع آموزشی و مراجع مطالعاتی در زمینه شبکههای عصبی مصنوعی را معرفی کنیم.
اگر شما نیز قصد دارید که در یک کار پژوهشی، پروژه دانشگاهی یا صنعتی و یا در مسیر علایق شخصیتان، شبکههای عصبی مصنوعی را فرا بگیرید و در خصوص نحوه پیادهسازی و کاربردهای این ابزارهای مفید اطلاعاتی را کسب نمایید، حتماً پیشنهاد میکنیم که در ادامه با ما همراه باشید.
کتابهای خارجی
عنوان: Neural Networks and Learning Machines ترجمه عنوان: شبکههای عصبی و ماشینهای یادگیر مولف: Simon S. Haykin سال چاپ: 2009 انتشارات: Prentice Hall لینک دسترسی: لینک | |
عنوان: Neural Networks and Statistical Learning ترجمه عنوان: شبکههای عصبی و یادگیری آماری مولفین: Ke-Lin Du, M. N. S. Swamy سال چاپ: 2013 انتشارات: Springer Science & Business Media لینک دسترسی: لینک | |
عنوان: Machine Learning: A Probabilistic Perspective ترجمه عنوان: یادگیری ماشین از دیدگاه احتمالاتی مولف: Kevin P. Murphy سال چاپ: 2012 انتشارات: MIT Press لینک دسترسی: لینک | |
عنوان: Machine Learning: The Art and Science of Algorithms that Make Sense of Data ترجمه عنوان: یادگیری ماشین: علم و هنر الگوریتمهایی که دادهها را ملموس میکنند مولف: Peter Flach سال چاپ: 2012 انتشارات: Cambridge University Press لینک دسترسی: لینک | |
عنوان: Pattern Recognition and Machine Learning ترجمه عنوان: بازشناسی الگو و یادگیری ماشین مولف: Christopher M. Bishop سال چاپ: 2006 انتشارات: Springer لینک دسترسی: لینک |
کتابهای فارسی
عنوان: مبانی شبکههای عصبی (هوش محاسباتی، جلد اول) مولف: دکتر محمد باقر منهاج انتشارات: دانشگاه صنعتی امیرکبیر لینک دسترسی: لینک | |
عنوان: مبانی شبکههای عصبی مولف: لوران فاست مترجمین: هادی ویسی، کبری مفاخری و سعید باقری شکری انتشارات: نص لینک دسترسی: لینک | |
عنوان: طراحی شبکههای عصبی مولفین: مارتین تی. هاگان، هاوارد بی. دیموث و مارک بیل مترجم: سید مصطفی کیا انتشارات: کیان رایانه سبز لینک دسترسی: لینک | |
عنوان: آشنایی با شبکههای عصبی مولفین: آر.بیل و تی.جکسون مترجم: محمود البرزی انتشارات: دانشگاه صنعتی شریف لینک دسترسی: لینک | |
عنوان: شبکههای عصبی مصنوعی مولف: رابرت شالکوف مترجمین: محمود جورابیان، امید استوار و طناز زارع انتشارات: دانشگاه شهید چمران اهواز لینک دسترسی: لینک | |
عنوان: شبکه های عصبی در MATLAB مولف: سید مصطفی کیا انتشارات: کیان رایانه سبز لینک دسترسی: لینک | |
عنوان: شبکههای عصبی مصنوعی مولفین: سعید سلطانی، سروش سرداری و مژگان شیخ پو انتشارات: نص لینک دسترسی: لینک |
منابع آموزشی آنلاین
عنوان: مجموعه فرادرسهای شبکههای عصبی مصنوعی در متلب مدرس: دکتر سیدمصطفی کلامی هریس مدت زمان: 27 ساعت نحوه استفاده: دریافت به صورت لینک دانلود و بر روی DVD زبان: فارسی نحوه آموزش: تئوری و عملی ارائه دهنده: سازمان علمی-آموزشی فرادرس لینک دسترسی: لینک | |
عنوان: مجموعه فرادرسهای کاربردی شبکههای عصبی مصنوعی مدرس: دکتر اسماعیل آتشپز گرگری مدت زمان: 8 ساعت نحوه استفاده: دریافت به صورت لینک دانلود و بر روی DVD زبان: فارسی نحوه آموزش: تئوری و عملی ارائه دهنده: سازمان علمی-آموزشی فرادرس لینک دسترسی: لینک | |
عنوان: Machine Learning ترجمه عنوان: یادگیری ماشین مدرس: Andrew Ng دانشگاه: استنفورد مدت زمان: 21 ساعت نحوه استفاده: شرکت به صورت آنلاین زبان: انگلیسی نحوه آموزش: تئوری ارائه دهنده: Coursera لینک دسترسی: لینک | |
عنوان: Neural Networks for Machine Learning ترجمه عنوان: شبکههای عصبی برای یادگیری ماشین مدرس: Geoffrey Hinton دانشگاه: تورنتو مدت زمان: 25 ساعت نحوه استفاده: شرکت به صورت آنلاین زبان: انگلیسی نحوه آموزش: تئوری ارائه دهنده: Coursera لینک دسترسی: لینک | |
عنوان: Intro to Machine Learning ترجمه عنوان: مقدمهای بر یادگیری ماشین مدرس: Sebastian Thrun مدت زمان: 30 ساعت نحوه استفاده: شرکت به صورت آنلاین زبان: انگلیسی نحوه آموزش: تئوری ارائه دهنده: Udacity لینک دسترسی: لینک |
سلام ، خیلی ممنون از مطلبتون
فقط کاش تصویر هارو عنوان بندی کنید و زیرش بنویسید که هر تصویر مربوط به کدوم بخش هست. واسه من تشخیص این خیلی سخت بود
با سلام؛
تصویر هر بخش، بعد از تیتر اصلی همان بخش و در انتهای پاراگراف آورده شده است.
با تشکر از همراهی شما با مجله فرادرس
با عرض سلام..بند اجازه دارم از مطلب جنابعالی برای سمینار استفاده کنم ؟
با سلام؛
از همراهی شما با مجله فرادرس سپاسگزاریم. استفاده از محتوای این مطلب برای ارائه سمینار، با ذکر منبع مطلب، بلامانع است.
پیروز، شاد و تندرست باشید.
سلام، وقت شما بخیر؛
شرایط استفاده از مجله فرادرس را میتوانید در این لینک مشاهده کنید.
سلام
فوق العاده بود.
مرسی