将数据拆分为训练数据和评估数据 - Amazon Machine Learning

我们不再更新 Amazon Machine Learning 服务,也不再接受新用户使用该服务。本文档可供现有用户使用,但我们不会再对其进行更新。有关更多信息,请参阅什么是 Amazon Machine Learning

将数据拆分为训练数据和评估数据

ML 的基本目标是在用于训练模型的数据实例之外归纳。我们希望评估模型来估算其模式针对未用于训练模型的数据的归纳质量。但是,由于未来的实例具有未知的目标值,并且我们无法立即检查预测对未来实例的准确性,我们需要使用一些现在已知答案的数据来用作未来数据的代理。使用已用于训练的相同数据评估模型并没有用处,因为它会奖励可以“记住”训练数据的模型,而不是通过它进行归纳。

一种常见策略是获取所有可用的标签数据,将它拆分为训练和评估子集,通常比例为 70-80% 的数据用于训练,20-30% 用于评估。ML 系统使用训练数据训练模型来查看模式,并使用评估数据来评估训练模型的预测质量。ML 系统使用多种指标,将评估数据集的预测与真实值(称为基本实际情况)进行比较来评估预测性能。通常情况下,您可以针对评估子集使用“最佳”模型来预测您不知道目标答案的未来实例。

Amazon ML 会将通过 Amazon ML 控制台发送用于训练模型的数据拆分 70% 用于训练,30% 用于评估。默认情况下,Amazon ML 将前 70% 的输入数据按照在源数据中的显示顺序用于训练数据源,将剩余的 30% 数据用于评估数据源。Amazon ML 还允许您随机选择源数据的 70% 用于训练,而不是使用前 70%,并使用此随机子集的补充进行评估。您可以使用 Amazon ML API 来指定自定义拆分比率并提供在 Amazon ML 外部拆分的训练和评估数据。Amazon ML 还提供了拆分数据的策略。有关拆分策略的更多信息,请参阅拆分数据