یک متد آماری محبوب و پرکاربرد برای پیش بینی سری های زمانی ، مدل ARIMA است.

واژه ARIMA مخفف AutoRegressive Integral Moving Average است. این روش یکی از مدل هایی است که مجموعه ای از ساختارهای مختلف استاندارد را در داده های سری زمانی ثبت می کند.

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

خودرگرسیون مدل میانگین متحرک

مدل ARIMA یکی از مدل های آماری به منظور تحلیل و پیش بینی داده های سری زمانی است.

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

ARIMA مخفف AutoRegressive Integral Moving Average است. این یک تعریف از میانگین متحرک AutoRegressive است به طوری که مفهوم یکپارچه سازی را نیز در خود جای داده است.

این اختصار توصیفی است و جنبه های کلیدی ذیل را شامل می شود:

  • AR: خودگرایی. روشی که از رابطه وابسته بین یک متغیر وابسته و تعدادی مشاهد بهره می برد.
  • I: یکپارچه. استفاده از تفکیک مشاهدات خام (به عنوان مثال کم کردن متغیر از مشاهده در مرحله زمان قبلی) به منظور ثابت ماندن سری زمانی.
  • MA: میانگین متحرک. روشی که از وابستگی بین یک مشاهده و یک خطای باقیمانده از مدل میانگین متحرک بهره می برد.

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

پارامترهای مدل ARIMA به شرح زیر تعریف می شوند:

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

یک مدل رگرسیون خطی شامل تعداد پارامترهای مشخص است و داده ها با درجه ای از تفاوت به منظور حذف روندهای و ساختارهای فصلی که بر مدل رگرسیون تأثیر منفی می گذارند، تهیه می شوند.

مقدار 0 را می توان برای یک پارامتر استفاده کرد، به طوری که نشان می دهد از آن عنصر مدل استفاده نمی شود. به این ترتیب می توان مدل ARIMA را برای انجام عملکرد یک مدل ARMA و حتی یک مدل ساده AR ، I یا MA پیکربندی کرد.

استفاده از یک مدل ARIMA برای یک سری زمانی فرض می کند که فرآیند اساسی تولید متغییر، یک فرآیند ARIMA است. این روند ممکن است بسیار ساده به نظر برسد، اما به تأیید فرضیات مدل در مشاهدات خام و خطاهای باقیمانده پیش بینی از مدل کمک می کند.

در ادامه خواهیم دید که چگونه می توانیم از مدل ARIMA در پایتون استفاده کنیم. ما با اجرای یک سری زمانی ساده تک متغیره شروع خواهیم کرد.

مجموعه داده فروش شامپو

این مجموعه داده تعداد فروش ماهانه شامپو را در یک بازه زمانی 3 ساله در خود جای داده است.

واحدها تعداد فروش هستند و 36 ردیف مشاهده وجود دارد. به منظور دانلود این پایگاه داده، اینجا کلیک کنید.

دیتاست را دانلود کنید و با نام “shampoo-sales.csv” در هارد درایو خود قرار دهید.

در ادامه مثالی از دانلود و اجرای مجموعه داده های فروش شامپو با Pandas با یک عملکرد سفارشی برای تجزیه قسمت تاریخ و زمان آورده شده است. مجموعه داده ها در یک سال دلخواه قرار داده می شوند.

با اجرای مثال 5 ردیف اول مجموعه داده چاپ می شود.

کتابخانه statsmodels قابلیت اجرای مدل ARIMA را فراهم می کند.

یک مدل ARIMA می تواند با استفاده از کتابخانه statsmodels به شرح زیر ایجاد شود:

با ایجاد ARIMA () و عبور از پارامترهای p ، d و q مدل را تعریف کنید.
این مدل با فراخوانی تابع fit () بر روی داده های آموزش تهیه می شود.
پیش بینی ها را می توان با فراخوانی تابع predict () و تعیین شاخص زمان یا زمان های پیش بینی شده انجام داد.
در ادامه یک مدل ARIMA را در کل مجموعه داده فروش شامپو قرار خواهیم داد و خطاهای باقیمانده را بررسی خواهیم کرد.