فراگیری شبکه در نرون های ساده
اتصال بین نرون ها منتج به ایجاد شبکههایی میشود لیکن برای انجام هر کار مفید باید بتوان به طریقی آن را آموزش داد . در آموزش نرون ، اصل بر این است که به نرون اجازه دهیم از اشتباهات خود بیاموزد . اگر جواب همراه با خطا باشد میخواهیم احتمال خطا را در آینده کم کنیم و اگر جواب صحیح باشد وضع را تغییر نمیدهیم . برای فراگیری شبکه باید زمانی که مایلیم نرون فعال باشد ضرایب وزنی را افزایش داده و آنگاهکه مایلیم نرون غیرفعال باشد ضرایب را کاهش دهیم . این قاعده فراگیری است که شکل دیگری از قاعدهای میباشد که در سال ۱۹۴۷ توسط دونالدهب ارائهشده است . در این عمل نتایج موردنظر را از قبل میدانیم و بنابراین مشاهده میکنیم که به کدام سمت باید ضرایب وزنی را تغییر دهیم . زیرا این فراگیری از طریق در دست داشتن نتایج مطلوب راهنمایی میگردد به این نوع آموزش فراگیری با سرپرست یا معلم میگویند .
شیوه یادگیری به شرح ذیل میباشد:
ضرایب وزنی و مقادیر آستانه را بهطور تصادفی تعیین مینماییم
یک ورودی را بهدلخواه ارائه مینماییم
مقدار خروجی را با توجه به مقایسه مجموع وزنی ورودیها و مقدار آستانه محاسبه مینمایم .
ضرایب وزنی را برای تقویت تصمیمات درست و تضعیف تصمیمات نادرست تغییر میدهیم بهعبارتدیگر خطا را کاهش میدهیم .
ورودی بعدی را به مدل ارائه مینماییم .
قاعده فراگیری
قاعده فراگیری پرسپترون چندلایه را قاعده کلی دلتا یا قاعده پس از انتشار خطا مینامند . وقتی به شبکه آموزش ندیدهای الگویی را عرضه میکنیم ، خروجیهای تصادفی تولید میکند . ابتدا باید تابع خطایی را مشخص کنیم که تفاوت خروجی واقعی و خروجی مطلوب را نشان دهد . زیرا خروجی مطلوب را نمیدانیم ، این نوع فراگیری را فراگیری با سرپرست مینامیم . برای موفق شدن در آموزش شبکه باید خروجی آن را بهتدریج به خروجی مطلوب نزدیک کنیم بهعبارتدیگر باید ضرایب وزنی خطوط ارتباطی واحدها با بهره گرفتن از قاعده کلی دلتا میزان شود . قاعده دلتا مقدار تابع خطا را محاسبه کرده و آن را به عقب از یکلایه به لایه پیشین آن انتشار میدهد ، عبارت پس از انتشار بهاینعلت نامگذاری شده است .
ضرایب وزنی هر واحد جداگانه تنظیم میشود و بدینصورت میزان خطا کاهش مییابد این عمل در مورد لایه میانی چندان روشن نیست . این گمان میرود که ضرایب وزنی واحدهای پنهان که به واحدهای مرتبط آنها ، خروجی تقریباً صحیحی دارند تغییر یابد . درواقع ریاضیات نشان میدهد که ضرایب واحدها باید بهتناسب میزان خطای واحدهای که به آن متصلاند تغییر کند .بنابراین میتوان با انتشار خطابه عقب ، ضرایب وزنی خطوط ارتباطی تمام لایهها را بهدرستی تنظیم کرد . بهاینترتیب تابع خطا کاهش و شبکه آموزش مییابد (صادقی ، ۱۳۹۰)
پیشبینی با بهره گرفتن از شبکه عصبی
شبکهها عصبی دارای مدلها و الگوریتمهای یادگیری مختلفی میباشند که یکی از پرکاربردترین آنها شبکههای عصبی چندلایه پیشخور و الگوریتم یادگیری پس از انتشار خطا میباشد که به همین دلیل کارایی این مدل در پیشبینی و شناسایی الگو در این بخش این مدل به همراه الگوریتم یادگیری آن توضیح داده میشود .
شبکه عصبی چندلایه پیشخور و الگوریتم یادگیری پس از انتشار خطا
معماری این شبکه عصبی دارای سه جزء متفاوت به شرح زیر میباشد:
لایه ورودی: لایهای که در آن الگوهای ورودی بکار میرود .
لایه خروجی: لایهای که از آن پاسخ خروجی دریافت میشود .
لایه پنهان: این نوع شبکه حداقل دارای یکلایه پنهان میباشد که خروجیهای آن کاملاً قابل رویت نیست .
در شکل شماره ۲-۸ ساختار این نوع شبکه نمایش دادهشده است . دایرهها نشانگر نرون ها و جهتنماها نشانگر مسیرهای ارتباطی بین آنها است . همچنین هر جهتنما به همراه وزنها سیناپسی میباشد .
شکل شماره ۲- ۸: شبکه عصبی چندلایه پیشخور( اس وی کارتالوپس، منطق فازی و شبکههای عصبی ، صفحه ۸۶٫)
هر نرون خروجیهایش را بر مبنای میزان تحرک ورودی دریافت شده محاسبه می کند . برای یک الگوی ورودی شبکه یک خروجی (یا مجموعهای از مجموعهها) ایجاد میکند . سپس این شبکه بر اساس الگوریتم یادگیری خود این خروجی با مقدار مطلوب آن شبکه مقایسه میشود . برای مسائل طبقهبندی مقدار مطلوب صفر و یک میباشد درحالیکه برای مسائل پیشبینی این مقدار پیوسته است . وزنهای شبکه برای صحیح شدن یا کاهش خطا اصلاح میشوند و الگوی بعدی نمایان میشود . اصلاح وزنها بهطور مداوم در این روال تا زمانی که کل خطاها از سطح تلورانس از پیش تعیینشده کمتر شود ادامه مییابد . این الگوریتم به یادگیری پس از انتشار خطا معروف است . (کارتالوپس و ورباس ۱۹۷۴، لی چن ۱۹۸۵، پارکز ۱۹۸۵) . دلیل اینکه تأثیر این بهروزرسانی ورودیها بهصورت تدریجی مجذور میانگین خطا را به حداقل میرساند این است که تمامی الگوهای ورودی ، متکی بر این حقیقتاند که الگوریتم یادگیری پس از انتشار خطا گرادیان نزولی در تابع دارد .الگوریتم پس از انتشار توسط “پال ورباس” در سال ۱۹۷۴ ارائه شد و بعدها توسط رامل هارت بهطور مستقل کشف گردید . این الگوریتم از زمان پیدایش بهطور گسترده یک الگوریتم آموزش در شبکههای عصبی پیشخور مورداستفاده قرارگرفته است . الگوریتم پس از انتشار خطابه شبکه عصبی چندلایه پنهان اعمالشده است. بر اساس این الگوریتم ، شبکه، برنامه و طرح ارتباطی توزیع یافته بین لایههای خروجی و ورودی را یاد میگیرد . آنچه این مدل را از مدلهای دیگر مجزا میسازد فرآیندی است که بهوسیله آن وزنها در طول فاز آموزش شبکه محاسبه میشود عموماً مشکل در شبکه چندلایه محاسبه مؤثر وزنها در لایههای پنهانی است بهطوریکه خطای خروجی به حداقل برسد . هرقدر تعداد لایههای پنهان بیشتر باشد مشکلات بیشتر خواهد بود زیرا برای تنظیم وزنها باید خطا را محاسبه نماییم . در لایه خروجی این خطا بهآسانی قابلمحاسبه است و آنهم از تفاوت بین خروجیهای واقعی و خروجیهای مطلوب تعیین میشود اما در لایه پنهانی مشاهده مستقیم خطا غیرممکن است درنتیجه تکنیکهای دیگر برای محاسبه خطا در لایههای پنهانی لازم است تا خروجی را به حداقل برساند که هدف نهایی همان میباشد.
الگوریتم آموزش پس از انتشار یک ابزار ریاضی است که در آن ، اجرای معادلات آموزش بر اساس فرآیندهای تکراری است و بنابراین به سهولت بر روی رایانهها قابلاجرا است . در طول فاز آموزش شبکه ، یک جفت از الگوهای(T,K) به شبکه ارائه خواهد شد که در اینجا K یک الگوی ورودی و T یک خروجی مطلوب است و الگوی X در نرون هر لایه ، یک خروجی ایجاد میکند و نهایتاً در لایه خروجی ، خروجی واقعی O را تولید می کند و در لایه خروجی ، تفاوت بین خروجی مطلوب و واقعی ، یک سیگنال خطا را به وجود میآورد . این سیگنال خطا وابسته به وزنهای نرون های هر لایه است . این خطابه کمترین حد خود میرسد و در طول این فرایند، مقادیر جدیدی برای وزنها ایجاد میشود . سرعت و دقت فرایند آموزش(فرایند تنظیم نمودن وزنها) وابسته به یک عامل است که ضریب یادگیری نامیده میشود(بختیاری،ماری، ۱۳۸۵)
قبل از شروع فرایند آموزش پس از انتشار به موارد ذیل نیاز است:
گروهی از الگوهای آموزشی ، ورودیها و خروجیهای مطلوب
مقداری برای ضریب یادگیری
معیاری که بهوسیله آن آموزش پایان داده شود
روشی برای تنظیم وزنها
تابع غیرخطی (معمولاً سیگموید)
مقادیر اولیه وزنها (مقادیر تصادفی کوچک)
منطق فازی
در بسیاری از شرایط، دادههای دقیق برای الگوسازی مسائل زندگی واقعی کافی نیستند؛ زیرا قضاوتهای انسان و ترجیحات او در بسیاری از شرایط مبهم است و نمیتوان آنها را با اعداد دقیق تخمین زد. برای حل این مشکل نظریهی فازی برای اولین بار توسط لطفی زاده، مطرح شد که برای تصمیمگیری در مورد دادههای غیرقطعی و غیردقیق مناسب بود. چراکه روشهای علم مدیریت کلاسیک برگرفته از ریاضیات دو ارزشی و چند ارزشی بودند که خواهان دادههای کمی و دقیق هستند . (آذر و فرجی، ۱۳۸۷)
بهطور خلاصه در منطقهای قطعی از قبیل باینری ارزش متغیرها بهصورت درست یا غلط ، سیاهوسفید و صفر و یک میباشد ، تعمیم منطق باینری را میتوان بهصورت منطق چند مقداره معرفی نمود که متغیرها مقادیر متعددی را اختیار میکنند و بهبیاندیگر ،منطق نسبی بهصورت جملات نامعین تعریف میشوند . حال منطق تعمیمیافتهای را تصور کنید که نه فقط شامل مقادیر قطعی (۰ ، ۱) باشد ، بلکه مقادیر ممکن بین صفر و یک را نیز شامل شود . بعلاوه در این منطق ، در بازه واقعی در مجموعه (۰ ، ۱) ، برای هر ورودی یک مقدار درجه فازی تعریف میشود و میتوان گفت که مقدار هر ورودی ، فازی است .همچنین به منطقی که از مقادیر ورودی فازی ، خروجیهای قطعی را استنتاج کند منطق فازی میگویند
تابع عضویت
برای هر متغیر ، رابطهای برای بیان صحت آن متغیر تعریف میشود . بهعنوانمثال ، مفهوم “کوچک” را میتوان بهصورت یک توزیع نزدیک به یک متغیرx تعریف نمود و مابعد هر مقدار در محدود این توزیع ، دربرگیرنده مفهوم “کوچک” است . اگرچه همراه با درجههای مختلفی از صحت و اعتماد باشد .ازنظر تئوریک ، یک مجموع فازی F از یک مجموعه مرجع{X={x بهصورت یک نگاشت تعریف میشود که در این نگاشت ، به ازای هر X یک عدد در محدوده[۰,a] تخصیص داده میشود و بیانگر مقداری است که اختصاص داشتن x را به مجموعه F نشان میدهد . بنابراین اگر x تعداد وسایل نقلیه در یک ردیف از وسایل باشد و از طرف دیگر بخواهیم مفهوم “کوچک” را بهصورت یک مقدار اختصاصی از متغیر فازی “ردیف وسایل نقلیه” تخصیص دهیم ، آنگاه هر x (با مجموعه مقادیری در محدوده صفرتا بینهایت) با مقدار عضویت مشخص میشود . این مقدار نشاندهنده حدی است که متغیر x را میتوان ” کوچک” در نظر گرفت . مجموعه را یک تابع عضویت مینامند.
درصورتیکه تابع عضویت نرمال باشد (بهعبارتدیگر a=1) آنگاه تابع عضویت به شکل خواهد بود و در این حالت منطق فازی را نرمال میگویند .از این به بعد ، فقط منطق فازی نرمال ، مدنظر خواهد بود . در بدترین حالت که توزیع با دامنه ” صفر” باشد ، تابع عضویت به یک تابع عضویت یکتا(منحصر فرد) خلاصه میشود . بهعبارتدیگر ، منطق فازی تبدیل به منطق قطعی خواهد شد . اگر یکتا بودن بهصورت در حال ممکن باشد ، منطق باینری را خواهیم داشت .