PowerGrid Inc 训练了一个模型,用于预测存储在 S3 数据湖中多年的每小时电力负荷,并使用 SageMaker Processing 作业进行特征工程。团队曾考虑在 SageMaker 上进行超参数调优时使用标准 k 折交叉验证(scikit-learn KFold,shuffle=False),但担心出现时间泄漏。哪种验证策略和 SageMaker 集成是避免泄漏同时支持稳健超参数调优的最佳实践?
选择一个答案
点击一个选项来检查您的答案。
正确答案: 实现步进式(滚动原点)验证,将其作为多个 SageMaker Training 作业(每个折叠一个)或基于 SageMaker Processing 的编排来实现,确保每个折叠仅在过去数据上进行训练,并在未来窗口上进行验证。.
为什么这是答案
对于时间序列数据,标准 k 折交叉验证(即使 shuffle=False)仍可能导致时间泄漏,因为它可能在训练集中包含来自未来的数据。步进式(滚动原点)验证(也称为时间序列交叉验证)是最佳实践,因为它模拟了模型在生产中遇到的情况。每个折叠都使用一个不断增长的训练集(仅包含过去数据)来预测未来的数据窗口。这可以通过 SageMaker Processing 作业进行编排,或者为每个折叠启动单独的 SageMaker Training 作业来实现,从而确保模型仅根据历史信息进行训练和评估,有效避免了时间泄漏。留一法交叉验证对于大型时间序列数据集计算成本过高且不适合,因为它没有考虑时间依赖性。单个保留验证拆分虽然避免了泄漏,但无法提供对模型泛化性能的稳健评估,可能导致超参数调优结果不稳定。
通过考试 — 无需无休止地寻找答案
将本次考试的所有验证问题和解释集中在一处,节省数小时的准备时间。1,000+ 认证 · 20+ 语言 · 免费开始。
更快通过考试 → 无需银行卡