بخشی از مقاله

چکیده - در سال های اخیر تلاش های بسیاری برای پیشگویی بورس و بازار سهام صورت گرفته است. در بسیاری از روش های ارائه شده در این زمینه از مدل های مختلف شبکه های عصبی استفاده شده است. نشان داده شده است که شبکه های عصبی چند شاخه، قدرت تعمیم و نمایش بهتری نسبت به شبکه های عصبی استاندارد دارند. در این مقاله پیشگویی کمینه و بیشینه قیمت روزانه دو سهام 500S&P و IBM به کمک شبکه های عصبی چند لایه پرسپترون و شبکه های عصبی چند شاخه انجام شده است. همچنین تاثیر حجم معاملات بر روی پیشگویی، مورد بررسی قرار گرفته است، نتایج نشان می دهد که حجم معاملات نه تنها تاثیر مفیدی بر روی پیشگویی ندارد، بلکه در صورت حذف این ویژگی از ورودی ها پیشگویی دقیق تری به دست خواهد آمد.

-1 مقدمه

یک نرون سلولی در مغز است که وظیفه اصلی آن جمع آوری، پردازش و پخش سیگنال های الکتریکی است. پردازش اطلاعات مغز توسط شبکه ای از این نرون ها انجام می گیرد. به این علت، در کار های اخیر هوش مصنوعی تلاش کرده اند که شبیه سازی از شبکه های عصبی انجام دهند. بعضی از پیش زمینه های شبکه های عصبی را می توان به اوایل قرن بیستم و اواخر قرن نوزدهم برگرداند. در این دوره، کارهای اساسی در فیزیک، روانشناسی و نروفیزیولوژی1 توسط دانشمندانی چون هرمان فون هلمهلتز 2، ارنست ماخ3 وایوان پاولف4صورت پذیرفت. این کارهای اولیه عموماً بر تئوری های کلی یادگیری، بینایی و شرطی تاکید داشته اند و اصلاً به مدل های مشخص ریاضی، عملکرد نرون ها اشاره ای نداشته اند.

دیدگاه جدید شبکه های عصبی در دهه چهل قرن بیستم آغاز شد زمانی که مک کلوث5 و والترپیتز6 نشان دادند که شبکه های عصبی می توانند هر تابع حسابی و منطقی را محاسبه نمایند. کار این افراد را می توان نقطه شروع حوزه علمی شبکه های عصبی مصنوعی نامید. نخستین کاربرد شبکه های عصبی در اواخر دهه پنجاه قرن بیستم مطرح شد، زمانی که فرانک روزنبلات7 در سال 1958 شبکه پرسپترون8 را معرفی نمود.

روزنبلات و همکارانش شبکه ای ساختند که قادر بود الگو ها را از هم شناسایی نماید. ولی شبکه پرسپترون دارای این محدودیت بود که توانایی طبقه بندی الگوهایی را داشت که به طور خطی از هم متمایز می شدند. تا این که کلید توسعه شبکه های عصبی در دهه هشتاد توسط دیوید راملهارت9 و جیمز مکلند10 مطرح شد که همان الگوریتم پس انتشار خطا11 بود که با بروز این ایده شبکه های عصبی متحول شدند. امروزه شبکه های عصبی در بسیاری کاربرد ها مورد استفاده قرار گرفته اند. اما با این وجود حل بسیاری از مسائل پیچیده به وسیله شبکه های عصبی سخت به نظر می رسد و آن، به علت نیاز به شبکه هایی با اندازه بزرگ می باشد.

با این وجود شبکه های عصبی مصنوعی می توانند سیستم های غیر خطی پیچیده را با استفاده از یادگیری نمونه های داده که ارتباط ورودی وخروجی را توصیف می کنند، مدل نمایند. شبکه های عصبی مصنوعی می توانند برای حل مسائل مختلف و از جمله پیشگویی سری های زمانی12مورد استفاده قرار گیرند. اگر چه پیشگویی بازار سهام13 یک وظیفه پیچیده است، تعداد زیادی از تحقیقات [6] [5] [4] [3] [2] [1] در این زمینه انجام شده است.در [3] [2] [1] از شبکه عصبی چند لایه پرسپترون با یادگیری پس انتشار خطا سعی در پیشگویی بازار سهام داشته اند.

در [4] از شبکه های RBF برای پیشگویی ماهیانه شاخص سهام استفاده کرده اند و نتایج را با شبکه های MLP مقایسه نموده و ادعا کرده اند که این شبکه ها مناسب تر بوده و تا هشتاد درصد صحیح پیشگویی می کنند. در [5] از شبکه های عصبی فازی برای پیشگویی سهام شانگهای استفاده شده است. در [6] به منظور پیشگویی از شبکه های هاپفیلد14 استفاده شده است که در آن از نتایج قبلی به همراه داده های ورودی برای پیشگویی استفاده می شود و بر روی پنج سهام مختلف تست شده است. در [7] شبکه های عصبی چند شاخه15، به عنوان شکل جدیدی از شبکه های عصبی معرفی شده اند و در [8] روشی به منظور پیشگویی بازار سهام با استفاده از این شبکه ها ارائه شده است.

در این مقاله از یک الگوریتم ترکیبی - الگوریتم های ژنتیکی همراه با شبکه های عصبی مصنوعی - برای پیشگویی استفاده شده است و این به آن علت است که شبکه های عصبی معمولی نمی توانند تعدادی از خواسته های ما را در پیشگویی بازار سهام برآورده سازند. در این مقاله شبکه های عصبی چند شاخه به منظور پیشگویی S&P 500 مورداستفاده قرار گرفته اند. شبکه های عصبی چند شاخه با استفاده از چندین شاخه بین نودهای شبکه ساخته می شوند که توابع غیر خطی را به شاخه های شبکه اضافه می کنند. یکی از فواید شبکه های عصبی چند شاخه این است که شبکه هایی با اندازه کوچکتر و و تعداد کمتری از نودهای مخفی به دست می آید.

نشان داده شده است که شبکه های عصبی چند شاخه قابلیت تعمیم16 و نمایش17 بالاتری نسبت به شبکه های عصبی معمولی18 دارند[8]، حتی اگر شمار نودهای مخفی کاهش یابد. بنابراین شبکه های عصبی چند شاخه به نظر می رسد مسائل دنیای امروز مثل پیشگویی بازار سهام مناسب تر باشند. مفهوم پایه ساختار چند شاخه ای از ULN19 می آید. ULN یک چهاچوب کلی برای همه انواع ساختارهای شبکه های عصبی با یادگیری با معلم20 را فراهم می کند .

[9] در شبکه های عصبی چند لایه بعضی از نودها با تعداد شاخه های دلخواه به یکدیگر متصل می شوند. در این مقاله ابتدا شبکه های عصبی چند شاخه همراه با پارامترهای یادگیزری و تابع خطا و روش به روزرسانی پارامترهای شبکه معرفی شده است. در بخش شبکه ای به منظور پیشگویی بازار سهام همراه طراحی شده است که در بخش بعد ازآن شبکه طراحی شده با دو سهام S&P 500 و IBM تست شده است و در نهایت راهکارهایی برای بالا بردن بازدهی شبکه ارائه شده است.

-2 روش ساختار شبکه های عصبی چند شاخه

در شبکه های عصبی معمولی یک ساختار تک شاخه ای برای اتصال بین نودها تعریف شده است که هر شاخه یک پارامتر وزن دارد. گسترش این ایده یک ساختار چند شاخه ای بین نودها است. شبکه های عصبی معمولی می توانند به منظور به دست آوردن بازدهی بالاتر تعداد نودهای شبکه را افزایش دهند. به هر حال یک شمار بزرگتری از نودها منجر به هزینه بالاتری در فضا و زمان برای آموزش شبکه به خصوص در الگوریتم پس انتشار خطا می شوند.

برای شبکه های عصبی اغلب علاقه مندیم که هزینه زمان و فضا را کاهش دهیم. یکی از ویژگی های شبکه های عصبی چند شاخه این است که افزایش تعداد شاخه ها به منظور به دست آوردن بازدهی بالاتر، هزینه کمتری نسبت به افزایش تعداد نودها دارد. بنابراین آن پذیرفته شده است که شبکه های عصبی فشرده می توانند با کمک شبکه های عصبی چند شاخه ساخته شوند. معادله - 1 - پردازش معمولی شاخه هایی که به نود j متصل هستند را نشان می دهد. aj در معادله ورودی به نود j است.

-3 مدلی برای پیشگویی

یکی از مسائل مهم در کاربرد های شبکه های عصبی تولید داده های مناسب برای آموزش و تست شبکه می باشد. در پیشگویی بازار سهام داده های مختلفی می توانند به عنوان ورودی و خروجی شبکه انتخاب شوند. در این مقاله هدف پیشگویی قیمت بیشینه و کمینه هر ماه می باشد. برای این منظور شبکه ای طراحی شده است که خروجی آن مقادیر بیشینه و کمینه روزانه می باشد و در نهایت از مقادیر روزانه قیمت های بیشینه وکمینه هر ماه محاسبه می شود.

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید