这个例子展示了如何使用贝叶斯信息准则(BIC)来选择度p和问一个ARMA模型。估计几种不同的模型p和问值。对于每个估计模型,输出loglikelihood目标函数值。输入loglikelihood值aicbic
计算BIC的适合度(复杂度受到惩罚)。
模拟具有100个观测值的ARMA(2,1)时间序列。
Mdl0 = arima (“不变”,0.2,基于“增大化现实”技术的{0.75,-0.4},...“马”,0.7,“方差”,0.1);rng (“默认”Y =模拟(Mdl0,100);图(Y) xlim([0,100])“模拟ARMA(2, 1)系列的)
绘制模拟数据的样本自相关函数(ACF)和部分自相关函数(PACF)。
图subplot(2,1,1) autocorr(Y) subplot(2,1,2) parcorr(Y)
ACF和PACF的衰减速度都相对较慢。这与ARMA模型是一致的。ARMA滞后不能仅通过ACF和PACF来选择,但似乎不需要超过4个AR或MA项。
为了确定最佳滞后时间,需要对几个模型进行不同的滞后选择。这里,适合所有的组合p= 1,……4,问= 1,……,4 (a total of 16 models). Store the loglikelihood objective function and number of coefficients for each fitted model.
LOGL = 0 (4, 4);%初始化PQ = 0 (4, 4);为p = 1:4为q = 1:4 Mdl = arima(p,0,q);[EstMdl ~, logL] =估计(Mdl Y“显示”,“关闭”);LOGL (p, q) = LOGL;PQ(p,q) = p + q;结束结束
计算每个拟合模型的BIC。模型中参数的数量为p+问+ 1 (AR和MA系数,常数项)数据集中的观测值为100。
LOGL =重塑(LOGL 16 1);PQ =重塑(PQ, 16岁,1);[~,bic] = aicbic (LOGL PQ + 1100);重塑(bic 4 4)
ans =4×4108.6241 105.9489 109.4164 113.8443 99.1639 101.5886 105.5203 109.4348 102.9094 106.0305 107.6489 99.6794 107.4045 100.7072 102.5746 102.0209
在输出的BIC矩阵中,行对应AR度(p)和对应的MA度(问)。最小的值是最好的。
最小的BIC值是99.1639
在(2,1)位置。这对应于ARMA(2,1)模型,与生成数据的模型相匹配。
aicbic
|华宇电脑
|autocorr
|估计
|parcorr
|模拟