Wprowadzenie do modeli ARIMA

Modele ARIMA w Pythonie

James Fulton

Climate informatics researcher

Powtórzenie: niestacjonarne szeregi czasowe

Modele ARIMA w Pythonie

Powtórzenie: niestacjonarne szeregi czasowe

Modele ARIMA w Pythonie

Prognoza różnicowanego szeregu czasowego

Modele ARIMA w Pythonie

Rekonstrukcja oryginalnego szeregu po różnicowaniu

diff_forecast = results.get_forecast(steps=10).predicted_mean

from numpy import cumsum
mean_forecast = cumsum(diff_forecast)
Modele ARIMA w Pythonie

Rekonstrukcja oryginalnego szeregu po różnicowaniu

diff_forecast = results.get_forecast(steps=10).predicted_mean

from numpy import cumsum
mean_forecast = cumsum(diff_forecast) + df.iloc[-1,0]
Modele ARIMA w Pythonie

Rekonstrukcja oryginalnego szeregu po różnicowaniu

Modele ARIMA w Pythonie

Model ARIMA

 

  • Wyznacz różnicę
  • Dopasuj model ARMA
  • Zintegruj prognozę

Czy można to uprościć?

Tak!

ARIMA – Autoregresyjna Zintegrowana Średnia Ruchoma

Modele ARIMA w Pythonie

Korzystanie z modelu ARIMA

from statsmodels.tsa.arima.model import ARIMA

model = ARIMA(df, order=(p,d,q))
  • p – liczba opóźnień autoregresji
  • d – rząd różnicowania
  • q – liczba opóźnień średniej ruchomej

ARIMA$(p,0,q)$ = ARMA$(p,q)$

Modele ARIMA w Pythonie

Korzystanie z modelu ARIMA

# Create model
model = ARIMA(df, order=(2,1,1))

# Fit model model.fit()
# Make forecast mean_forecast = results.get_forecast(steps=10).predicted_mean
Modele ARIMA w Pythonie

Korzystanie z modelu ARIMA

# Make forecast
mean_forecast = results.get_forecast(steps=steps).predicted_mean

Modele ARIMA w Pythonie

Dobór rzędu różnicowania

adf = adfuller(df.iloc[:,0])
print('ADF Statistic:', adf[0])
print('p-value:', adf[1])
ADF Statistic: -2.674
p-value: 0.0784
adf = adfuller(df.diff().dropna().iloc[:,0])
print('ADF Statistic:', adf[0])
print('p-value:', adf[1])
ADF Statistic: -4.978
p-value: 2.44e-05
Modele ARIMA w Pythonie

Dobór rzędu różnicowania

model = ARIMA(df, order=(p,1,q))
Modele ARIMA w Pythonie

Czas na ćwiczenia!

Modele ARIMA w Pythonie

Preparing Video For Download...