我一直在使用SAS的泊松通用加性模型拟合一些时间序列数据PROC GAM
。一般来说,我一直使用它的内置通用交叉验证程序为我的单个样条生成至少一个体面的“起点”,这是时间的非线性函数以及单个参数项(其实很感兴趣)。
到目前为止,除了我的数据集之一之外,它的运行相当流畅。该数据集中有132个观测值,GCV建议使用128个自由度的样条曲线。看来...错了。错了 更重要的是,它也不是很稳定。我尝试了第二种方法,当参数项的估计值停止更改时,使用“估计更改”条件之类的方法停止添加自由度,因为如果没有什么不同,为什么还要继续添加控制权?
问题在于估算值根本不稳定。我尝试了以下自由度,如您所见,参数项疯狂地反弹:
DF: Parametric Estimate:
1 -0.76903
2 -0.56308
3 -0.47103
4 -0.43631
5 -0.33108
6 -0.1495
7 0.0743
8 0.33459
9 0.62413
10 0.92161
15 1.88763
20 1.98869
30 2.5223
40-60 had convergence issues
70 7.5497
80 7.22267
90 6.71618
100 5.83808
110 4.61436
128 1.32347
对于这个特定的数据,我对使用df完全没有直觉。关于如何选择df的其他想法?我应该看看花键的重要性吗?
在df = 10和df = 15之间做一些更多的查找,看起来df = 12是您可以最接近128生成的估计,并且仍在“合理的自由度”范围内。连同线性项,截距和单个参数项,感觉就像是一个非常饱和的模型。十二岁就可以了吗?
作为第二次更新,将平滑度从更改spline(t)
为loess(t)
会产生更好的df估计值-我应该切换到黄土平滑度吗?