考虑一个我们对训练回归或分类函数感兴趣的预测设置带输入和目标,并评估其对新数据的预期泛化性能。例如,在回归设置中,我们可能想要估计我们的模型的平均绝对误差 (MAE) 或均方根误差 (RMSE) 将在看不见的数据上,我们通常通过评估我们的模型对持有的预测的预测来做到这一点——出测试集。
许多标准教科书(例如,统计学习要素的第 7 章,模型评估和选择)在我们处理来自联合分布的独立同分布样本的情况下讨论数据分区和交叉验证. 在这种情况下,构建测试集很简单:我们取一个简单的随机样本并将其称为我们的测试集。
是否有任何标准参考来讨论当数据不是独立同分布时应如何修改模型评估策略?我已经看到特定于特定设置的讨论(例如,空间数据的数据分区是关于空间数据的),但我想知道是否有涵盖多个设置的一般参考。
示例包括:
- 空间数据:模型可能更容易泛化到地理上接近训练集的点,如果我们有兴趣估计模型泛化到远离训练集的点的能力,我们需要考虑这一点在我们的数据分区/测试集构建中
- 具有自然离散组或层次结构的数据:例如,如果我们正在处理患者和医院,“我的模型如何推广到包含在训练集中的医院中的新患者”的问题不同于“我的模型如何模型推广到新医院”,我们应该相应地构建我们的测试集;我们甚至可能想要回答这两个问题,我们可以使用两个不同的测试集(一个针对被保留的患者,另一个针对被保留的医院)
- 类似地,如果处理面板数据(例如随着时间的推移观察个体),问题“我的模型在预测已经观察到的个体时如何次?”的答案可能与“我的模型对以前从未观察到的个体的第一次预测如何?”有不同的答案。
- 时间序列数据:在某些时间序列上下文中(见https://stats.stackexchange.com/a/195438/9330的例外情况),我们希望构建我们的测试集,以便它们覆盖一个完全“在未来”相对于训练集
- 更复杂的现实世界示例可能涉及相对于简单 iid 情况的多个“复杂性”:例如,我们可能正在处理时空数据,它也可能具有层次结构或组结构
是否有任何教科书或论文讨论实际问题中的交叉验证或测试集构建,其方式足以涵盖上述所有示例(可能更多)?
有关的: