11 روش کلاسیک پیش بینی سری زمانی در پایتون - بخش دوم
از روش های یادگیری ماشین می توان برای طبقه بندی و پیش بینی مسائل سری زمانی استفاده کرد. قبل از کاوش در روشهای یادگیری ماشین برای سری های زمانی، بهتر است اطمینان حاصل کنید که آموزش روشهای پیش بینی سری زمانی خطی کلاسیک را به اتمام رسانده اید. روش های کلاسیک پیش بینی سری زمانی ممکن است بر روی روابط خطی متمرکز شده باشند، با این وجود، این روش ها پیچیده هستند و در طیف گسترده ای از مسائل عملکرد خوبی دارند، با این فرض که داده های شما به درستی آماده شده و روش به خوبی پیکربندی شده است.
در این پست، مجموعه ای از روش های کلاسیک برای پیش بینی سری های زمانی را می یابید که می توانید قبل از کاوش در روش های یادگیری ماشین، مساله پیش بینی خود را آزمایش کنید.
ساختار این پست به صورتی ساخته شده است تا اطلاعات کافی در مورد هر روش را در اختیار شما قرار دهد تا با یک مثال کد کار شروع کنید و جستجو کنید تا اطلاعات بیشتری در مورد روش کسب کنید. همه مثال ها در کد پایتون هستند و از کتابخانه Statsmodels استفاده می کنند. API های این کتابخانه برای مبتدیان مشکل است، بنابراین داشتن یک مثال کد کار به عنوان نقطه شروع پیشرفت شما را بسیار تسریع می کند.
بررسی اجمالی
این صفحه 11 روش مختلف پیش بینی سری زمانی کلاسیک را نشان می دهد. آن ها عبارت هستند از:
- Autoregression (AR)
- Moving Average (MA)
- Autoregressive Moving Average (ARMA)
- Autoregressive Integrated Moving Average (ARIMA)
- Seasonal Autoregressive Integrated Moving-Average (SARIMA)
- Seasonal Autoregressive Integrated Moving-Average with Exogenous Regressors (SARIMAX)
- Vector Autoregression (VAR)
- Vector Autoregression Moving-Average (VARMA)
- Vector Autoregression Moving-Average with Exogenous Regressors (VARMAX)
- Simple Exponential Smoothing (SES)
- Holt Winter’s Exponential Smoothing (HWES)
هر روش به صورتی ثابت ارائه می شود. این شامل:
- شرح. شرح مختصر و تکنیک دقیق.
- کد پایتون یک نمونه کار کوتاه متناسب با مدل و پیش بینی در پایتون است.
- اطلاعات بیشتر. منابع برای API و الگوریتم.
هر مثال کد در یک مجموعه داده ساده ساختاری نشان داده شده است که ممکن است برای این روش مناسب باشد یا نباشد. برای آزمایش روش، داده خود را با داده های مثال جایگزین کنید.
به یاد داشته باشید: هر روش نیاز به تنظیم مساله خاص شما دارد. در بسیاری از موارد، من نمونه هایی از نحوه پیکربندی و حتی شبکه کردن پارامترهای جستجو را در سایت دارم، و عملکرد جستجو را امتحان می کنم.
Vector Autoregression (VAR)
روش بردار خود همبسته (VAR) مرحله بعدی را در هر سری زمانی با استفاده از یک مدل AR مدل سازی می کند. این تعمیم AR به چندین سری زمانی موازی است، به عنوان مثال. سری های زمانی چند متغیره.
علامت گذاری برای مدل شامل تعیین ترتیب برای مدل AR(p) به عنوان پارامترهای یک تابع VAR است، به عنوان مثال VAR(p)
این روش برای سری های زمانی چند متغیره بدون روند و مولفه های فصلی مناسب است.
کد پایتون
اطلاعات بیشتر
statsmodels.tsa.vector_ar.var_model.VAR API
statsmodels.tsa.vector_ar.var_model.VARResults API
Vector Autoregression Moving-Average (VARMA)
بردار خود همبسته میانگین متحرک (VARMA) مرحله بعدی را در هر سری زمانی با استفاده از یک مدل ARMA مدل سازی می کند. این تعمیم ARMA به چندین سری زمانی موازی است، به عنوان مثال. سری های زمانی چند متغیره.
علامت گذاری برای مدل شامل تعیین ترتیب برای مدل های AR(p) و MA(q) به عنوان پارامترهای یک عملکرد VARMA است، به عنوان مثال. VARMA (p, q) همچنین می توان از مدل VARMA برای توسعه مدل های VAR یا VMA استفاده کرد.
این روش برای سری های زمانی چند متغیره بدون روند و مولفه های فصلی مناسب است.
کد پایتون
اطلاعات بیشتر
statsmodels.tsa.statespace.varmax.VARMAX API
statsmodels.tsa.statespace.varmax.VARMAX نتایج
Vector Autoregression Moving-Average with Exogenous Regressors (VARMAX)
بردار خودهمبسته میانگین متحرک با رگرسورهای برون زا (VARMAX) پسوندی از مدل VARMA است که شامل مدل سازی متغیرهای برون زا نیز می باشد. این یک نسخه چند متغیره از روش ARMAX است.
متغیرهای برون متغیر نیز نامیده می شوند و می توان آنها را به عنوان توالی ورودی موازی در نظر گرفت که دارای مشاهدات در همان مراحل زمانی با سری اصلی هستند. سری های اصلی به عنوان داده های درون زا نامیده می شوند تا آنها را از توالی (های) برونزا مقایسه کنند. مشاهدات مربوط به متغیرهای برونزا در هر مرحله به طور مستقیم در مدل گنجانده می شود و به همان روشی که توالی درون زای اولیه (به عنوان مثال به عنوان فرایند AR، MA و غیره) مدلسازی نمی شود.
از روش VARMAX همچنین می توان برای مدل سازی مدلهای فرعی با متغیرهای برونزا، مانند VARX و VMAX استفاده کرد.
این روش برای سری های زمانی چند متغیره بدون روند و مولفه های فصلی با متغیرهای برون زای مناسب است.
کد پایتون
اطلاعات بیشتر
statsmodels.tsa.statespace.varmax.VARMAX API
statsmodels.tsa.statespace.varmax.VARMAX نتایج
Simple Exponential Smoothing (SES)
روش هموار سازی نمایی ساده (SES) گام زمان بعدی را به عنوان یک تابع خطی وزنی نمایی مشاهدات در مراحل زمان قبلی، مدل می کند.
این روش برای سری های زمانی تک متغیره بدون روند و مولفه های فصلی مناسب است.
کد پایتون
اطلاعات بیشتر
statsmodels.tsa.holtwinters.SimpleExpSmoothing API
statsmodels.tsa.holtwinters.HoltWintersResults API
Holt Winter’s Exponential Smoothing (HWES)
هموار سازی نمایی Holt Winter (HWES) همچنین با توجه به روندها و فصلی بودن، مرحله بعدی را به عنوان یک تابع خطی وزنی از مشاهدات در گام های زمان قبلی، مدل های هموار سازی نمایی سه گانه نامیده است.
این روش برای سری های زمانی تک متغیره با روند و / یا مولفه های فصلی مناسب است.
کد پایتون
اطلاعات بیشتر
statsmodels.tsa.holtwinters.ExponentialSmoothing API
statsmodels.tsa.holtwinters.HoltWintersResults API
خواندن بیشتر
اگر می خواهید عمیق تر شوید، این بخش منابع بیشتری را در این زمینه فراهم می کند.
Statsmodels: API تجزیه و تحلیل سری زمانی
Statsmodels: تجزیه و تحلیل سری زمانی با استفاده از روش های فضایی بخشی
خلاصه
در این پست، مجموعه ای از روش های کلاسیک پیش بینی سری زمانی را کشف کرده اید که می توانید آنها را آزمایش کرده و بر روی مجموعه داده های سری زمانی خود تنظیم کنید.
شناسه تلگرام مدیر سایت: SubBasin@
نشانی ایمیل: behzadsarhadi@gmail.com
(سوالات تخصصی را در گروه تلگرام ارسال کنید)
_______________________________________________________
نظرات (۰)