使用什么选择标准,为什么?(AIC, RMSE, MAPE) - 时间序列预测的所有可能模型选择

机器算法验证 预测 模型选择 aic 有效值
2022-03-26 06:52:22

我在 SAS 中执行所有可能的模型选择以进行时间序列预测,并且基本上在数据上拟合 40 个模型,并根据选择标准将“n”个最佳模型列入候选名单。

我应该使用什么标准来入围?

根据我的阅读,SBC 和 AIC 选择了最简约的模型或参数最少的模型(由于施加了惩罚)。但如果我要拟合时间序列模型,我只有 1 个自变量或 x,即 TIME。

我还在某处读到 RMSE 极易受到异常值的影响。

2个回答

简短的回答是没有灵丹妙药。到目前为止,您提到的少数选择标准也并非全部(我相信您知道)。

因此,让我们从最常用于时间序列应用的那些开始:贝叶斯-施瓦茨准则 (BIC)、赤池准则 (AIC) 和汉南-奎因准则 (HQC)。使用这些模型选择标准的方式是选择模型的滞后长度(即过去有多少时期影响当前时期)。

这三个标准正在估计您的数据的 Kullback-Leibler 散度并渐近地选择一个真实的模型。注意我是如何说“一个”真实模型的,因为包括多余的滞后渐近没有区别(因为渐近,它们将被估计为零)。值得注意的是,AIC 会渐近地选择一个严格过拟合的真实模型,即大于最小真实模型的模型。在机器学习术语中,它很容易过度拟合。另一方面,BIC 和 HQC 渐近地选择最小的真实模型。它们具有在有限样本中选择不足的缺点,这就是为什么 AIC 在应用中通常是首选的原因。

(未惩罚的)RMSE 的主要问题是延长滞后长度(即,包括更多滞后作为解释变量)总是会产生更好的 RMSE 值。之所以如此,是因为通过包含更多解释变量,拟合不会变得更糟,而 RMSE 是拟合的直接度量。

我不知道您的确切应用,但我觉得许多从业者会比较使用 AIC、BIC 和 HQC 的最佳值,并以这种方式证明他们选择的滞后长度。

创建仅包含 n 个模型的候选列表还是选择单个模型是否有意义,在很大程度上取决于数据对“最佳”(根据所选标准)模型的支持程度。

如果很多模型“靠近在一起”,那么它们都是合理的模型,并且在您考虑了很多模型时选择其中一个或其中的一个子集是很成问题的。出于这个原因,模型平均通常是一个好主意,并且对于每个模型的预测任务权重基于prior weights×exp{0.5|AICiminjAICj|}很受欢迎。我想如果你要考虑当一个模型或少数模型获得几乎所有重量时(例如,最好的模型在 AIC 方面领先下一个模型,例如 10 到 15 左右,而不是太多考虑了模型),那么专注于这些可能是合理的。基于 AIC 的权重在预测中很受欢迎,因为这些权重与最大似然估计之间存在联系。对于这种方法的一个非常热情的观点,您可以参考 Burnham 和 Anderson 的“模型选择和多模型推理”。

正如在另一个回答中提到的,天真的 RMSE 不是一个合理的选择(尽管可以通过使用交叉验证来调整过拟合的版本),但其他标准(例如 BIC 等)也可能很有趣,尽管我个人的偏见是AIC 类型的方法。