لازم بذکر است که علامت گذاری وزنهای سیناپسی را با ذکر نکردن زیرنویسهای اضافی که نورون را مشخص میکند سادهسازی نمودهایم، زیرا تنها با یک نورون سر و کار داریم. این کار در تمامی این بخش انجام شده است. خروجی نورون y(i) با خروجی مربوطه d(i) که توسط سیستم ناشناخته در زمان i تولید شده است، مقایسه میشود.
طبیعتاً y(i)متفاوت از d(i) است و از مقایسه آنها میتوان سیگنال خطا را به دست آورد:
(۲-۴)
تابع هزینهای که برای به دست آوردن الگوریتم فیلتر کردن تطبیقی مورد نظر مورد استفاده قرار میگیرد تعیین کننده روشی است که سیگنال خطای e(i) برای کنترل تنظیم وزنهای سیناپسی به کار میگیرد. این موضوع در ارتباط نزدیکی با بحث بهینهسازی میباشد. مناسب است که مرور بر روشهای بهینهسازی نامشروط داشته باشیم. مطالب مذکور نه تنها برای فیلترهای تطبیقی خطی بلکه برای شبکه های عصبی در حالت عمومی نیز قابل استفاده میباشند.
۲-۸-۳ تکنیکهای بهینه سازی نامشروط
تابع هزینه را که یک تابع مشتق پذیر پیوسته از یک وزن (پارامتر) نامشخص بردار w میباشد را در نظر بگیرید. تابع عناصر w را به فضای اعداد حقیقی تصویر میکند. این تابع معیاری است که نشان میدهد بردار وزن (پارامتر) w مربوط به الگوریتم فیلتر تطبیقی را چگونه انتخاب کنیم تا بهترین رفتار را از خود نشان دهد. ما میخواهیم یک پاسخ بهینه بیابیم که شرط زیر را برآورده کند:
(۲-۵)
این بدین معناست که ما باید مسأله بهینه سازی نامشروط را به روش زیر حل کنیم:
(۲-۶) تابع هزینه نسبت به بردار وزن w حداقل گردد
شرایط لازم برای بهینه سازی این است که:
(۲-۷)
که در آن عملگر گرادیان است:
(۲-۸)
و بردار گرادیان تابع هزینه است:
(۲-۹)
دستهای از الگوریتمهای بهینه سازی نامشروط که به ویژه برای طراحی فیلترهای تطبیقی مناسب هستند بر مبنای ایده کاهش گام به گام[۳۰] محلی قرار دارند:
از یک حدس اولیه که آن را مینامیم شروع میکنیم و رشتهای از بردارهای وزن ، ، … را به نحوی تولید میکنیم که تابع هزینه در هر گام از الگوریتم به صورت زیر کاهش یابد:
(۲-۱۰)
که در آن w(n) مقدار قبلی بردار وزن و w(n+1) مقدار اصلاح شده آن است.
انتظار داریم که الگوریتم تدریجاً به پاسخ بهینه همگرا شود. ما عبارت «انتظار داریم» را بکار بردیم زیرا ممکن است در صورت در نظر نگرفتن پیش زمینههای لازم الگوریتم واگرا (یعنی ناپایدار) گردد.
در این بخش سه شیوه بهینه سازی نامشروط را که بر پایه کاهش گام به گام میباشد شرح میدهیم.
این روشها عبارتند از : روشهای شیب ترین کاهش[۳۱]، روش شیب ترین کاهش با نرخ یادگیری تطبیقی و ورش لونبرگ مارکواردت.
۲-۸-۴ روش شیب ترین کاهش[۳۲]
در روش شیب ترین کاهش تنظیمات متوالی بر روی بردار وزن w در جهت شیب ترین کاهش یا به عبارتی دیگر در جهت خلاف بردار گرادیان اعمال میگردد. برای سهولت نمایش عبارت زیر را مینویسیم:
(۲-۱۱)
بدین ترتیب الگوریتم شیب ترین کاهش را به صورت زیر مینویسیم:
(۲-۱۲)
که در آن یک مقدار ثابت مثبت است که اندازه گام یا پارامتر نرخ یادگیری نادیده میشود و بردار گرادیان است که در نقطه w(n) محاسبه میگردد. هنگامی که از گام n به n+1 میرویم الگوریتم اصلاح زیر را انجام میدهد:
(۲-۱۳)
معادله فوق در واقع بیان ریاضی قانون اصلاح خطا میباشد. برای اینکه نشان دهیم فرمولاسیون الگوریتم شیبترین کاهش شرایط (۲-۱۰) را برای کاهش گام به گام مهیا میکند از بسط سری تیلور مرتبه اول حول w(n) استفاده کنیم تا را به صورت زیر تقریب بزنیم
که استفاده از فرمول فوق برای کوچک توجیه پذیر است. جایگزینی معادله (۲-۱۳) در این رابطه تقریبی به عبارت زیر منجر میشود:
که نشان میدهد بازای پارامتر نرخ یادگیری مثبت، هنگامی که الگوریتم از گامی به گام دیگر پیش میرود تابع هزینه کاهش مییابد. در اینجا استدلال به این علت تقریبی میباشد که نتایج نهایی فقط برای نرخ های یادگیری به اندازه کافی کوچک صدق میکنند.
روش شیب ترین کاهش به آرامی به پاسخ بهینه همگرا میشود. علاوه بر این، پارامتر نرخ یادگیری تأثیر زیادی بر رفتار همگرایی آن دارد.
۲-۸-۵ الگوریتم لونبرگ مارکواردت[۳۳]
سیگنال خطا در خروجی نرون j در گام n که نشان دهنده n امین نمونه آموزش است به صورت زیر بیان میشود:
(۲-۱۳) نورون jیک نود خروجی است
مقدار لحظهای انرژی خطا برای نرون j را به صورت نشان میدهیم. به همین ترتیب مقدار لحظهای از انرژی خطای کل با جمع بر روی تمام نورون ها در لایه خروجی به دست میآید. اینها تنها نورون های «مشاهده پذیر» هستند که سیگنالهای خطا برای آنها را میتوان به صورت مستقیم محاسبه نمود. به این ترتیب میتوانیم بنویسیم:
(۲-۱۵)
که در آن مجموعه C شامل تمام نورونها در لایه خارجی شبکه میشود. فرض کنید برابر با تعداد کل الگوها (نمونهها) در مجموعه آموزش باشد. انرژی خطای متوسط مربعات از جمع بر روی تمامی nها و سپس نرمالیزه کرده آن نسبت به اندازه مجموعه N به دست میآید که به صورت زیر نشان داده میشود:
(۲-۱۶)
انرژی خطای لحظهای و انرژی خطای متوسط تابعی از تمام پارامترهای ازاد (وزنهای سیناپسی و سطوح بایاس) شبکه هستند. برای یک مجموعه آموزشی معین نمایانگر تابع هزینه به عنوان معیاری از عملکرد یادگیری است. هدف از فرایند یادگیری تنظیم کردن پارامترهای آزاد شبکه برای به حداقل رساندن میباشد. برای پیاده کردن این حداقل رسانی، از تقریبی مشابه با تقریب استفاده شده برای الگوریتم LMS در فصل قبل استفاده میکنیم. به بیان دقیقتر یک روش آموزش ساده را در نظر میگیریم که در آن وزنها به صورت الگو به الگو تا یک اپوک که یک مجموعه کامل از تمامی مجموعه آموزش است- اصلاح میشوند. تنظیمات وزنها بر مبنای خطاهای محاسبه شده برای هر الگوی / پوک اعمال شده به شبکه انجام میشود.
میانگین ریاضی این وزنها بر روی مجموعه آموزش تغییر میکند و در نتیجه تخمینی از تغییرات واقعی است که در نتیجه اصلاح وزنها بر مبنای حداقل کردن تابع هزینه به دست میآید. کیفیت این تخمین را در بخشهای بعدی بررسی خواهیم نمود.
حال در نظر بگیرید که نورون j را در حالیکه توسط دستهای از سیگنالهای کاری توسط لایه سمت چپ تغذیه میشود نشان میدهد. میدانهای محلی اعمال شده که در ورودی تابع محرک مربوط به نورون j تولید شده اند به صورت زیر هستند: