首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个

17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个

作者头像
YingJoy_
发布2018-05-30 10:48:38
4270
发布2018-05-30 10:48:38
举报
文章被收录于专栏:应兆康的专栏应兆康的专栏

17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个

假设你有一个含有5000个样本的大型开发集,其中有20%的错误率。这样,算法对约1000个图片进行错误分类。手动检查1000张图片是非常耗费时间的, 所以我们可能决定在错误分析中不使用所有的图片。 在这种情况下, 我会明确的将开发集分为两个子集,只看其中一个子集,另一个不看。你可能会在你查看的那部分数据中过拟合,此时你可以使用那部分未使用的数据来进行调参。

《17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个》
《17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个》

继续上面的例子,在该例子中算法错误分类5000个开发集样本中的1000个。假设我们想手动检查约100个错误样本(错误分类的10%)进行分析。你应该随机选择10%的开发集,并将其放入我们称之为Eyeball开发集(Eyeball dev set)中,以提醒我们正在使用它。(对于语音识别项目,你的数据集为语音,你需要一个一个听它们,你可以将它们称为Ear dev set)。因此,Eyeball开发集有500个样本,其中我们预计算法会错误分类约100个。 开发集的第二个子集叫做Balckbox开发集(Blackbox dev set),它将拥有剩下的4500个样本。你可以使用Blackbox开发集,通过测量它们的错误率来自动评估分类器。也可以使用它来选择算法或调整参数。但是,你应该避免使用它。我们使用“Blackbox”术语是因为我们只使用数据集的子集来获得分类器的“Blackbox”评估。

《17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个》
《17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个》

为什么我们将开发集明确的分为Eyeball开发集和Blackbox开发集呢?如果你使用Eyeball进行开发的话,你的算法可能会过拟合。如果你发现Eyeball开发集比Blackbox开发集性能提升的更快,你已经过拟合Eyeball开发集。在这种情况下,你可能需要一个新的Eyeball开发集,将更多Blackbox开发集中的样本移至Eyeball中。也可以通过获取新的标注数据来获得。 将开发集明确分为Eyeball和Blackbox然后手动误差分析可以让你知道何时在Eyeball上导致过拟合。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 17. 如果你有一个很大的开发集,把它分为两个子集,只着眼于其中一个
相关产品与服务
语音识别
腾讯云语音识别(Automatic Speech Recognition,ASR)是将语音转化成文字的PaaS产品,为企业提供精准而极具性价比的识别服务。被微信、王者荣耀、腾讯视频等大量业务使用,适用于录音质检、会议实时转写、语音输入法等多个场景。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档