Presentation is loading. Please wait.

Presentation is loading. Please wait.

کار برد شبکه های عصبی در پردازش سریهای زمانی

Similar presentations


Presentation on theme: "کار برد شبکه های عصبی در پردازش سریهای زمانی"— Presentation transcript:

1 کار برد شبکه های عصبی در پردازش سریهای زمانی
فیروزمنش ، کیایی جهت طرح سوالات:

2 میانگین متحرک در آمار میانگین متحرک یکی از تکنیکهای مورد استفاده جهت تحلیل سریهای زمانی می باشد. این تکنیک جهت کم رنگ کردن نوسانات کوتاه مدت سری زمانی و نمایان کردن رفتار بلند مدت تر سری زمانی استفاده می شود. از لحاظ ریاضی میانگین متحرک مثالی از یک کانولوشن می باشد و از دیدگاه پردازش سیگنال به عنوان یک فیلتر قابل به کار گیری است. (در ادامه این موضوع را با جزئیات بیشتر بررسی می کنیم)

3 میانگین متحرک وزندار میانگین متحرک وزندار را می توان به صورت یک فیلتر گسسته در زمان به شکل زیر نمایش داد: بنا بر این پاسخ ضربه برابر خواهد بود با :

4 پاسخ فرکانسی پاسخ فرکانسی برابر خواهد بود با :
در ادامه نمودار به لگاریتم دامنه این فیلتر را به ازای برخی مقادیر b مشاهده می کنیم.

5

6

7 اثر فیلتر پایین گذر میانگین متحرک بر شاخص هفتگی بازار سهام داو جونز در یک دوره 10 ساله
الف)شاخص هفتگی ب) میانگین متحرک 51 روزه اعمال شده به الف ج) میانگین متحرک 201 روزه

8 مدلهایی برای سریهای زمانی
جهت پردازش سریهای زمانی لازم است که مدلی از این سریها داشته باشیم تا بتوانیم عملیاتی چون پیش بینی آینده سری و یا دسته بندی آن را بر اساس آن مدل انجام دهیم. در اینجا به معرفی سه مدل رایج برای این منظور می پردازیم: مدل Auto-regressive (AR) مدل Moving Average (MA) مدل ARMA که ترکیب دو مدل بالاست.

9 Auto-regressive Model
در این مدل فرض می شود مقدار کنونی سری را می توان به صورت تابعی (خطی یا غیر خطی ) از پنجره ای از مقادیر گذشته سری به دست آورد: یا

10 Auto-regressive Model
مدل خطی دارای دو محدودیت مهم است : اولا مستلزم فرض وجود رابطه حطی بین عناصر پیشین سری می باشند و ثانیا فرض می کنند سری Stationary می باشد. در مقابل با استفاده از مدل غیر خطی می توان تخمین دقیقتری از ویزگیهای سری زمانی مورد نظر به دست آورد. البته در صورت استفاده از مدل غیر خطی نیاز به نمونه های بیشتری در مرحله آموزش می باشد .

11 Moving Average می توان فرض کرد مقدار سری زمانی در یک مرحله را به صورت یک میانگین متحرک از نویزهای مراحل قبل قابل محاسبه است ، یعنی

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

13 ARMA Model همچنین می توان دو مدل قبلی را ترکیب کرده و مقدار سری در یک نقطه را بر اساس تابعی از مقادیر و نویزهای مراحل قبل بیان کرد ، یعنی

14 شبکه های عصبی جهت پردازش سریهای زمانی
در این قسمت به بررسی برخی از مهمترین انواع شبکه های عصبی مورد استفاده جهت سریهای زمانی می پردازیم : Multi Layer Perceptron Jordan Network Elman Netwrok Multi Recurrent Network Radial Basis Function Network

15 Multi Layer Perceptron

16 تابع نرونها می تواند انواع توابع Sigmoid باشد.
عملکرد این شبکه بر مبنای مدل Auto-Regressive می باشد. در زمینه آموزش شبکه های چند لایه در جلسات آینده به طور کامل بحث خواهد شد.

17 Jordan Network این شبکه از مدل ARMA جهت مدلسازی سریهای زمانی استفاده می کند. در این شبکه از لایه خروجی به لایه ای به نام Context (که هم سطح با لایه ورودی است) ، feedback وجود دارد. تابع فعالیت نرونهای می توان از انواع توابع Sigmoid باشد.

18 یک شبکه دارای Feed Back از لایه خروجی به لایه Context که بر مبنای مدل ARMA عمل می کند.

19 شبکه جردن در واقع تعمیمی از شبکه فوق به اضافه وجود Self recurrent loop در لایه Context می باشد.

20 Elman Network می توان یک سری زمانی را به صورت حاصل ضرب یک ماتریس در یک بردار حالت وابسته زمان مدل کرد. یعنی : که در آن

21 این مدل بر مبنای ARMA[1,1] می باشد
با فرض اینکه بردارهای وضعیت به مقدار قبلی سری نیز وابسته است ، و در نظر نگرفتن نویز، به معادله ای خواهیم رسید که بیانگر رفتار پایه شیکه Elman می باشد.

