首先要明白训练集、验证集、测试集的含义,简单来说:
1. 训练集是用来training模型,调整对应的parameters(例如weights)
2. 验证集是用来tuning模型的 hyperparameters(例如architecture,训练前就已经决定好的parameters,例如有多少hiden layers,这也是它也被称为开发集的原因)
3. 测试集用来获得最终模型的performance,例如正确率等
有个这个常识,就知道怎么划分了,譬如你有一个数据集,首先要做一下
shuffle,划分之前要保证三个数据集有相同的数据分布,如下图,有这个基础,测试和验证集才有意义。
至于怎么划分,需要看具体的case,参考斯坦福大学的deep learning课程 https://cs230-stanford.github.io/train-dev-test-split.html,没有具体的标准,不过尽量让验证集和测试集不要太少,例如1000000图片集,验证和测试不要低于10000,即1%,如果数据量不够大的话,通常会按照80-10-10的比例:
注意:random不是完全随机,需要保证reproducible
好了,关于这个话题就说到这里,遇到类似的问题,怎么样找到合适的答案,首先要找第一手资料,不要去在百度上乱搜一气,最好直接找到基础资料,本例中就是用Stanford学校的课程作为输入,就不会走偏了。
欢迎关注“行知漫步”,一起学习、探讨新技术应用
多说 css样式,css 表格隔行,css媒体实训,eclipse中css放哪,css嵌入方式内联式,css制作自我介绍范文,css中width auto