首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >检验顾问提供的模型的准确性

检验顾问提供的模型的准确性
EN

Data Science用户
提问于 2016-11-30 07:00:23
回答 3查看 496关注 0票数 3

我的公司最近聘请了一家咨询公司来开发一个预测模型来检测有缺陷的作品。

我知道有很多方法来验证模型,例如,使用k倍交叉验证,我相信咨询公司会在向我们提交模型之前进行验证。

然而,在雇主方面,我如何检查顾问公司开发的模型的准确性?

有人建议,我可以给咨询公司2000-2015年的数据,并保留2016年的数据,供我们自己核对。然而,一个对2016年数据具有良好准确性的模型并不意味着它在未来将具有良好的预测能力。在我看来,保留2016年的数据进行检查就像是为验证增加了一个测试集,在我看来,这是不必要的,因为我已经进行了“k-折叠”交叉验证。

有人能建议雇主如何检查顾问的模式吗?

EN

回答 3

Data Science用户

回答已采纳

发布于 2016-11-30 17:34:48

交叉验证可以用于参数优化或模型选择,但不能评估模型的性能。

在开发模型时,您可以将数据划分为训练、验证和测试。在最好的情况下,最后只使用一次测试来对模型进行评分。你绝对应该保留2016年的数据。

如果你给出你所有的数据,很容易有一个模型学习“通过记忆”你的预期数据,但它不会很好地推广到未来几年。这太过分了。唯一知道的方法就是在2016年的未知数据上进行测试。

用于衡量模型性能时,交叉验证可以测量的不仅仅是平均精度,您还可以选择自己的特征来回答最佳的精度分数。

票数 4
EN

Data Science用户

发布于 2016-11-30 07:30:09

我同意这样的建议,即保留2016年的数据,以检查外部机构的工作。如果不检查代码,您就无法确定k折叠交叉验证过程是否已正确执行。

使用2016年数据集的另一个好处是,你可以看到在过去几年的数据上训练的模型在未来年份的数据中是否运行良好。随着Y和Xs之间真正的关系发生变化,在新的一年中可能会出现概念漂移。在交叉验证中,每个折叠与训练数据集属于同一时间段。

票数 2
EN

Data Science用户

发布于 2016-11-30 19:36:53

很多人建议保留2016年的数据,但你应该把什么作为测试集,取决于预测结果。如果缺陷工程不依赖于日期/时间,并且在模型中没有使用日期/时间,则持有随机样本(至少w.r.t )可能是有意义的。测试的日期/时间)。

如果您想要避免外推的功能,那么按照这些特性进行拆分--例如,如果您的项目有一些常见的“位置”属性,您可能希望按位置的标识进行拆分,因为您希望使用该模型在新的位置中进行预测(而且作为一个热点特性的位置对于新位置没有任何预测值,即使您的目标类与现有的位置相关)。

理想情况下,咨询公司将在这里帮助你识别你不想在预测中使用的数据集中的相关性,因为它们可能会影响你在生产中使用模型时想要的泛化。如果识别出了任何这样的东西,那么它就清楚地指出了使用该特性来分割测试数据。如果没有这样的问题,那么你也可以随机分开。

票数 1
EN
页面原文内容由Data Science提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://datascience.stackexchange.com/questions/15439

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档