شبکه های پرسپترون چند لایه
شکل (۲-۷) شمای شبکه پرسپترون سه لایه را نشان می دهد . همان گونه که در شکل (۲-۷) ملاحظه می شود هر نرون در هر لایه ، به تمامی نرونهای لایه قبل متصل می باشد . به چنین شبکه هایی ، شبکه های کاملاً مرتبط می گویند .شبکه فوق ، عملاً از به هم پیوستن سه شبکه پرسپترون تک لایه ایجاد شده است . یک لایه خروجی و دو قسمت دیگر لایه های میانی نامیده می شوند . خروجی های لایه اول ، بردار ورودی لایه دوم را تشکیل می دهند و به همین ترتیب بردار خروجی لایه دوم ، ورودیهای لایه سوم را می سازند وخروجی های لایه سوم ، پاسخ واقعی شبکه را تشکیل می دهند . به عبارتی روشنتر ، روند جریان سیگنالی در شبکه ، در یک مسیر پیشخور صورت می گیرد ( از چپ به سمت راست از لایه ای به لایه دیگر )هر لایه می تواند از تعدادی نرونهای مختلف با توابع متفاوت برخوردار باشد : یعنی مدلهای نرونهای در لایه ها می توانند متفاوت در نظر گرفته شوند . اندیس های فوقانی مبین شماره لایه و اندیس های تحتانی مبدا ومقصد اتصال سیناپسی را مشخص می کنند، بنابراین ماتریس وزن برای لایه دوم با W نمایش داد می شود . جهت بیان ساختار یک شبکه چند لایه ، از نمایش عبارتی کوتاه زیر استفاده می کنیم:
( اینجا فقط تکه ای از متن پایان نامه درج شده است. برای خرید متن کامل فایل پایان نامه با فرمت ورد می توانید به سایت feko.ir مراجعه نمایید و کلمه کلیدی مورد نظرتان را جستجو نمایید. )
معادله ۱۸
(R- –)
جایی که R تعداد ورودیهای وS تعداد نرونها در لایهi ام می باشند .
در شبکه MLP عموماً از دو نوع سیگنال استفاده می شود که بهتر است از هم تمیز داده شوند : یک نوع سیگنالهایی هستند که در مسیر رفت حرکت می کنند ( از سمت چپ به راست شبکه ) ودسته دیگر سیگنالهایی هستند که در مسیر برگشت حرکت می کنند ( از سمت راست به چپ )، به دسته اول سیگنالهای تابعی و به دسته دوم سیگنالهای خطا گویند.دلیل این نامگذاری ایل است که سیگنالهای دسته نخست، بر اساس تابعی از ورودی های هر نرون و پارامترهای شبکه متناظرش با آن محاسبه می شوند وسیگنالهای دسته دوم به خاطر منشعب شدن از سیگنال خطا و توزیع برگشت از لایه خروجی به لایه های دیگر شبکه به سیگنالهای خطا موسوم اند ، و خلاصه اینکه سیگنال تابعی ، در مسیر رفت در شبکه از لایهای به لایه دیگر توزیع می شود وسیگنالهای خطا در مسیر برگشت در شبکه منتشر می گردند. این سیگنالها در شکل (۲-۷) نمایش داده شده اند . سیگنالهای تابعی با خطوط پر رنگ وسیگنالهای خطا با خطوط خط چین دار در شکل رسم شده اند.
هر نرون در شبکه MLP دو محاسبه انجام می دهد. در محاسبه اول سیگنال تابعی و در محاسبه دوم تخمین لحظه ای از گرادیان منحنی خطا را نسبت به پارامترهایی که ورودی نرون را به خود نرون متصل می کند، در اختیار قرار می دهد. این گرادیان جهت پخش سیگنالهای خطا در شبکه مورد نیاز می باشند .
الگوریتم پس از انتشار BP
شبکه چند لایه پیشخور همراه با علایم وفرم ساده شده اش کاملاً مورد بررسی قرار گرفت . همان گونه که قبلاً گفته شد خروجی هر لایه ، ورودی لایه بعدی می گردد با معادلات زیر که رفتار شبکه را بیان می کند:
معادله ۱۹
جایی که L تعداد لایه های شبکه را مشخص می کند و P بردار ورودی شبکه می باشد ، به عبارتی ورودی های نرونهای لایه اول را عناصر بردار p می سازند . خروجی لایه آخر بردار خروجی کل شبکه را تشکیل می دهد، یعنی اینکه پاسخ واقعی شبکه a برابر باal می باشد .
شکل ۲-۶- الگوریتم یک شبکه عصبی چند لایه پیشخور
شاخص اجرایی
الگوریتم BP برای شبکه های MLP تعمیمی از الگوریتم LMS می باشد. در اینجا نیز برای الگوریتم BP همان شاخص اجرایی که برای الگوریتم LMS به کار رفت ، مورد استفاده قرار می گیرد . این شاخص، میانگین مربعات خطا می باشد که در چارچوب یادگیری با ناظر، با زوج داده های یادگیری زیر قرار می گیرد :
معادله ۲۰
جایی که P بردار ورودی شبکه و ti خروجی ( پاسخ ) مطلوب شبکه برای ورودی pi است پس از اعمال ورودی P(K) (K امین الگو ) به شبکه ـ که یکی از pi ها می باشد ـ سیگنال خطا در خروجی نرون I ام از لایه خروجی ( لایه L) در لحظه K یا تکرار K ام ، از روی رابطه زیر به دست می آید :
معادله ۲۱
جایی که عنصر j ام از بردار جواب مطلوب متناظر با بردار ورودی p(k) می باشد.مقدار لحظه ای مربع خطا برای نرون jام ازلایه خروجی، به شکل تعریف می شود . متعاقباً مقدار لحظه ای جمع مربعات خطا ، با جمع برای تمامی نرونها در لایه خروجی به دست می آید . توجه داریم که تنها ، نرونهای لایه خروجی به عنوان نرونهای لایه خروجی به عنوان نرونهای قابل مشاهده در نظر گرفته می شوند ، بنابراین رفتار شبکه با شاخص اجرایی زیر بیان می گردد :
معادله ۲۲
جایی که تعداد نرونها در لایه L می باشد . توجه داریم که در تئوری ، شاخص اجرایی برای تنظیم پارامترهای شبکه با رابطه زیر بیان می گردد :
معادله ۲۳
درعمل نیز از شاخص اجرایی زیر:
معادله ۲۴
برای تنظیم پارامترهای شبکه استفاده می شود ، به عبارت دیگر پارامترهای شبکه ، ماتریس های وزن و برداریها بایاس، طوری تنظیم می شوند تا مجموع مربعات خطای لحظه ای (K)F مینیمم گردد . در رابطه فوق بردار خطای e برابر است با :
معادله ۲۵
این مسأله مینیمم سازی ، الگوریتم تقریبی بیشترین کاهش را ایجاد می کند .
خلاصه الگوریتم BP
در الگوریتم BP دو مسیر محاسباتی موجود است : مسیر اول ، پیشخور یا رفت ومسیر دوم پس خور یا برگشت نامیده می شود .
مسیر رفت : در این مسیر همان گونه که می بینیم پارامترهای شبکه در خلال اجرای محاسبات رفت تغییر نمی کنند و توابع محرک ، روی تک تک نرونها عمل می کند .
مسیر برگشت : در این مسیر بردارهای حساسیت از لایه آخر به لایه اول برگشت داده می شوند. به عبارت دیگر در مسیر برگشت ، شروع کار از لایه خروجی است ،جایی که بردار خطا در اختیار می باشد . سپس بردار خطا از سمت راست به چپ از لایه آخر به لایه اول توزیع می شود و گردایان محلی، نرون به نرون با الگوریتم بازگشتی محاسبه می شود . در این مسیر هم پارامترهای شبکه تغییر نخواهد کرد .
تنظیم پارامترها : نهایتاً ماتریسهای وزن و بردارهای بایاس شبکهMLP تنظیم می گردند . توجه داریم که پس از اعمال هر زوج ورودی و خروجی به عنوان الگوی یادگیری ، برداری های ورودی (الگوهای ورودی) در خلال سه مرحله فوق تغییر نمی کنند . به همین دلیل شماره مرحله تکرار K عملاً با اعمال K امین الگو به شبکه معادل است .
توقف :جهت توقف الگوریتم از دو شاخص زیر به طور همزمان می توان استفاده نمود .
الف ) میانگین مربعات خطا در هرسیکل یا جمع مربعات خطا برای تمامی الگوهای یادگیری کمتر از مقدار از پیش تعیین شده باشد و یا اینکه فرم تغییرات در پارامترهای شبکه پس از هرسیکل خیلی کوچک باشد مثلاً اگر ۱۰۰ مرحله تکرار می گردد .
ب ) نرم گرادیان خطا خیلی کوچک باشد : نرم گرایان خطا از یک مقدار از پیش تعیین شده کوچکتر گردد.
پیشینه تحقیق
الف ) تحقیقات انجام شده در خارج از ایران :
موفقیت کم نظیر شبکه های عصبی به عنوان ابزاری قدرتمند به منظور تجزیه وتحلیل داده ها در علوم تجربی ، موجب شد تا توجه اقتصاد دانان نیز به این روش مدل سازی جلب شود. ابتدا، با توجه به نیاز این مدلها به داده های زیاد ، پژوهش و مدل سازی در حوزه اقتصاد با بهره گرفتن از شبکه های عصبی در بازارهای مالی آغاز شد و در اواخر دهه ۸۰ میلادی مدل های مختلفی به منظور پیش بینی نرخ های ارز ، قیمت سهام وشاخص های مختلف بورس ساخته شد.
از جمله این کارها می توان به پژوهش وایت (وایت، ۱۹۸۸) که یک شبکه عصبی سه لایه را بر روی ۱۰۰۰ داده از قیمت سهام شرکت IBM به کار گرفت اشاره کرد . هدف وایت به جای پیش بینی، آزمون کارایی بازار بود . او نتوانست شواهدی را در مقابل نظریه ای که پیشنهاد می کند یک گام تصادفی بهترین مدل برای پیش بینی بازارهای مالی است بیابد اما، شبکه استفاده شده وایت بسیار ساده بود و همین امر موجب شد نویسندگان زیادی نتایج وی را به مجادله بگیرند و با بهره گرفتن از شبکه پیچیده تر نشان دهند که فرایند غیر خطی معنی داری در بسیاری از سرهای زمانی مالی وجود دارد . از جمله این کارها می توان به پژوهش های وانگ(۱۹۹۰)، تریپی وتوربان(۱۹۹۰)، بوزاج(۱۹۹۳)، تسیبوریس و زیدنبرگ(۱۹۹۵) ریفنس ودیگران (۱۹۹۵)، هیمسترا (۱۹۹۶) ،هافک وهلمنستن (۱۹۹۶) اشاره کرد .
موفقیت شبکه های عصبی در حوزه اقتصاد مالی ، توجه متخصصان اقتصاد کلان واقتصاد سنجی را نیز به خود جلب کرد و پژوهش در زمینه استفاده از شبکه های عصبی برای پیش بینی مدل سازی در اقتصاد کلان در دهه نود آغاز شد . اوج این پژوهش ها را می توان به دوره پس از انتشار مقاله مشهور خوان و وایت (۱۹۹۴) نسبت داد . خوان و وایت در مقاله خود بسیاری از موضوعات موازی در شبکه های عصبی و اقتصاد سنجی را استخراج کردند و از این دیدگاه مقاله آنها یک مقدمه پذیرفته شده و قطعی به حساب می آید . پیشبرد نظری خوان و وایت در سال ۱۹۹۴ با انجام یک پژوهش کاربردی در همان سال به وسیله معصومی ، ختن زاد و آبایی دنبال شد . این نویسندگان نشان دادند چهارده سری زمانی اقتصاد کلان که نلسون وپلاستر در مقاله اثر گذار خود در سال ۱۹۸۲ مورد تجزیه وتحلیل قراردادند ، به خوبی با بهره گرفتن از شبکه های عصبی قابل مدل سازی هستند . بدون این شک قوی که این سری ها از فرایند ریشه واحد پیروی می کنند .در حقیقت این موضوع با نتایج پرون (۱۹۸۹) که نشان داد یک یا دو تحول ساختاری موجب ایستایی چنین سری هایی می شوند سازگار است . در واقع ، قدرت اصلی شبکه های عصبی این است که آنها قادرند برای تحولاتی چون سقوط بازار بورس و شوک های نفتی به عنوان انحرافات معنی دار از قبول فرض خطی بودن ، مدل های بهتری بسازند ( قدیمی ومشیری ، ۱۳۸۱)
هیل و دیگران (۱۹۹۴) مجموعه ای از مقاله های تجربی و کاربردی را برای مقایسه نتایج پیش بینی شبکه های عصبی و مدل های آماری مورد بررسی قرار دادند . در مطالعات مورد بررسی آنها ، شبکه های عصبی در زمینه پیش بینی متغیرهای اقتصاد کلان، با توجه به درصد میانگین قدر مطلق خطا به خوبی مدل های آماری استاندارد و یا بهتر از آنها عمل کردند . در کاربردهای سری های زمانی ، نتایج مقاله ها پیشنهاد می کرد که شبکه های عصبی برای پیش بینی با افق زمانی طولانی نتایج بهتری را ارائه می کنند. این موضع، نویسندگان را به این تفکر واداشت که داده هایی با تکرار بیشتر دارای فرایندهای غیر خطی بیشتری هستند در هر صورت نویسندگان نتیجه گرفتند که مقاله های نگارش شده در زمینه موضوع ، هنوز غیر قطعی هستند .
مقاله کهزادی و دیگران (۱۹۹۵) یک مقدمه خوب برای شبکه های عصبی وکاربرد های آنها در اقتصاد است . این نویسندگان ضمن پیش بینی معاملات سلف ذرت ، از مقایسه یک شبکه عصبی با یک مدلARIMA با بهره گرفتن از معیارهای مختلف عملکرد پیش بینی دریافتند که خطای پیش بینی مدل شبکه عصبی بین ۱۸ تا ۴۰ درصد کمتر از مدل ARIMA است .این چشم انداز نسبی مثبت برای شبکه های عصبی به وسیله سه مطالعه دیگر که به پیش بینی تولید اقتصادی پرداخته اند تایید شده است.
کاکز (۱۹۹۳) صحت مدل های خطی وشبکه های عصبی برای پیش بینی رشد GDP واقعی کانادا را با بهره گرفتن از سری های شاخص های مالی مقایسه کردند در افق زمانی یک فصل بعد و یک سال بعد، شبکه های عصبی پیش بینی های دقیق تری از مدل های خطی ارائه کردند. براساس آزمونهای مختلف ، بهبود در دقت پیش بینی به دست آمده به وسیله شبکه های عصبی به طور کلی از نظر آماری معنی دار بودند. نویسنده نتیجه می گیرد که شبکه های عصبی می توانند فرایندهای غیر خطی در ارتباط میان رشد تولید ناخالص داخلی واقعی و شاخص های مالی را نشان دهند .
به طور مشابه فو (۱۹۹۸) دریافت که برای پیش بینی های خارج از نمونه رشد تولید ناخالص داخلی واقعی ایالات متحده ، شبکه های عصبی بهتر از مدل ها رگرسیون خطی عمل می کنند در این مطالعه شبکه های عصبی مجموع مربع پسماندهای خارج از نمونه را بین ۱۰ تا ۲۰ درصد کاهش دادند .
مودی ، لوین ورفوس (۱۹۹۳) نیز برای پیش بینی نرخ رشد شاخص ایالات متحده نتایج مشابهی به دست آوردند. در این پژوهش ، برای تمام افق های پیش بینی مورد بررسی( یک تا دوازده ماه بعد ) شبکه های عصبی آنها ، پیش بینی های دقیق تری از مدل اتورگرسیون خطی ارائه کردند .
یک مطالعه دیگر در زمینه پیش بینی نرخ تورم کانادا نیز نتایج مفیدی را برای استفاده از شبکه های عصبی به همراه داشت . مشیری وکامرون (۲۰۰۰) عملکرد شبکه های عصبی مصنوعی با سری روش های اقتصاد سنجی و سری های زمانی را برای پیش بینی نرخ تورم کانادا مقایسه کردند.در این مقاله ، آنها مدل های شبکه عصبی را با مدل های ساختاری VAR،BVAR ،ARMIA برای افق های زمانی مختلف ( یک ، سه و دوازده ماه بعد) مقایسه می کنند . معیارهای به کار گرفته شده در این پژوهش ، ریشه میانگین مربع خطاها (RMSE) و میانگین قدر مطلق خطاها(MAE) نشان دادند که شبکه های عصبی قادرند به خوبی تمام روش های اقتصادی سنجی سنتی و سریهای زمانی ، و در بعضی از موارد بهتر از آنها نرخ تورم کانادا را پیش بینی کنند .
در مطالعه دیگری درباره تورم کانادا مشیری و دیگران (۱۹۹۹) ، ضمن مقایسه نتایج شبکه های عصبی با مدل های سری های زمانی واقتصادی سنجی ، عملکرد شبکه های عصبی مرسوم به پس انتشار خطا ( منظور شبکه های است که از الگوریتم پس از انتشار خطا برای تخمین استفاده می کنند )را با شبکه های عصبی بازگشتی وشبکه های RBF مقایسه می کنند . در این پژوهش نیز آنها برای مقایسه نتایج از دو معیار ریشه میانگین مربع خطاها (RMSE) و میانگین قدر مطلق خطاها (MAE) استفاده می کنند و مدل های مختلف شبکه های عصبی را با یک مدل اقتصاد سنجی ساختاری یک مدل برای پیش بینی نرخ تورم کانادا در سه افق زمانی مقایسه می کنند . مطالعه مشیری و دیگران نشان داد که در پیش بینی های ایستا مدل های شبکه های عصبی مرسوم ( پس انتشار خطا ) نتایجی هم سطح و یا بهتر از دیگر شبکه ها و مدل های اقتصادی سنجی دارند اما برای پیش بینی پویا ، شبکه های عصبی پس انتشار خطا به طور کلی عملکردی بهتر از مدل اقتصاد سنجی ساختاری ارائه کردند ، اما نسبت به مدل VAR به جز برای افق زمانی سه ماه بعد نتایج بهتری را ارائه می کنند.
مقایسه شبکه های عصبی پس انتشار با شبکه هایRBF نیز نشان داد که برای افق های زمانی کوتاه ( یک وسه ماه بعد ) عملکرد شبکه های پس انتشار خطا بهتر است ، اما برای افق های زمانی یک سال بعد شبکه های RBFنتایج بهتری به همراه دارند .
در حوزه بازارهای مالی ، نیز چندین مطالعه با نتایج مطلوب با بهره گرفتن از شبکه های عصبی انجام شده است . ورکویجن (۱۹۹۶) دقت مدلهای مختلف برای پیش بینی نرخ مبادله دلار آمریکا به مارک آلمان در افق های زمانی ۱ تا ۳۶ ماه بعد را با یکدیگر مقایسه می کند . برای پیش بینی خارج از نمونه ، مدل های شبکه عصبی اندکی دقیق تر از مدل رگرسیون خطی وپیش بینی گام تصادفی، به ویژه در افق های زمانی طولانی تر بودند عملکرد شبکه های عصبی حتی برای پیش بینی جهت تغییرات نرخ ارز نیز از سایر مدل ها بهتر بود .
در مطالعه دیگر ، رفنس ، زاپرانیس وفرانسیس (۱۹۹۴) دقت یک شبکه عصبی پیش خور و یک مدل رگرسیون خطی را برای پیش بینی عملکرد سهام در چارچوب نظریه قیمت گذاری آربیتراژ مقایسه می کنند نتایج نشان دادند که برای پیش بینی های داخل وخارج از نمونه ، شبکه های عصبی دقیق تر هستند .
با وجود آنکه استفاده از شبکه های عصبی در مسایل مالی و به ویژه در بازار بورس از قدمت بسیار زیادی برخوردار نیست ولی مطالعات متعدد و وسیعی در این زمینه صورت گرفته است .