我已经使用 statsmodels 库在大约 15 分钟递增的时间序列数据上训练了一个 ARIMA 模型。我想确定我观察到的下一个 15 分钟增量的数据有多反常。然后我想用该数据更新模型。
我可以在可接受的误差范围内预测未来结果的范围,如下所示:
model = arima_model.ARIMA(data.COUNTS,(p,d,q)).fit()
print model.forecast(alpha=.001)[2]
输出:
数组([[ 16.13395152, 48.47024783]]))
所以你可以说这个范围之外的任何数字都是异常的。但是,例如,如果我的下一个观察值是 50,那么它可能比 51 的观察值更不异常。您建议我使用哪种方式来确定使用 ARIMA 模型的观察值的异常程度?
另外,我应该如何用新的观察来更新我的模型?