عرفان اسماعیلی

مطالعه این مقاله حدود 17 دقیقه زمان ‌می‌برد.
1402/03/16
2065



مدل‌های ARIMA و ARMA در پیش‌بینی سری‌های زمانی، دو نوع از مدل‌های پیش‌بینی سری‌های زمانی هستند که برای پیش‌بینی متغیرهای زمانی مانند فروش، قیمت و غیره استفاده می‌شوند.

در ادامه این مقاله از وبسایت اس‌دیتا، به توضیح این دو مدل می‌پردازیم. این مدل‌های زمانی به ما کمک می‌کنند تا سری‌های زمانی را به بهترین شکل ممکن و با دقت بالاتری پیش‌بینی کنیم.

معرفی مدل‌های زمانی

در این بخش به معرفی مدل‌های زمانی می‌پردازیم.

مدل ARIMA:

مدل ARIMA به انگلیسی "Autoregressive Integrated Moving Average" یعنی خودرگرسیوی متوالی متغیرهای تصادفی است. این مدل با استفاده از ترکیبی از مدل‌های خودرگرسیوی AR(p)، میانگین متحرک MA(q) و انتگرال I(d)، برای پیش‌بینی سری‌های زمانی به کار می‌رود. هر یک از این مدل‌ها به شکل زیر تعریف می‌شوند:

 

- مدل AR(p):

در این مدل، مقدار فعلی سری زمانی، به صورت خطی با مقادیر گذشته‌ی خود در یک بازه زمانی p، ارتباط دارد. به عبارت دیگر، مقدار فعلی سری زمانی، به صورت خطی با محصولات مقادیر گذشته‌ی خود در زمان t-1، t-2 و ... t-p، رابطه دارد.

 

- مدل MA(q):

در این مدل، مقدار فعلی سری زمانی، به صورت خطی با خطاهای گذشته‌ی خود در یک بازه زمانی q، ارتباط دارد. به عبارت دیگر، مقدار فعلی سری زمانی، به صورت خطی با خطاهای پیشین خود در زمان t-1، t-2 و ... t-q، رابطه دارد.

 

- مدل I(d):

مدل I(d) یک مدل انتگرال می‌باشد که برای حذف تغییرات مستقل زمانی (مانند میانگین)، به کار می‌رود. با اعمال این مدل، سری زمانی به یک سری زمانی استشماری تبدیل می‌شود که تغییرات مستقل زمانی آن حذف شده است.

 

با ترکیب این سه مدل، می‌توان مدل ARIMA را به صورت ARIMA(p,d,q) تعریف کرد که در آن p، مرتبه مدل AR، q، مرتبه مدل MA و d، مرتبه مدل I را نشان می‌دهد.

 

مدل ARMA:

مدل ARMA به انگلیسی "Autoregressive Moving Average" یعنی خودرگرسیوی متحرک متغیرهای تصادفی است. این مدل با استفاده از ترکیب دو مدل خودرگرسیوی AR(p) و میانگین متحرک MA(q)، برای پیش‌بینی سری‌های زمانی به کار می‌رود. در این مدل، متغیر وابسته باید بدون تغییر مانده و استقلال خطاها باید تأیید شده باشد.

مدل‌های ARIMA و ARMA از آنجایی که توانایی پیش‌بینی دقیقی از داده‌های سری زمانی را دارند، در بسیاری از حوزه‌های کاربردی مانند اقتصاد، مالی، مهندسی صنایع و ... مورد استفاده قرار می‌گیرند.

آیا مدل‌های ARIMA و ARMA برای پیش‌بینی سری‌های زمانی با داده‌های نامتوازن مناسب هستند؟

مدل‌های ARIMA و ARMA در پیش‌بینی سری‌های زمانی در داده‌های نامتوازن نیز باید بررسی شوند.

مدل‌های ARIMA و ARMA برای پیش‌بینی سری‌های زمانی با داده‌های نامتوازن مناسب نیستند. در واقع، این مدل‌ها برای پیش‌بینی سری‌های زمانی با داده‌هایی که دارای توازن زمانی هستند (مثل داده‌های ماهانه، فصلی و سالانه) طراحی شده‌اند.

