验证泛化误差
- 在一个数据集上估计误差,数据集只能使用一次
- 验证数据集:可以被使用多次
基本是训练数据集中的一部分
当使用“test”时,大多数时候指的是验证数据集
生成验证数据集方法
1、数据随机分入训练集或验证集
总是随机选n%的数据作为验证集
n=50,40,30,20,10
当分离非独立同分布的数据时要额外注意
- 时序性数据:房价、股票价格等
验证集应该在训练集之后 - 属于同一组的样例:相同人的照片
在组之间分 - 不平衡的数据
对小的类采样率要高
2、K折交叉验证 - 适用于数据不充足的数据
- 算法:
将数据集分成K份
对i=1,2,…,K
使用第i份数据作为验证集,其他作为训练集 - 一般K=5或10
常见错误
- 90%以上极好的结果是由于bug存在
- 验证集中有训练集的样本
原始数据中有重复的数据
在数据融合时常发生:将从搜索引擎中找到的图片用于验证模型 - 信息泄露
经常发生于非独立同分布的数据:用未来预测过去