شبکه عصبی ELM (جلسه نهم)
- دسته:پکیجهای آموزشی, شبکههای عصبی, متلب
- 0 دیدگاه
در این جلسه تئوری یادگیری شبکه عصبی ELM را طبق مقاله به زبان ساده توضیح داده و سپس به صورت مرحله به مرحله در متلب پیادهسازی کردهایم. و در انتها برای اینکه با کارایی این مدل آشنا شوید چندین پروژه عملی از قبیل تشخیص سرطان سینه (پروژه عملی طبقهبندی) ، پیش بینی میزان آلودگی هوا (پروژه عملی رگرسیون) و کلاسبندی داده سه کلاسه iris (گل زنبق) با استفاده از شبکه عصبی ELM انجام دادهایم.
پیادهسازی شبکه عصبی (Extreme Learning Machine(ELM
ما تا جلسه هشتم از مباحث کتاب معروف Simon haykin استفاده کردیم و در دو جلسه آینده قصد داریم پیادهسازی دو تا شبکه عصبی معروف ELM و PNN را طبق مقالات تخصصی آموزش دهیم تا با پیادهسازی مقالات تخصصی نیز آشنا شوید. شبکه عصبی پرسپترون دو ایراد اساسی در زمان آموزش دارد: ایراد اول شبکه این است که از گرادیان نزولی برای تنظیم وزنها استفاده میکند و این باعث میشود که پروسه آموزش زمانبر باشد، مخصوصا زمانی که حجم داده آموزشی زیاد باشد! ایراد دوم این شبکه تعداد زیاد پارامترها است. در این شبکه پارامترهای زیادی باید در پروسه آموزش تنظیم شوند و همین باعث میشود که زمان آموزش بسیار بالا باشد. شبکه عصبی ELM یک رویکر بسیار سادهای برای حل این مسئله ارائه کرده است و به همین دلیل سرعت یادگیری بسیار بالایی دارد و سرعت یادگیری آن در مقایسه با MLP شاید بتواند گفت 1000 برابر و حتی بیشتر شده است. این شبکه ساختاری همانند RBF دارد ولی کلا یک پارامتر در طول آموزش تنظیم میکند. برخلاف RBF که وزنهای سیناپسی بین لایه ورودی و لایه پنهان ثابت و مقدار یک بود، در این شبکه لایه ورودی با یک سری وزن به لایه پنهان وصل شده شده است، البته خوبی ماجرا اینجا هست که در این شبکه به وزنها یک مقدار تصادفی در همان ابتدا اختصاص میدهند و نیازی نیست در طول آموزش تنظیم شوند. نورونهای لایه پنهان یک نورون معمولی هستند و نیازی به پیدا کردن مراکز و سیگمای هر نورون نیست و در نهایت تنها پارامتر قابل تنظیم این شبکه وزنهای سیناپسی بین لایه پنهان و لایه خروجی است. یک شبکه رو به جلو هست و با استفاده از روش شبه معکوس وزنهای سیناپسی را در یک لحظه محاسبه میکند. و همین امر باعث شده سرعت یادگیری این شبکه بسیار بالا باشد. نکته جالب ماجرا اینجاست که عملکرد این الگوریتم بسیار بالاست و با اینکه تعداد پارامتر قابل تنظیم کمتری دارد ولی عملکرد بسیار خوبی در مقالات برای این الگوریتم گزارش شده است.
در این ویدیو ما تئوری یادگیری این شبکه را طبق مقاله به زبان ساده توضیح داده و سپس به صورت مرحله به مرحله در متلب پیادهسازی کردهایم. و در انتها برای اینکه با کارایی این مدل آشنا شوید چندین پروژه عملی از قبیل تشخیص سرطان سینه (پروژه عملی طبقهبندی) ، پیش بینی میزان آلودگی هوا (پروژه عملی رگرسیون) و کلاسبندی داده سه کلاسه iris (گل زنبق) با استفاده از شبکه عصبی ELM انجام دادهایم.
ما تا این جلسه برای ارزیابی شبکههای عصبی از روش معمول (the hold out validation method) استفاده میکردیم که در آن یکبار داده به دو بخش آموزش و تست تقسیم شده و مدل یکبار آموزش و تست میشود. زمانی که تعداد داده کم باشد استفاده از این روش ارزیابی مناسب نیست و باید از روشهای استاندارد دیگری استفاده کنیم. ما در این جلسه روشهای ارزیابی k-fold cross validation، random subsampling و leave one out validation را توضیح داده و سپس مرحله به مرحله در متلب پیاده سازی کردهایم و درنهایت پروژههای عملی را با استفاده از این روشها ارزیابی میکنیم تا با ارزیابی استاندارد یک مدل یادگیری ماشین آشنا شوید و در پروژه های خود استفاده کنید.
نکته: بخشی از مباحث این جلسه طبق مطالب فصل کتاب Simon haykin است.
درصورتی که با خرید محصول مشکل داشتید با شمارهی 2687 – 038 -0936 تماس بگیرید.