در صورتی که داده‌های سری زمانی نامتوازن باشد، ممکن است پدیده‌هایی مانند پارامترهای ثابت، جایگزینی داده‌های گم شده و ... وجود داشته باشد که باعث عدم قابلیت استفاده از مدل‌های ARIMA و ARMA می‌شوند.

برای پیش‌بینی سری‌های زمانی نامتوازن، بهتر است از روش‌های دیگری مانند مدل‌های مبتنی بر شبکه‌های عصبی، مدل‌های مبتنی بر درخت تصمیم و ... استفاده کنید.

مدل‌هایی برای پیش‌بینی سری‌های زمانی نامتوازن

برای پیش‌بینی سری‌های زمانی نامتوازن، می‌توان از روش‌های مختلفی استفاده کرد. در ادامه، چندین مدل برای پیش‌بینی سری‌های زمانی نامتوازن را بررسی می‌کنیم

 

مدل‌های مبتنی بر شبکه‌های عصبی:

شبکه‌های عصبی می‌توانند مدل‌های قوی برای پیش‌بینی سری‌های زمانی نامتوازن باشند. به عنوان مثال، می‌توان از شبکه‌های بازگشتی مانند LSTM (Long Short-Term Memory) و GRU (Gated Recurrent Unit) استفاده کرد. این مدل‌ها برای پیش‌بینی سری‌های زمانی با داده‌های نامتوازن بسیار قوی هستند.

 

مدل‌های مبتنی بر درخت تصمیم:

مدل‌های مبتنی بر درخت تصمیم نیز می‌توانند برای پیش‌بینی سری‌های زمانی نامتوازن مفید باشند. این مدل‌ها با استفاده از یک درخت تصمیم، روشی برای تصمیم‌گیری در مورد پیش‌بینی مقدار سری‌های زمانی ارائه می‌دهند.

 

مدل‌های مبتنی بر ARIMA و ARMA با تعدیل شده:

می‌توان مدل‌های ARIMA و ARMA را نیز برای پیش‌بینی سری‌های زمانی نامتوازن استفاده کرد. برای این منظور، می‌توان از روش‌های تعدیل شده‌ی این مدل‌ها استفاده کرد که شامل مدل‌های مبتنی بر ARIMAX و SARIMA می‌شوند.

 

مدل‌های مبتی بر تجزیه ماتریس فاکتوریزاسیون:

این مدل‌ها برای پیش‌بینی سری‌های زمانی نامتوازن مفید هستند. در این مدل‌ها، سری زمانی با استفاده از تجزیه ماتریس فاکتوریزاسیون به چندین عامل تقسیم می‌شود و هر عامل به صورت مستقل پیش‌بینی می‌شود.

 

مدل‌های مبتنی بر رگرسیون کوانتیل:

این مدل‌ها برای پیش‌بینی دقیق محدوده‌ی قطعی (مانند بازه‌ی اطمینان) مقادیر سری‌های زمانی نامتوازن استفاده می‌شوند. این مدل‌ها به دلیل داشتن محدوده‌ی قطعی برای پیش‌بینی، بسیار مفید هستند.

در نهایت، انتخاب مدل مناسب برای پیش‌بینی سری‌های زمانی نامتوازن، بسته به ماهیت داده‌ها و هدف پیش‌بینی که در نظر دارید متفاوت است.

در برخی موارد، ممکن است برای دقیق‌تر کردن پیش‌بینی، بتوانید از ترکیب چندین مدل مختلف استفاده کنید. در نتیجه مدل‌های ARIMA و ARMA در پیش‌بینی سری‌های زمانی می‌توانند بسیار کاربردی باشند.

الگوریتم بوکس-جنکینز را برای تعیین پارامترهای مدل ARIMA

الگوریتم بوکس-جنکینز یا (Box-Jenkins algorithm) برای تعیین پارامترهای مدل ARIMA استفاده می‌شود. این الگوریتم شامل سه مرحله اصلی است: شناسایی، تخمین و تطبیق.

 

مرحله شناسایی:

در این مرحله، ابتدا سعی می‌شود سری زمانی مورد نظر را به دو بخش تجزیه کنیم: الگوی معمولی و اختلالات نامطلوب.

سپس با استفاده از تحلیل خودکار (automated analysis) و توابع ACF و PACF، مدل خودرگرسیوی متوالی (AR)، مدل متوسط متحرک (MA) و مدل خودرگرسیوی متوالی و متوسط متحرک (ARMA) برای سری زمانی مشخص می‌شوند.

 

