只需一行代码!Python中9大时间序列预测模型

在时间序列问题上,机器学习被广泛应用于分类和预测问题。当有预测模型来预测未知变量时,在时间充当独立变量和目标因变量的情况下,时间序列预测就出现了。

预测值可以是潜在雇员的工资或银行账户持有人的信用评分。任何正式引入统计数据的数据科学都会遇到置信区间,这是某个模型确定性的衡量标准。

因此,预测一段时间内某些数据的价值需要特定的技术,并且需要多年的发展。

由于每种都有其特殊用途,必须注意为特定应用选择正确的技术。预测人员在技术选择中发挥作用,他们越了解预测可能性的范围,公司的预测工作就越有可能取得成果。

其方法的选择取决于预测的背景、历史数据的相关性和可用性、所需的准确度、预测的时间段、对企业的预测成本以及分析所需的时间。

影响预测的因素

· 增加或减少趋势

· 季节性

· 数据集的大小

时间序列的组成部分与数据本身一样复杂。随着时间的增加,获得的数据也会增加。有时候更多的数据并不意味着更多的信息,但是更大的样本避免了由于随机采样而产生的误差。

因此,对于每个应用程序,使用的技术都会发生变化。

来源:数据科学博客

在本文中,我们列出了最广泛使用的时间序列预测方法,只需一行代码就可以在Python中使用它们:

  1. Autoregression(AR)

AR方法在先前时间步骤中模拟为观察的线性函数。

模型的表示法涉及指定模型p的顺序作为AR函数的参数。

from statsmodel.tsa.ar_model import AR

  1. Autoregressive Moving Average(ARMA)

ARMA方法结合了自回归(AR)模型和移动平均(MA)模型。

from statsmodel.tsa.arima_model import ARMA

  1. Autoregressive Integrated Moving Average(ARIMA)

ARIMA方法结合自回归(AR)和移动平均(MA)模型以及序列的差分预处理步骤以使序列静止,称为积分。

from statsmodel.tsa.arima_model import ARIMA

  1. Seasonal Autoregressive Integrated Moving-Average (SARIMA)

SARIMA方法将序列中的下一步建模为先前时间步骤的差异观测值、误差、差异性季节观测值和季节性误差的线性函数。

它结合了ARIMA模型,能够在季节性水平上执行相同的自回归、差分和移动平均建模。

from statsmodel.tsa.statespace.sarimax import SARIMAX

  1. Seasonal Autoregressive Integrated Moving-Average with Exogenous Regressors (SARIMAX)

SARIMAX是SARIMA模型的扩展,还包括外生变量的建模。

SARIMAX方法还可用于使用外生变量对包含的模型进行建模,例如ARX,MAX,ARMAX和ARIMAX。

from statsmodel.tsa.statespace.sarimax import SARIMAX

  1. Vector Autoregression (VAR)

向量自回归方法使用AR模型。AR是多个并行时间序列的推广。

from statsmodel.tsa.vector_ar.var_model import VAR

  1. Vector Autoregression Moving-Average (VARMA)

这是ARMA对多个并行时间序列的推广,例如,多变量时间序列。

from statsmodel.tsa.statespace.varmax import VARMAX

  1. Vector Autoregression Moving-Average with Exogenous Regressors(VARMAX)

VARMAX是VARMA模型的扩展,它还包括外生变量的建模。它是ARMAX方法的多变量版本。

  1. Holt Winter’s Exponential Smoothing (HWES)

HWES是在先前时间步骤的观测的指数加权线性函数,将考虑趋势和季节性因素。

from statsmodel.tsa.holtwinters import ExponentialSmoothing

posted @ 2019-03-19 17:11  python学习者0  阅读(7140)  评论(0编辑  收藏  举报