机器学习之训练集,测试集,验证集划分
在机器学习里面有三个概念,训练集,测试集,验证集,这三个概念有时很容易被人忽略其中的区别,尤其是测试集和验证集。
之前看西瓜书的时候,接触比较多的是训练集和测试集,后来做car detection的时候,数据集里面需要做验证集。那时候只知道先划分训练集和测试集,然后将训练集的一部分作为验证集。
最近对这些概念有些新的理解:
1.训练集,测试集,验证集都是同分布的,并且互相没有交集。划分比例来说,一般训练数集+验证集:测试集=4:1,训练集:验证集=4:1,当然这些比例都是人为的。
2.测试集在于估计模型完成后的泛化误差。测试样本不能以任何形式参与模型选择,包括超参数选择
3.验证集用于挑选超参数的数据子集,尽管其与训练集没有交集,但验证集会低估泛化误差。