شبکه های عصبی مصنوعی — از صفر تا صد
پیدایش شبکه های عصبی مصنوعی
مغر انسان، به اذعان بسیاری از دانشمندان، پیچیده تری سیستمی است که تا کنون در کل گیتی مشاهده شده و مورد مطالعه قرار گرفته است. اما این پیچیده ترین سیستم، نه ابعادی در حد کهشکشان دارد و نه تعداد اجزای سازنده اش، بیشتر از پردازنده های ابر کامپیوترهای امروزی است. پیچیدگی راز آلود این سیستم بی نظیر، به ارتباط های فراوان موجود میان عناصر آن بر می گردد. چیزی که، مغز ۱۴۰۰ گرمی انسان را، از همه سیستم های دیگر، متمایز می کند.
پیدایش شبکه های عصبی مصنوعی
مغر انسان، به اذعان بسیاری از دانشمندان، پیچیده تری سیستمی است که تا کنون در کل گیتی مشاهده شده و مورد مطالعه قرار گرفته است. اما این پیچیده ترین سیستم، نه ابعادی در حد کهشکشان دارد و نه تعداد اجزای سازنده اش، بیشتر از پردازنده های ابر کامپیوترهای امروزی است. پیچیدگی راز آلود این سیستم بی نظیر، به ارتباط های فراوان موجود میان عناصر آن بر می گردد. چیزی که، مغز ۱۴۰۰ گرمی انسان را، از همه سیستم های دیگر، متمایز می کند.
فرایندهای خودآگاه و ناخودآگاهی که در حدود جغرافیایی بدن انسان رخ می دهند، همگی تحت مدیریت مغز هستند. برخی از این فرایندها آن قدر پیچیده هستند، که هیچ کامپیوتر یا اَبَر کامپیوتری در جهان، امکان پردازش و انجام آن را ندارد. با این حال، تحقیقات نشان می دهند که واحدهای سازنده مغز انسان، از نظر سرعت عملکرد، حدود یک میلیون بار، کندتر از ترانزیستورهای مورد استفاده در تراشه های سیلیکونی 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 Networks and Learning Machines ترجمه عنوان: شبکه های عصبی و ماشین های یادگیر مولف: Simon S. Haykin سال چاپ: ۲۰۰۹ انتشارات: Prentice Hall لینک دسترسی: لینک |
|
عنوان: Neural Networks and Statistical Learning ترجمه عنوان: شبکه های عصبی و یادگیری آماری مولفین: Ke-Lin Du, M. N. S. Swamy سال چاپ: ۲۰۱۳ انتشارات: Springer Science & Business Media لینک دسترسی: لینک |
|
عنوان: Machine Learning: A Probabilistic Perspective ترجمه عنوان: یادگیری ماشین از دیدگاه احتمالاتی مولف: Kevin P. Murphy سال چاپ: ۲۰۱۲ انتشارات: MIT Press لینک دسترسی: لینک |
|
عنوان: Machine Learning: The Art and Science of Algorithms that Make Sense of Data ترجمه عنوان: یادگیری ماشین: علم و هنر الگوریتم هایی که داده ها را ملموس می کنند مولف: Peter Flach سال چاپ: ۲۰۱۲ انتشارات: Cambridge University Press لینک دسترسی: لینک |
|
عنوان: Pattern Recognition and Machine Learning ترجمه عنوان: بازشناسی الگو و یادگیری ماشین مولف: Christopher M. Bishop سال چاپ: ۲۰۰۶ انتشارات: Springer لینک دسترسی: لینک |
کتاب های فارسی
عنوان: مبانی شبکه های عصبی (هوش محاسباتی، جلد اول) مولف: دکتر محمد باقر منهاج انتشارات: دانشگاه صنعتی امیرکبیر لینک دسترسی: لینک |
|
عنوان: مبانی شبکه های عصبی مولف: لوران فاست مترجمین: هادی ویسی، کبری مفاخری و سعید باقری شکری انتشارات: نص لینک دسترسی: لینک |
|
عنوان: طراحی شبکه های عصبی مولفین: مارتین تی. هاگان، هاوارد بی. دیموث و مارک بیل مترجم: سید مصطفی کیا انتشارات: کیان رایانه سبز لینک دسترسی: لینک |
|
عنوان: آشنایی با شبکه های عصبی مولفین: آر.بیل و تی.جکسون مترجم: محمود البرزی انتشارات: دانشگاه صنعتی شریف لینک دسترسی: لینک |
|
عنوان: شبکه های عصبی مصنوعی مولف: رابرت شالکوف مترجمین: محمود جورابیان، امید استوار و طناز زارع انتشارات: دانشگاه شهید چمران اهواز لینک دسترسی: لینک |
|
عنوان: شبکه های عصبی در MATLAB مولف: سید مصطفی کیا انتشارات: کیان رایانه سبز لینک دسترسی: لینک |
|
عنوان: شبکه های عصبی مصنوعی مولفین: سعید سلطانی، سروش سرداری و مژگان شیخ پو انتشارات: نص لینک دسترسی: لینک |
منابع آموزشی آنلاین
عنوان: مجموعه فرادرس های شبکه های عصبی مصنوعی در متلب مدرس: دکتر سیدمصطفی کلامی هریس مدت زمان: ۲۷ ساعت نحوه استفاده: دریافت به صورت لینک دانلود و بر روی DVD زبان: فارسی نحوه آموزش: تئوری و عملی ارائه دهنده: سازمان علمی-آموزشی فرادرس لینک دسترسی: لینک |
|
عنوان: مجموعه فرادرس های کاربردی شبکه های عصبی مصنوعی مدرس: دکتر اسماعیل آتشپز گرگری مدت زمان: ۸ ساعت نحوه استفاده: دریافت به صورت لینک دانلود و بر روی DVD زبان: فارسی نحوه آموزش: تئوری و عملی ارائه دهنده: سازمان علمی-آموزشی فرادرس لینک دسترسی: لینک |
|
عنوان: Machine Learning ترجمه عنوان: یادگیری ماشین مدرس: Andrew Ng دانشگاه: استنفورد مدت زمان: ۲۱ ساعت نحوه استفاده: شرکت به صورت آنلاین زبان: انگلیسی نحوه آموزش: تئوری ارائه دهنده: Coursera لینک دسترسی: لینک |
|
عنوان: Neural Networks for Machine Learning ترجمه عنوان: شبکه های عصبی برای یادگیری ماشین مدرس: Geoffrey Hinton دانشگاه: تورنتو مدت زمان: ۲۵ ساعت نحوه استفاده: شرکت به صورت آنلاین زبان: انگلیسی نحوه آموزش: تئوری ارائه دهنده: Coursera لینک دسترسی: لینک |
|
عنوان: Intro to Machine Learning ترجمه عنوان: مقدمه ای بر یادگیری ماشین مدرس: Sebastian Thrun مدت زمان: ۳۰ ساعت نحوه استفاده: شرکت به صورت آنلاین زبان: انگلیسی نحوه آموزش: تئوری ارائه دهنده: Udacity لینک دسترسی: لینک |
مجموعه: اخبار و تازه ها, شبکه های عصبی, متلب سایت برچسب ها: Learning Machines, Machine Learning, Neural Networks, Neural Networks for Machine, Springer Science, SVM, انواع شبکه های عصبی مصنوعی, پرسپترون, پرسپترون چند لایه, پیدایش شبکه های عصبی مصنوعی, خود سازمان ده, شبکه عصبی, شبکه عصبی مصنوعی, شبکه عصبی هاپفیلد, شبکه های عصبی در MATLAB, شبکه های عصبی شعاعی, شبکه های عصبی مصنوعی, شبکه های عصبی مقدماتی, طراحی شبکه های عصبی, کاربردهای شبکه های عصبی مصنوعی, ماشین های بردار پشتیبان, ماشین های یادگیر, مقدمه ای بر یادگیری ماشین, نگاشت های خود سازمان ده, هاپفیلد, یادگیرنده رقمی, یادگیرنده رقمی ساز, یادگیرنده رقمی ساز بردار, یادگیری آماری
با سلام
می خواستم از مطالب کامل و در عین حال کاربردی و قابل فهم ارائه شده در زمینه شبکه های عصبی تشکر کنم.
با آرزوی موفقیت برای شما…
با سلام
اگر امکانش هست فیلم آموزشی در مورد یادگیری عمیق تهیه نمایید.
با تشکر
با سلام.
ممنون از مطلب مفید و کاربردی شما.