تحقیق بهبود سرعت یادگیری شبکه های عصبی ۲۷ص

تحقیق بهبود سرعت یادگیری شبکه های عصبی ۲۷ص

تحقیق بهبود سرعت یادگیری شبکه های عصبی ۲۷ص

تحقیق-بهبود-سرعت-یادگیری-شبکه-های-عصبی---27صلینک دانلود و خرید پایین توضیحات
دسته بندی : وورد
نوع فایل :  word (..doc) ( قابل ویرایش و آماده پرینت )
تعداد صفحه : ۲۴ صفحه

 قسمتی از متن word (..doc) : 
 

‏مقدمه
‏شبکه های عصبی چند لایه پیش خور‏۱‏ به طور وسیعی د ر زمینه های متنوعی از قبیل طبقه بندی‏ الگوها‏، پردازش تصاویر، تقریب توابع‏ و … مورد استفاده قرار گرفته است‏.
‏الگوریتم یادگیری پس انتشار خطا‏۲‏، یکی از رایج ترین الگوریتم ها جهت آموزش شبکه های عصبی چند لایه پیش خور می باشد. این‏ الگوریتم‏، ‏تقریبی از الگوریتم بیشترین تنزل‏۳‏ می ب‏اشد و در چارچوب یادگیری عملکردی ‏۴‏ قرار می گیرد‏.
‏عمومیت یافتن الگوریتمBP ‏، بخاطر سادگی و کاربردهای موفقیت آمیزش در حل مسائل ف‏نی- مهندسی می باشد‏.
‏علیرغم، موفقیت های کلی الگوریتم BP‏ در یادگیری شبکه های عصبی چند لایه پیش خ‏و‏ر هنوز‏،‏ چندین مشکل اصلی وج‏ود دارد‏:
‏- الگوریتم پس انتشار ‏خ‏طا‏، ممکن است به ن‏قاط مین‏ی‏مم محلی در فضای پارامتر، همگرا شود‏. بنابراین زمانی که الگوریتم BP‏ ‏همگرا ‏ ‏می شود، نمی توان مطمئن شد که به یک جواب بهینه رسیده باشیم‏.
‏- سرعت همگ‏رایی الگوریتم BP‏، خیلی آهسته است.
‏از این گذشته‏، همگرایی الگوریتم BP‏، به انتخاب مقادیر اولیه وزنهای شبکه‏، بردارهای با‏یاس و ‏پارامترها موجود در الگوریتم، مانند نرخ یادگیری، وابسته است.
‏در این گزارش، با هدف بهبود الگوریتم BP‏، تکنیک های مختلفی ارائه شده است. نتایج شبیه سازیهای انجام شده نیز نشان می دهد، الگوریتم های پیشنهادی نسبت به الگوریتم استاندارد BP‏، ‏از سرعت همگرایی بالاتری برخوردار هستند‏.
‏خلاصه ای از الگوریتم‏ BP
‏از قانون یادگیری پس انتشار خطا (BP‏)‏، برای آموزش شبکه های عصبی چند لایه ‏پیش خور ‏که عموماً شبکه های ‏چند لایه پرسپترون ‏۵‏ (MLP‏) هم نامیده می شود، استفاده می شود، استفاده می کنند‏. به عبارتی توپولوژی ‏شبکه های MLP‏، با قانون یادگیری ‏پس انتشار ‏خطا تکمیل می شود. این قانون تقریبی از الگوریتم ‏بیشترین نزول (S.D‏) است و در چارچوب ‏یادگیری عملکردی قرار می گیرد‏.
‏بطور خلاصه، فرایند پس انتشار خطا از دو مسیر اصلی تشکیل می شود‏. مسیر رفت‏۶‏ و مسیر برگشت ‏۷‏ .
‏در مسیر رفت، یک الگوی آموزشی به شبکه اعمال می شود و تأثیرات آن ‏از طریق لایه های میانی به لایه خروجی‏ انتشار می یابد‏ تا اینکه
_________________________________
‏نهایتاً‏ خروجی واقعی شبکه MLP‏، به دست می آید‏. در این مسیر‏، پارامترهای شبکه (ماتریس های‏ وزن و بردارهای بایاس‏)، ثابت و بدون تغییر در نظر گرفته می شوند‏.
‏در مسیر برگشت، برعکس مسیر رفت، پارامترهای شبکه MLP‏ تغییر و تنظیم می گردند‏. این تنظیمات بر اساس ‏قانون یادگیری اصلاح خطا‏۱‏ انجام می گیرد‏. سیگنال خطا، رد لایه خروجی شبکه تشکیل می گردد‏. بردار خطا برابر با اختلاف‏ بین پاسخ مطلوب و پاسخ واقعی شبکه می باشد. مقدار خطا، پس از محاسبه، در مسیر برگشت از لایه خروجی و از طریق لایه های شبکه‏ به سمت پاسخ مطلوب ‏حرکت‏ ‏کند‏.
‏در شبکه های MLP‏، هر نرون دارای یک تابع تحریک غیر خطی است که از ویژگی مشتق پذیری ‏برخوردار است. در این حالت‏، ارتباط بین پارامترهای شبکه‏ و سیگنال خطا، کاملاً پیچیده‏ و ‏و غیر خطی‏ می باشد‏، بنابراین مشتقات ‏جزئی نسبت به پارامترهای شبکه به راحتی قابل محاسبه‏ نیستند. جهت محاسبه مشتقات از قانون ‏زن‏ج‏یره ای‏۲‏ معمول در جبر استفاده می شود‏.
‏فرمول بندی الگوریتم‏ BP
‏الگوریتم یادگیری BP‏، بر اساس الگوریتم تقریبی SD‏ است. تنظیم پارامترهای شبکه، مطا‏بق‏ با سیگنالهای خطا که بر اساس ارائه هر الگو‏ به شبکه محاسبه می شود، صورت می گیرد‏.
‏الگوریتم بیشترین تنزل با معادلات زیر توصیف می شود‏:
‏(۱‏)
‏(۲‏) ‏ ‏
‏به طوری WLji‏ ‏و bLj‏، ‏پارامترهای نرون j‏ ‏ام در لایه i‏ام است‏. ‏α‏، نرخ یادگیری‏۲‏ و F‏، میانگین ‏مربعات خطا می باشد‏.
‏ ‏(۳‏) ‏ ‏
‏(۴‏) ‏ ‏
‏(۵‏)
‏به طوریکه SLj(k)‏، حساسیت رفتار شبکه‏ در لایه L‏ ام است‏.
_________________________________
۱. Error-Correctting Learning Rule
۲. Chain Rule
۳. Learning Rate
‏معایب الگوریتم استاندار‏د پس انتشار خطا‏۱‏ (SBP‏)
‏الگوریتم BP‏، با فراهم آوردن ‏روشی از نظر محاسباتی کارا، رنسانسی ‏در شبکه های عصبی ‏ایجاد نموده زیرا ‏شبکه های MLP‏، با قانون یادگیری BP‏، ‏بیشترین کاربرد را در حل‏ مسائل فنی- مهندسی دارند‏.
‏با وجود، موفقیت های کلی این الگوریتم در یادگیری شبکه های عصبی چند لایه‏ پیش خود، هنوز‏ مشکلات اساسی ‏نیز وجود دارد‏:
‏- اولاً سرعت همگرایی الگوریتم BP‏ آهسته است‏.
‏همانطور که می دانیم، تغییرات ایجاد شده د‏ر‏ پ‏ا‏رامترهای شبکه ‏(ماتریس‏ های وزن و بردارهای بایاس‏)، پس از هر مرحله تکرار ‏الگوریتم‏ BP‏، به اندازه ‏، است، به طوریکه F‏، شاخص اجرایی، x‏ ‏پارامترهای شبکه و‏ ‏α‏، طول‏ قدم یادگیری است‏.
‏از این‏، هر قدر‏ طول قدم یادگیری،‏ ‏α‏، کوچکتر انتخاب گردد‏، تغییرات ایجاد‏ شده در پارامترهای شبکه، ‏پس از هر مرحله تکرار الگوریتم‏ BP‏، کوچکتر خواهد بود‏، که این خود منجر ‏به هموار گشتن‏ مسیر حرت‏ پارامترها به سمت مقادیر‏ بهینه در فضای پارامترها می گردد‏. این مسئله موجب ‏کندتر گشتن‏ الگوریتم BP‏ ‏می گردد‏. بر عکس با افزایش طول قدم ‏α‏، ‏اگرچه نرخ‏ یادگیری و سرعت‏ یادگیری‏ الگوریتم‏ BP‏ افزایش می یا‏بد‏،‏ لیکن تغییرات فاحشی در پارامترهای‏ شکه از هر تکراربه تکرار‏ بعد ایجاد می گردد‏، که گاهی اوقات‏ موجب ناپایداری و ن‏و‏سانی‏ شدن شبکه می شود که به ‏اصطلاح می گویند‏ پارامترهای شبکه‏ ‏واگرا شده اند‏:
‏در شکل زیر‏، منحنی یادگیری شبکه برای جدا سازیالگوها در مسأله XOR‏، به ازای‏ مقادیر مختلف نرخ یادگیری‏، نشان داده شده است‏. به ازای مقادیر کوچک‏، ‏α‏، ‏شبکه کند‏ اما هموار، یاد نمی گیرد ‏الگ‏و‏های‏ ‏ XOR‏ را از هم جدا نماید‏، ددر صورتی که به ازای‏ ۹/۰=‏ ‏α‏ شبکه‏ واگرا می شود‏.
_________________________________
۱. Standard Back-Propagation Algorithm
‏شکل (۱). منحنی یادگیری شبکه برای نرخ های یادگیری مختلف در مسأله XOR
‏- ثانیاً ‏احتمالاً به دام افتادن شبکه در نقاط مینیمم محلی وجود دارد‏.
‏در شبکه های MLP‏، میانگین مجوز خطا‏، در‏ حالت کلی خیلی‏ پیچیده است‏ و از تعداد زیادی نقطه اکسترمم‏ در فضای پارامترهای شبکه برخوردار می باشد‏. بنابراین الگوریتم پس انتشار خطا‏ با شروع از روی یک سری شرایط‏ اولیه پارامترهای شبکه‏، به نقطه مینیمم سراس‏ر‏ی و با شروع از یک مجموعه‏ شرایط اولیه دیگر ‏به تقاط مینیمم‏ محلی در فضای ‏پارامترها ‏همگرا می گردد، ‏ ‏بنابراین زمانی که الگوریتم BP‏ همگرا می شود،‏ نمی توان مطمئن شد که به یک‏ جواب بهی‏ن‏ه رسیده باشیم‏.
‏- ثالثاً: همگرایی الگوریتم BP‏، به یقین مقادیر اولیه پارامترهای شبکه عصبی MLP‏ وابسته است، بطوری که یک انتخاب خوب می تواند کمک بزرگی در همگرایی ‏سریعتر الگوریتم BP‏ فراهم آورد. برعکس انتخاب اولیه نادرست پارامترهای شبکه‏ MLP‏، منجر به گیر افتادن شبکه در نقاط مینیمم محلی در فضای برداری ‏پارامترهای شبکه‏ می گردد که این خود منجر به این می شود که شبکه خیلی زودتر از معمول به موضعی بیفتد که منحنی یادگیری ‏شبکه برای ‏تعداد بزرگی از دفعات تکرار،‏ تغییر نکند‏.
‏به عنوان مثال‏، فرض می کنیم مقدار اولیه پارامترهای ‏شبکه خیلی بزرگ باشند‏، در حالی که می دانیم توابع تبدیل نرونها مخصوصاً در ‏ ‏لایه های میانی ‏از نوع ‏زیگموئید‏ هستند. در این حالت برای نرون‏ i‏ ام، اندازه‏ ورودی‏ تابع تبدیل‏ (ni‏) خیلی بزرگ می باشد و خروجی نرون‏ (ai‏) به مقدار ‏۱‏±‏ ‏میل می کند‏. لذا ‏مشتق بردار خروجی شبکه، a‏ ‏، خیلی کوچک می باشد.
‏ فرض کنیم که باید ‏مقدار واقعی‏ ai‏، ۱ باشد یعنی ti = 1‏، لیکن به خاطر انتخاب ‏بر مقادیر اولیه،‏ ai = -1‏ گردد‏. در این حالت خطای‏ حداکثر را داریم‏ در حالی که چون ai ≈ ۰‏ ‏ ‏می باشد تغییرات ‏ناچیزی ‏در پارامترهای متناظر با نرون i‏ ام ‏داریم. این‏ ‏چیزی است که بیانگر رسیدن زودتر از معمول نرونها به حد‏ اشباع خود‏ می باشند، جایی که پاسخ‏ واقعی با پاسخ شبکه کاملاً فرق دارد و زمان زیادی طول خواهد کشید‏ که نرون از این حالت خارج شود‏. از‏ این رو با پیشرفت پروسه یادگیری، پارامترهای منتسب به نرورنهایی که به مرز ‏اشباع نرسیده اند‏، سریعتر تنظیم می شوند، ‏چرا که سیگنال خطار‏ ‏گرادیانهای‏ محلی از مقدار از اندازه‏ بزرگتری برخوردار‏ می باشند‏. این عمل ‏منجر به کاهش در مجموع ‏مربعات خطای لحظه ای ‏ ‏می گردد و اگر در این مرحله‏، نرونهای ‏به حد اشباع‏ رسیده تغییری در وضعیت‏ تحریکشان‏ رخ ندهد‏، شبکه برای مدتی طولانی‏ از یک شکل هموار منحنی خطا‏ برخوردار خواهدبود‏.
‏بهبود ‏الگوریتم استاندارد پس انتشار ‏خطا‏ (SBP‏)‏
‏- ‏الگوریتم BP‏ از نوع دسته ای‏۱‏ (BBP‏)
‏الگوریتم استاندارد BP‏، بر اساس فرم ‏الگو به الگو است‏، ب‏دین ترتیب که پارامترهای شبکه‏ پس از ارائه هریک از الگوهای ‏یادگیری که عموماً بطور تصادفی انتخاب می شوند‏،‏ ‏تنظیم می گردند‏، اما در الگوریتم BBP‏، ‏تنظیم پارامترهای شبکه‏ پس از اعمال ‏تمامی ورودی ها صورت می پذیرد‏. پردازش دسته ای موجب می شود ‏که گرادیانهای محلی به گرادیان‏ محلی واقعی ‏نزدیکتر باشند‏ و نهایتاً الگوریتم‏ BP‏ به الگوریتم بیشترین‏ نزول نزدیکتر گردد‏ که این خود موجب ‏می شود همگرایی الگوریتم BP‏ افزایش یابد‏.
‏در شکل زیر مسئله‏ XOR‏ با متد الگوریتم‏ BP‏ به فرم دسته ای پیاده‏ شده است‏. به راحتی می توان‏ دید که الگوریتم BBP‏ از سرعت همگرایی بالاتری به الگوریتم‏ SBP‏ برخوردار است‏.

