MLY -- 7.How large do the dev/test sets need to be?

开发集应该足够大,大到可以检测出多个算法之间的不同。例如,分类器A的分类精度是90.0%,分类器B的精度为90.1%,开发集有100个样例,则开发集不能检测出这0.1%的不同(将开发集输入分类器A、B进行分类,A、B的结果都是90个样例的类标签正确,所以不能区分A、B)。就我所见过的机器学习问题来说,100个样例的开发集确实小了点儿。一般,开发集都是1000到10000这么大。当你有了10000个样例时,你就能检测出那0.1的提高啦(注释1)(我觉得0.01也能检测出来)
对于成熟而重要的应用,例如广告,网页搜索,产品推荐,我见过一些团队为哪怕提高0.01%的精确度而努力工作,因为这对公司的利益有直接的影响。在这种情况下,开发集可以远大于10000,以便检测出更小的提高。
测试集的大小呢?
测试集应该大到在测试你的系统的整体性能时,是可信服的。一个比较流行的方法是取30%的数据作为测试集,这种方法在适量数据(100到10000个样例)时,效果很好。但在大数据时期,有的机器学习问题的样例甚至超过了十亿,此时,开发/训练集占总数据的比例减少了,但数量变多了。其实没有必要具有过大的开发/测试集,只需要能评估你的算法就行了。

[注释1]: 理论上,还可以测试算法的变化是否引起统计显著性差异。实际中,多数团队都不做这个测试(除非他们要发表学术性研究论文),我发现统计显著性检验对临时进展(interim progress,即每次改变算法获得的改进)没有什么用

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值