GAM模型选择

机器算法验证 r 模型选择 广义加法模型 毫克CV
2022-03-28 19:43:33

我正在拟合 GAM(在 R 中使用mgcv)来计算数据,并且不确定如何从竞争模型中进行选择。在我的模型规范中,我将"ts"其用作平滑基础和负二项分布。据我了解,这实质上为平滑增加了额外的惩罚,因此有可能在模型拟合期间帮助完全排除某些项。

我采用的建模策略如下

我首先拟合一个全局模型(即包含我所有感兴趣的自变量),例如(N~s(x1)+s(x2)+s(x3)+s(x4)). 当我发现该术语x3的 EDF 实际上等于 0 并且x4在 0.05 水平上不显着(但 EDF>1)时,我随后通过消除这两个术语来拟合模型,即N~s(x1)+s(x2).

当我比较这两个模型并发现嵌套模型(现在所有项显着且非零 EDF)具有较低的偏差解释时,这意味着什么?这也是识别重要预测变量的合理方法吗?

任何建议将不胜感激。

1个回答

如果您对每个术语使用额外的惩罚,则只需拟合模型即可(从选择的角度来看)。这些惩罚的重点是允许在样条基扩展和摆动函数中完全平滑函数的收缩。模型拟合的结果说明了选择/收缩。如果您删除无关紧要的术语然后重新拟合,则推理结果(例如在summary()输出中)将不包括先前选择的“效果”。

假设您有一组精心挑选的协变量并且可以拟合完整模型(每个协变量的平滑加上您想要的任何交互的模型),您可能应该只使用缩小的完整模型的结果拟合。

如果一个术语有效地使用 0 自由度,则它对拟合/预测完全没有影响。对于具有正 EDF 的非显着项,将它们保留在您有效地说明这些协变量具有小但非零的影响。如果您按照您的建议删除这些术语,则您明确表示效果为零。

简而言之,不适合简化模型;使用应用了收缩的完整模型。

简化模型解释的偏差可能较低,因为它具有较少的项来解释响应的变化。这有点像R2随着您添加协变量而增加的模型。