NPN / arima /README.md
rishini's picture
fix: fill WRMSSE levels 1-5, regenerate parity fixtures (5k rows), recompute SHA256SUMS
0cbdee6 verified
|
Raw
History Blame Contribute Delete
1.21 kB

ARIMA Model for M5 Demand Forecasting

Overview

AutoRegressive Integrated Moving Average trained on aggregated daily M5 sales data.

Model Details

  • Architecture: ARIMA(3,1,1) with trend
  • Training Data: 1,913 days of aggregated daily sales
  • Test Period: 28 days (2016-04-25 to 2016-05-22)
  • Differencing: d=1 (first differencing required for stationarity)

Stationarity Test

  • ADF Statistic: -1.565373
  • p-value: 0.500960
  • Original data non-stationary; first differencing achieves stationarity

Performance

Metric Value
RMSE 6,459.70
MAE 4,852.62
MAPE 10.48%
AIC 37,801.28

Key Features

  • AR component: 3 autoregressive terms
  • I component: 1st order differencing (d=1)
  • MA component: 1 moving average term
  • Trend term: 't' (deterministic trend)

Usage

import pickle

with open('model.pkl', 'rb') as f:
    model = pickle.load(f)

forecast = model.forecast(steps=28)

Notes

  • Simplest model but requires manual order selection
  • No seasonal component (SARIMAX handles this better)
  • Good baseline but underperforms compared to Prophet and SARIMAX
  • Smallest model file (6.5MB) due to no seasonal components