微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

我应该将唯一的数据集拆分为训练并进行测试,还是可以将其全部用于回归问题?

如何解决我应该将唯一的数据集拆分为训练并进行测试,还是可以将其全部用于回归问题?

kaggle比赛中,我们有一个训练和测试数据集。因此,我们通常在训练数据集上开发一个模型,并使用对该算法不可见的测试数据集进行评估。我想知道如果只给我们一个数据集而没有任何测试数据集的话,那么验证回归问题的最佳方法是什么?我认为可能有两种方法

  1. 第一步,导入数据集后,将其转换为训练和测试数据集,通过这种方法,测试集直到最后一步才被算法看到。在执行预处理和特征工程之后,我们可以在训练数据集上使用交叉验证技术,或者使用train-test-split来改善模型的误差。最后,可以通过看不见的数据检查模型的质量。

  2. 我还看到,对于回归问题,一些数据科学家将整个数据集用于测试和验证,我的意思是他们同时使用了所有数据。

您能帮助我哪种策略更好吗?特别是当招聘人员只给我们一个数据集并要求我们开发一个模型来预测目标变量时。

谢谢, 医学

解决方法

  1. 将您的一个数据集划分为 培训数据集 测试数据集
  2. 在训练模型时,将训练数据集分为训练,验证和测试,然后运行模型并检查准确性并保存模型。
  3. 导入保存模型并预测测试数据集
,

您必须将Data set分为两部分:Trainingvalidation数据集。

然后将模型训练到training data set上。在validation data set上验证模型。您拥有的数据越多,模型拟合效果越好。可以使用较早拆分的验证数据集来完成模型的质量检查。您还可以通过准确性和评分参数来检查模型的质量。

检查模型的质量时,您可以创建自己的自定义数据集,该数据集与原始数据集的值相似。

在Kaggle比赛即将结束时,他们将发布实际的test data set,并在该结果上对模型结果进行排名。

原因是,当您拥有更多数据时,该算法将具有更多特征标签对来进行训练和验证。这样可以提高模型的效率。

问题中描述的方法2更好。

我还看到,对于回归问题,一些数据科学家使用 整个数据集进行测试和验证,我的意思是他们使用所有数据 同时。

一种方法不是首选,因为在竞争性平台中您的模型必须表现更好。因此,较少的训练和验证数据会影响准确性。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。