我正在使用以下教程研究 ARIMA 模型:https://www.digitalocean.com/community/tutorials/a-guide-to-time-series-forecasting-with-arima-in-python-3#step-5- —-fitting-an-arima-time-series-model
在我使用第 5 步拟合模型后 - 使用以下代码拟合 ARIMA 时间序列模型:
mod = sm.tsa.statespace.SARIMAX(y,
order=(1, 1, 1),
seasonal_order=(1, 1, 1, 12),
enforce_stationarity=False,
enforce_invertibility=False)
results = mod.fit()
print(results.summary().tables[1])
和情节
results.plot_diagnostics(figsize=(15, 12))
plt.show()
我不知道这是什么意思:我们模型的残差是不相关的,并且服从零均值正态分布。我想知道模型中的残差是什么,残差是真实值和预测值之间的差异的意思。
ARIMA模式需要数据平稳性,为什么作者设置enforce_stationarity为False,enforce_stationarity和enforce_invertibility是什么意思?
enforce_stationarity=False,
enforce_invertibility=False
如果可以的话,能否详细解释一下。谢谢!
最佳答案
残差确实是真实值和预测值之间的差异。如果残差之间存在相关性 - 残差中留下的信息应该用于计算预测。如果残差的均值不是零,则预测有偏差。例如,如果我们有一个不断增长的残差,如 (... -0.3, -0.2, 0.1, 0, 0.1, 0.2, 0.3, ... 等等,平均值将为 0) 这意味着我们的模型不会完整描述过程。
参数: 如果你看包裹 documentation您会看到这些参数用于强制平稳性或可逆性。如果数据是静止的并且 AR 参数选择正确(因为您应该已经进行了一些先前的数据预处理)我们为什么要再做一次? Same 代表可逆性。
关于python - ARIMA 模型 : plot_diagnostics, 我们模型的残差是什么意思,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44245855/