gyakorlati bemutató az AR(p) folyamatról az idősorok elemzéséhez Pythonban
fotó: Elena koycheva az Unsplash-on
ebben a gyakorlati oktatóanyagban az idősoros modellezés témáját fogjuk lefedni autoregresszív folyamatokkal.
Ez a cikk az idősor-elemzés következő kulcselemeit tárgyalja:
autoregresszív folyamat
Yule-Walker egyenlet
stationarity
kibővített Dicker-Fuller teszt
győződjön meg róla, hogy a Jupyter notebook készen áll a követésre. A kód és az adatkészlet itt érhető el.
kezdjük!
Ismerje meg, hogyan kell dolgozni bonyolultabb modellek, mint a SARIMAX, VARMAX, és alkalmazza a deep learning modellek (LSTM, CNN, ResNet, autoregressive LSTM) idősor elemzés alkalmazott idősor elemzés Python!
Autoregresszív folyamat
az autoregresszív modell a cél múltbeli értékeinek lineáris kombinációját használja az előrejelzések készítéséhez. Természetesen a regresszió maga a cél ellen történik. Matematikailag egy AR(p) modell kifejezve:
Ahol:
p: a rend
c: állandó
epszilon: zaj
az AR(p) modell hihetetlenül rugalmas, és sokféle idősor-mintát képes modellezni. Ez könnyen láthatóvá válik, amikor autoregresszív folyamatokat szimulálunk.
az autoregresszív modelleket általában csak álló idősorokra alkalmazzák. Ez korlátozza a Phi paraméterek tartományát.
például egy AR (1) modell korlátozza a phi-t -1 és 1 között. Ezek a korlátok összetettebbé válnak, ahogy a modell sorrendje növekszik, de automatikusan figyelembe veszik őket a Python modellezésekor.
egy AR(2) folyamat szimulációja
szimuláljunk egy AR (2) folyamatot Pythonban.
néhány könyvtár importálásával kezdjük. Nem mindegyiket fogják használni a szimulációhoz, de ezekre az oktatóanyag többi részéhez szükség lesz.
from statsmodels.graphics.tsaplots import plot_pacf from statsmodels.graphics.tsaplots import plot_acf from statsmodels.tsa.arima_process import ArmaProcess from statsmodels.tsa.stattools import pacf from statsmodels.regression.linear_model import yule_walker from statsmodels.tsa.stattools import adfuller import matplotlib.pyplot as plt import numpy as np%matplotlib inline
az ArmaProcess könyvtárat fogjuk használni az idősorok szimulálására. Meg kell határoznunk a paramétereinket.