شبکه عصبی آدالاین و قانون یادگیری lms (جلسه سوم)
- دسته:پکیجهای آموزشی, شبکههای عصبی, متلب
- 0 دیدگاه
قانون یادگیری پرسپترون دو ایراد اساسی دارد. در این جلسه الگوریتم حداقل مربعات خطا( Least means square error ) را معرفی میکنیم و ایرادات قانون یادگیری پرسپترون را حل میکنیم. الگوریتم LMS به جای اینکه دنبال خطای صفر باشد، دنبال خطای حداقل است. و با این روش زمانی که داده به صورت غیرخطی هم باشد همگرا میشود.
قانون یادگیری LMS و پیادهسازی شبکه عصبی آدالاین
این جلسه یکی از مهمترین جلسات دوره تخصصی پیادهسازی شبکههای عصبی در متلب است. در جلسه دوم ما قانون یادگیری پرسپترون را آموزش دادیم و دو ایراد اساسی این قانون را مطرح کردیم. یکی از ایرادهای قانون پرسپترون این بود که الگوریتم زمانی که داده ما غیرخطی بود (دادهای که در آن نتوان با یک خط از هم جدا کرد) نمیتوانست همگرا شود و در نتیجه نمیتوانست یاد بگیرد. و ایراد دوم این الگوریتم این است که نمیتواند مرز کلاسبندی بهینهای بدست آورد. ما در این جلسه الگوریتم حداقل مربعات خطا( Least means square error ) را معرفی میکنیم و ایرادات الگوریتم پرسپترون را حل میکنیم. الگوریتم LMS به جای اینکه دنبال خطای صفر باشد، دنبال خطای حداقل است. و با این روش زمانی که داده به صورت غیرخطی هم باشد همگرا میشود.
الگوریتم LMS با دو روش به نام وینرهاف و گرادیان نزولی وزنهای سیناپسی بهینه را محاسبه میکند. این روش بهینهترین مرز ممکن را بدست میآورد ولی یک ایراد اساسی دارد و زمانی که تعداد ویژگی ها زیاد باشد محاسبه ماتریس autocorrelation بسیار سخت میشود. برای حل این مشکل الگوریتم گردایان نزولی مطرح میشود، این الگوریتم به جای اینکه در یک لحظه وزنهای سیناپسی را محاسبه کند در طول زمان در جهت شیب منفی خطا حرکت میکند و وزنهای سیناپسی بهینه را محاسبه میکند. ما در ابتدا الگوریتم وینرهاف را توضیح میدهیم و سپس مرحله به مرحله در متلب پیاده سازی میکنیم و سپس الگوریتم گرادیان نزولی را توضیح داده و مرحله به مرحله در متلب پیاده سازی میکنیم. و در نهایت شبکه عصبی آدلاین را معرفی میکنیم و با استفاده از این شبکه مسائل کلاسبندی را انجام میدهیم. شبکه عصبی تک لایه آدالاین هر دو ایراد شبکه عصبی پرسپترون تک لایه را حل میکند.
بعد از این ما طبق کتاب Simon haykin انواع روشهای توقف آموزش شبکه عصبی را توضیح میدهم. سه روش برای توقف آموزش شبکه عصبی است که هر سه روش آموزش داده شده و در متلب پیاده سازی میشوند.
برای آموزش شبکه عصبی نیاز است که داده ها به شبکه اعمال شوند و شبکه در طول زمان آموزش ببیند و برای اینکار دو روش به نام دستهای (batch mode) و موردی(pattern mode) کتاب معرفی کرده که هر دو روش توضیح داده شده و در متلب پیادهسازی میشوند و مزایا و معایب هر روش توضیح داده میشود و در انتهای جلسه پارامترهای ارزیابی(accuracy, sensitivity, specificity) یک طبقه بند توضیح داده میشود و سپس پروژههای انجام شده با پارامترهای گفته شده ارزیابی میشود.
و همچنین الگورتیم cross validation که برای انتخاب ساختار بهینه یک شبکه عصبی استفاده میشود را توضیح میدهیم.
برای اینکه با کاربردهای عملی این شبکهها آشنا شوید در یک ویدیو جداگانه دو پروژه عملی به نام ناحیهبندی تصویر و پیادهسازی گیتهای منطقی AND, OR را با استفاده از شبکههای عصبی به صورت مرحله به مرحله در متلب پیادهسازی کردهایم.
نکته: بخشی از مباحث این جلسه طبق مطالب فصل کتاب Simon haykin است.
درصورتی که با خرید محصول مشکل داشتید با شمارهی 2687 – 038 -0936 تماس بگیرید.