‏شکل (۲). رفتار شبکه با الگوریتم BBP‏ در مسأله XOR‏ (‏ ‏ـــ‏ ‏)
‏رفتار شبکه با الگوریتم SBP‏ (۰ـــ)
_________________________________
۱. Batching Back-Propagation Algorithm
‏- روش ممنتم ‏۱‏ برای الگوریتم BP‏ (MBP‏)
‏همانطور که مشاهده شد، اگر نرخ یادگیری ‏α‏، ‏کوچک انتخاب شود‏، متد BP‏ که در واقع همان تقریب الگوریتم‏ SD‏ است، بسیار کند ‏ ‏می گردد. و اگر ‏α‏، ‏بزرگتر انتخاب شود‏، شبکه نوسانی خواهد بود‏.
‏یک راه ساده و مؤثر که عموماً جهت‏ افزایش و بهبود‏ نرخ یادگیری، استفاده‏ می شود-‏ جایی که خطر ناپایداری و نوسانی شدن‏ شبکه جلوگیری می گردد‏- افزودن یک جمله ‏ممنتم‏ در الگوریتم تقریبی SD‏ می باشد، یعنی ‏به هر پارامتر ‏از شبکه MLP‏، یک مقدار اینرسی ‏یا اندازه حرکت‏ اضافه می شود‏ تا اینکه پارامتر مورد نظر‏ در مسیری تمایل به تغییر داشته باشد‏ که کاهش تابع انرژی‏ احساس شود‏.

 

دانلود فایل

 

0
افکار شما را دوست داریم، لطفا نظر دهید.x