مرحله تخمین:

در این مرحله، با استفاده از داده‌های سری زمانی، پارامترهای مدل ARIMA، شامل تأخیرهای خودرگرسیوی (p)، تأخیرهای متوسط متحرک (q) و درجه‌ی انتگرال (d)، تخمین زده می‌شوند. برای تخمین پارامترهای مدل، از روش‌های مختلفی مانند روش کمترین مربعات یا روش ماکسیمم درست‌نمایی استفاده می‌شود.

 

مرحله تطبیق:

در این مرحله، پارامترهای مدل ARIMA با استفاده از داده‌های سری زمانی تطبیق داده می‌شوند. برای این منظور، می‌توان از روش‌هایی مانند الگوریتم کوک-ویلسون و یا الگوریتم نیوتون-رافسون استفاده کرد.

در کل، الگوریتم بوکس-جنکینز یک روش قدرتمند برای تعیین پارامترهای مدل ARIMA است که می‌تواند در پیش‌بینی سری‌های زمانی با دقت بالا موثر باشد.

با این حال، برای استفاده موفق از این الگوریتم، نیاز به دانش قوی در زمینه‌ی تحلیل سری‌های زمانی و استفاده از نرم‌افزارهای مناسب مانند R و Python می‌باشد.

یک نرم‌افزار مناسب برای استفاده از الگوریتم بوکس-جنکینز

در کنار بررسی مدل‌های ARIMA و ARMA در پیش‌بینی سری‌های زمانی، بهتر است به چند نرم افزار در این زمینه اشاره کنیم.

برای استفاده از الگوریتم بوکس-جنکینز در تحلیل سری‌های زمانی، ابزارهای مختلفی وجود دارند که می‌توانید از آنها استفاده کنید. در ادامه، چندین نرم‌افزار مناسب برای استفاده از الگوریتم بوکس-جنکینز را برای شما معرفی می‌کنم:

 

R:

R یک زبان برنامه‌نویسی و یک محیط آماری است که بسیار قدرتمند برای تحلیل داده‌های آماری مانند سری‌های زمانی است. بسته‌ی forecast در R، ابزاری قدرتمند برای تحلیل سری‌های زمانی است که شامل توابعی برای تعیین پارامترهای مدل ARIMA با استفاده از الگوریتم بوکس-جنکینز است.

 

Python:

Python نیز یک زبان برنامه‌نویسی قدرتمند است که می‌تواند برای تحلیل سری‌های زمانی با استفاده از الگوریتم بوکس-جنکینز مورد استفاده قرار بگیرد.

بسته‌هایی مانند statsmodels و pmdarima می‌توانند به عنوان ابزارهای مناسب برای تحلیل سری‌های زمانی با استفاده از الگوریتم بوکس-جنکینز در Python مورد استفاده قرار بگیرند.

 

SPSS:

SPSS یک نرم‌افزار تجاری قدرتمند برای تجزیه و تحلیل داده‌های آماری است که شامل ابزارهای مختلفی برای تحلیل سری‌های زمانی است. این نرم‌افزار از الگوریتم بوکس-جنکینز برای تعیین پارامترهای مدل ARIMA در تحلیل سری‌های زمانی استفاده می‌کند.

 

SAS:

SAS نیز یک نرم‌افزار تجاری برای تجزیه و تحلیل داده‌های آماری است که شامل ابزارهای مختلفی برای تحلیل سری‌های زمانی است. پروسه‌ی تعیین پارامترهای مدل ARIMA با استفاده از الگوریتم بوکس-جنکینز در SAS بسیار ساده است.

در کل، این نرم‌افزارها ابزارهای قدرتمندی برای تحلیل سری‌های زمانی با استفاده از الگوریتم بوکس-جنکینز ارائه می‌دهند. انتخاب نرم‌افزاری برای استفاده در تحلیل سری‌های زمانی باید بر اساس نیازهای خاص شما و تجربه‌ی شما در استفاده از آنها صورت گیرد.

سخن آخر

در این مقاله در خصوص مدل‌های ARIMA و ARMA در پیش‌بینی سری‌های زمانی صحبت شد. شما می‌توانید برای اطلاعات بیشتر در این خصوص به وبسایت اس‌دیتا مراجعه نمایید.

