【AI-1000问】训练为什么要分测试集和验证集?
2019-04-09 本文已影响0人
有三AI
往期视频(前往有三AI公众号观看)
为什么要分训练集和测试集呢?
在很多的书以及一些公开数据集中,都会将数据集分为训练集,验证集和测试集,看起来验证集和测试集并没有区别,为什么要分这两个呢?
作者/编辑 言有三
验证集和测试集的定位是不同的,一个模型需要有好的泛化能力,需要同时在训练过的数据和没训练过的数据集上取得好的结果。
所以将训练集用于训练,验证集用于调参数,然后反复迭代直到满足性能。验证集扮演的就是一个辅助模型增加泛化能力的作用。而测试集不同,它仅仅用于最后评估模型的性能。对于用于比赛的公开数据集,验证集会公开标注,测试集不会公开。
训练集和验证集一般就是从同一个数据集随机拆分,比如要训练猫脸检测,找一个公开数据集。
但是最终评估模型好坏的时候,只用我自己拍摄的数据作为测试集,如果表现很好,那就说明模型是真好。
思考
不过平时的小任务可以不必刻意分,尤其是数据少的时候。当你训练好模型之后,就去找真实场景的数据反复测试吧,那才是测试集的奥义。
如果想加入我们,后台留言吧
转载文章请后台联系
侵权必究
更多请关注知乎专栏《有三AI学院》和公众号《有三AI》