验证regARIMA模型的预测能力和鲁棒性
这个例子展示了如何预测有ARIMA误差的回归模型,以及如何检查模型的可预测性鲁棒性。
加载Credit Defaults数据集,分配响应(IGD
)y
预测因子年龄
,论坛
,SPR
来X
.为了说明,指定响应序列是一个具有AR(1)误差的回归模型。为了避免偏离本例的目的,假设所有预测器系列都是固定的。
负载Data_CreditDefaultsy = Data(:,5);X =数据(:,[1 3:4]);T = size(X,1);%样本量Mdl = regARIMA(1,0,0);
改变验证样本量(米
),并预测来自Mdl
递归。也就是说,对于每个验证样本量:
将模型与数据拟合(
EstMdlY
).来自估计模型的预测响应(
yF
).计算两个性能统计数据,RMSE (root mean square error)和RMSE (root prediction mean square error)。
M = 4:10;%验证样本长度rPMSE = m;预分配rPMSErMSE = m;%预分配rMSE为K = 1:数字(m);yEst = y(1:(T-m(k)));用于估计的响应数据yVal = y((T-m(k)+1):T);%验证样品EstMdlY =估计(Mdl,yEst,“X”, X,“显示”,“关闭”);yHat = EstMdlY。截距+ X(1:(T-m(k)),:)*EstMdlY.Beta';...%估计样本预测值[e0,u0] = infer(EstMdlY,yEst,“X”, X);yF =预测(EstMdlY,m(k),“Y0”是的,...“X0”X (1: t m (k):),“XF”X (T m (k) + 1): T:));...%验证样本预测值rMSE(k) =√(mean(yEst - yHat).^2);rPMSE(k) =√(mean((yF - yVal).^2));结束
rMSE
而且rPMSE
分别包含每个验证样本的RMSE和RPMSE的向量。
显示性能指标。
流('\n m | rMSE | rMSE \n')
m | rMSE | rMSE
流('====================\ n ')
====================
为K = 1:长度(m)'%2d | %0.4f | %0.4f\n'm (k), rMSE (k), rPMSE (k))结束
4 | 0.0947 | 0.2274 5 | 0.0808 | 0.1902 6 | 0.0810 | 0.2036 7 | 0.0714 | 0.1924 8 | 0.0809 | 0.1532 9 | 0.0720 | 0.1557 10 | 0.0899 | 0.1300
这个模型的预测能力是相当稳健的,因为rPMSE
略有增加的变化米
.然而,rMSE
小于rPMSE
对所有米
.这意味着预测能力较差。
通过指定,例如,在误差模型中有更多的AR或MA滞后来搜索更好的模型,并在这些模型中比较pmse。对于给定的验证样本量,选择PMSE最低的模型。