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