Автоматизація та збереження

Моделі ARIMA в Python

James Fulton

Climate informatics researcher

Пошук за порядками моделі

import pmdarima as pm
results = pm.auto_arima(df)
Покроковий пошук для мінімізації aic
 ARIMA(2,0,2)(1,1,1)[12] intercept   : AIC=inf, Time=3.33 sec
 ARIMA(0,0,0)(0,1,0)[12] intercept   : AIC=2648.467, Time=0.062 sec
 ARIMA(1,0,0)(1,1,0)[12] intercept   : AIC=2279.986, Time=1.171 sec

 ...

 ARIMA(3,0,3)(1,1,1)[12] intercept   : AIC=2173.508, Time=12.487 sec
 ARIMA(3,0,3)(0,1,0)[12] intercept   : AIC=2297.305, Time=2.087 sec

Найкраща модель:  ARIMA(3,0,3)(1,1,1)[12]
Загальний час навчання: 245.812 seconds
Моделі ARIMA в Python

Результати pmdarima

print(results.summary())

results.plot_diagnostics()

Моделі ARIMA в Python

Параметри пошуку без сезонності

Моделі ARIMA в Python

Параметри пошуку без сезонності

results = pm.auto_arima( df,             # дані

d=0, # порядок різниці (без сезонності)
start_p=1, # початкове припущення для p start_q=1, # початкове припущення для q
max_p=3, # макс. значення p для перевірки max_q=3, # макс. значення q для перевірки )
1 https://www.alkaline-ml.com/pmdarima/modules/generated/pmdarima.arima.auto_arima.html
Моделі ARIMA в Python

Параметри пошуку з сезонністю

results = pm.auto_arima( df,             # дані
                         ... ,          # аргументи без сезонності 
                         seasonal=True,  # чи є ряд сезонним

m=7, # сезонний період
D=1, # порядок сезонної різниці
start_P=1, # початкове припущення для P start_Q=1, # початкове припущення для Q
max_P=2, # макс. значення P для перевірки max_Q=2, # макс. значення Q для перевірки )
Моделі ARIMA в Python

Інші параметри

results = pm.auto_arima( df,                     # дані    
                         ... ,                   # параметри порядку моделі     

information_criterion='aic', # критерій вибору найкращої моделі
trace=True, # друк проміжних результатів
error_action='ignore', # ігнорувати непридатні порядки
stepwise=True, # розумний пошук порядків )
Моделі ARIMA в Python

Збереження обʼєктів моделі

# Імпорт
import joblib 
# Оберіть шлях до файлу
filepath ='localpath/great_model.pkl'

# Збережіть модель у файл
joblib.dump(model_results_object, filepath)
Моделі ARIMA в Python

Збереження обʼєктів моделі

# Оберіть шлях до файлу
filepath ='localpath/great_model.pkl'

# Завантажте обʼєкт моделі з файлу
model_results_object = joblib.load(filepath) 
Моделі ARIMA в Python

Оновлення моделі

# Додайте нові спостереження та оновіть параметри
model_results_object.update(df_new)
Моделі ARIMA в Python

Порівняння оновлень

Моделі ARIMA в Python

Давайте потренуємось!

Моделі ARIMA в Python

Preparing Video For Download...