我已经做了一个训练集来适应不同的 ARIMA 模型,然后做了一个测试集来评估它们的性能(使用 R)。据我了解,我可以使用 AICc 通过选择具有最小 AICc 的模型来确定最佳模型,但是模型的差分顺序必须相同才能进行比较。但是,我也可以使用 RMSE 来选择最佳模型,并且不同的差分顺序无关紧要。但是,在我所有的模型中 d=1。
如果 AICc 的小值倾向于给出更好的模型,并且如果 RMSE 越小模型越好,那么 AICc 最小的模型应该具有最小的 RMSE?在我的例子中,具有较小 AICc 的模型比具有较大 AICc 的模型具有更大的 RMSE 值。那我应该如何决定哪个是最好的模型呢?
在这里,我展示了不同的 ARIMA 模型,它们具有各自的 AICc、Ljung-Box 检验残差的 p 值、RMSE 和 MAPE。
AICc p-value RMSE MAPE
ARIMA (2,1,2) ~ 515.28 ~ 0.07054 ~ 1.1537 ~ 13.812
ARIMA (2,1,1) ~ 517.91 ~ 0.1145 ~ 1.0441 ~ 13.925
ARIMA (1,1,2) ~ 517.9 ~ 0.1169 ~ 1.0667 ~ 14.217
ARIMA (1,1,1) ~ 516.22 ~ 0.1732 ~ 1.1122 ~ 14.848
ARIMA (2,1,0) ~ 537.3 ~ 0.0074 ~ 0.9066 ~ 12.083
ARIMA (0,1,2) ~ 519.59 ~ 0.1004 ~ 0.9431 ~ 12.676
ARIMA (0,1,1) ~ 537.5 ~ 0.0007 ~ 0.9030 ~ 12.006
ARIMA (1,1,0) ~ 544.32 ~ 0.0006 ~ 0.8961 ~ 11.735
ARIMA (0,1,0) ~ 549.08 ~ 0.0006 ~ 0.8963 ~ 11.747
ARIMA (3,1,2) ~ 521.84 ~ 0.0368 ~ 1.0181 ~ 13.527
ARIMA (2,1,3) ~ 521.6 ~ 0.0432 ~ 1.0275 ~ 13.632
ARIMA (3,1,3) ~ 511.6 ~ 0.1617 ~ 1.0945 ~ 14.699
ARIMA (3,1,1) ~ 519.91 ~ 0.0800 ~ 1.1116 ~ 14.815
ARIMA (1,1,3) ~ 519.78 ~ 0.05345 ~ 0.9913 ~ 13.191
我不得不说 auto.arima() 与 stepwise=FALSE, approximation=FALSE 和seasonal=FALSE 选择了 ARIMA(2,1,2) 但它会产生 NaN。
我应该首先拒绝那些 p 值 < 0.05 的模型吗?然后我应该如何决定最好的模型?对于这些给定的值,您会选择哪种模型?