22 Elman Network

23 تابع Sigmoid مورد استفاده در لایه میانی شبکه های Elman به شکل 1/(1+exp(-ai)) می باشد. بنابراین بردار حالت به فضایی بین 0 و 1 با پراکندگی بیشتر در نزدیک 1 نگاشت می شود.

24 Multi Recurrent Network

25 ویژگیهای این شبکه : Feedback از هر دو لایه خروجی و میانی به ترتیب وارد لایه های Context و لایه State می شود. (در شکل کنار هم رسم شده اند) می توان از با استفاده از تأخیر زمانی لایه های طبقه ورودی (شامل لایه ورودی ، لایه Context و لایه State) را به گونه گسترش داد که امکان دسترسی به پنجره زمانی از مقادیر قبلی در هر لایه وجود داشته باشد. علاوه بر لایه State لایه Context نیز دارای Self recurrent loop می باشد.

26 با وجود آنکه این شبکه دارای پارامتر زیادی است ، در عمل این شبکه را می توان به گونه ای طراحی کرد که کارایی مناسبتری نسبت به سایر شبکه های معرفی شده داشته باشد.

27 Radial Basis Function یک تابع Radial basis تابعی حقیقی است که مقادیر آن تنها به فاصله از مبدأ وابسته است. این توابع در تخمین ، پیش بینی سریهای زمانی و کنترل مورد استفاده قرار می گیرند. در شبکه عصبی مصنوعی از این توابع می توان به عنوان تابع فعالیت نرون استفاده کرد. هر تابع مانند ρ که رابطه ( | | x | | ) ρ =(x) ρ را ارضا کند. نرم مورد استفاده معمولا فاصله اقلیدسی می باشد.

28 همچنین به غیر از مبدأ می توان فاصله را نسبت به یک نقطه دیگر در نظر گرفت.
ρ(x,c) = ρ( | | x − c | | ) در این صورت نقطه c را مرکز می نامند.

29 انواع توابع Radial Basis
برخی از انواع معمول این توابع عبارتند از: تابع گاوسی ρ(r) =exp( − βr2) for some β>0 تابع Multiquadratic: Thin Plate Spline ρ(r) =r2log(r)

30 درونیابی یک ترکیب خطی از توابع Radial Basis یعنی
را می توان جهت درونیابی هرتابع پیوسته در یک بازه ، با دقت دلخواه استفاده کرد.

31 شبکه های عصبی RBF به طور معمول شبکه های عصبی RBF از سه لایه تشکیل می شوند: لایه ورودی ، یک لایه پنهان که نرونهای آن دارای تابع RBF هستند و لایه خروجی.

32 خروجی هر یک نرونهای لایه آخر را می توان به شکل کلی زیر نمایش داد.
که در آن x بردار ورودی ، N تعداد نرونها در لایه پنهان ، ci بردار مرکز تابع RBF در هر یک از نرونهای لایه پنهان و ai وزنهای ورودی به نرون لایه خروجی می باشند.

33 نکته : بعد بردار C هر نرون با بعد بردار X برابر است. بنا براین :
که در آن k تعداد نرونهای لایه ورودی است.

34 آموزش در یک شبکه RBF سه پارامتر را جهت تطبیق شبکه با کاربرد مورد نظر می توان تنظیم کرد. بردار های مرکز تابع RBF ، وزنهای لایه خروجی wi و پارامتر وزن تابع RBF یعنی βi . در برخی موارد ، استفاده از یک تابع هدف ایده مناسبی است. در این موارد در مرحله آموزش بر اساس تأثیر تغییر هر یک از پارامتر ها بر تابع هدف نسبت به کاهش یا افزایش آن پارامتر در هر مرحله اقدام می شود.

35 Least Square Function که درآن
کمینه کردن تابع Least Squares از طریق تغییر متناسب وزنها در هر مرحله از فازآموزش صورت می گیرد .

36 آموزش مراکز توابع Basis
مراکز توابع Basis را می توان به طور تصادفی از مقادیر ممکن برای ورودی نمونه برداری کرد . همچنین می توان پس از خوشه بندی (Cluster) نمونه ها میاینگین هر نمونه به عنوان مرکز تابع انتخاب کرد.

37 آموزش وزنهای لایه خروجی
یکی از روشهای آموزش وزنهای لایه خروجی الگوریتم Gradient Descent است. در این الگوریتم وزنها در هر مرحله با انتقال در خلاف جهت گرادیان تابع هدف تصحیح می شوند.یعنی : که در آن ν ”ضریب یادگیری“ می باشد.

38 RBFN از شبکه عصبی RBF نیز می توان جهت پیش بینی سریهای زمانی استفاده کرد. توضیحات مربوط به این شبکه در صفحات قبل ارائه شد. معادله عملکرد این شبکه به شکل زیر است: که در آن V ها بردارهای مرکز RBF نرونهای لایه میانی و w ها وزنهای لایه آخر می باشند.

39 RBFN


Download ppt "کار برد شبکه های عصبی در پردازش سریهای زمانی"

Similar presentations


Ads by Google