کلینیک لاغری در شهرک غرب




برچسب‌ها:

چت جی پی تی بی سوادی خودرو های نیمه سنگین خودرو های سنگین خان به بین مد

مقالات مرتبط


پنجمین نمایشگاه بین المللی خودرو، فناوری های نوین و صنایع وابسته تحقیقات بازاریابی در حوزه سیستم های اطلاعاتی بهترین کتاب ها در زمینه ی تحقیقات بازار کاربرد داده در مدیریت منابع طبیعی کاربرد داده در پیش‌بینی روند بازار مدل‌های مختلف احتمالاتی در تحلیل داده‌ها تحلیل و پیش بینی عملکرد و سود آوری شرکت با استفاده از هوش مصنوعی تحلیل داده در پیشبینی مشکلات فنی و ارائه راهکار پیش‌بینی و کاهش خطاهای نرم‌افزاری با استفاده از هوش مصنوعی پیش‌ بینی خطاهای سیستمی و راهکارهای پیشگیرانه با استفاده از هوش مصنوعی استفاده از شبکه‌ های عصبی در تحلیل سری ‌های زمانی معرفی روش‌ های مختلف تحلیل سری‌ های فضایی مقایسه روش ‌های مختلف تحلیل سری‌ های فضایی برای پیش ‌بینی داده‌های فضایی هوش تجاری و کاربردهای آن در صنعت تولید نرم‌افزار و خدمات فناوری اطلاعات کاربرد تحلیل بیزی در پیش‌بینی و ارزیابی خطا استفاده از مدل سازی گراف در تحلیل داده‌ها مقایسه روش‌های مختلف تحلیل ترکیبی داده‌ها و مزایا و معایب هر کدام کاربرد تحلیل ترکیبی داده‌ها در تحلیل داده‌های چند متغیره معرفی مفاهیم پایه تحلیل ترکیبی داده‌ها مقایسه تحلیل عاملی با روش‌های دیگر تحلیل چند متغیره مدل‌سازی و پیش‌بینی در حوزه سلامت و پزشکی تحلیل داده‌های حجم بالا با استفاده از ابزارهای ابری استفاده از روش‌های آماری برای پیش ‌بینی رشد شرکت معرفی و بررسی روش‌های مختلف مدل سازی گراف تحلیل پیش‌بینانه و پیش‌بینی در علم داده تحلیل داده‌های زمانی و پیش‌بینی رویدادها استفاده از روش‌های آماری در تجزیه و تحلیل داده‌های ارتباطی و بازخورد مشتری پیش‌بینی میزان فروش محصولات با استفاده از هوش مصنوعی تحلیل داده‌های منابع انسانی برای شناسایی الگوهای عملکرد کارکنان استفاده از روش‌های آماری برای پیش‌‌بینی عملکرد سازمان و بهبود تصمیم‌‌گیری پیش بینی و بهبود عملکرد سیستمهای زیرساختی با استفاده از هوش مصنوعی استفاده از روش‌های آماری برای پیش‌بینی تقاضا و پیشرفت بازار بهبود فرایند تصمیم‌گیری با استفاده از هوش مصنوعی طراحی سیستم‌های خودکار با استفاده از هوش مصنوعی بهبود دقت پیش‌بینی بازده سرمایه‌گذاری با استفاده از هوش مصنوعی معرفی توزیع‌های احتمال و استفاده از آن‌ها در تحلیل آماری پیش ‌بینی و تحلیل بازار با استفاده از هوش مصنوعی برای بهبود تصمیم‌ گیری در بورس و مالیات ارائه پیشنهادات شخصی‌سازی شده برای مشتریان با استفاده از هوش مصنوعی تحلیل عاملی در شناخت الگوها و ارتباطات بین متغیرها بهینه‌سازی و تطبیق خودکار روش‌های آموزش با هوش مصنوعی بهبود تشخیص و پیش‌بینی خطا در سیستم‌های برقی با هوش مصنوعی توصیه به مشتریان برای خرید محصولات با استفاده از هوش مصنوعی تحلیل داده برای بهبود عملکرد کسب و کار روش‌های قیمت گذاری مناسب برای هر کسب و کار چه محصولی برای فروش اینترنتی مناسب‌تر است؟ آیا کاهش قیمت بهترین راه برای افزایش فروش است ؟

داشبورد‌های مرتبط