训练集:含有参考答案的数据,用来训练模型的已标注数据,用来建立模型,发现规律 验证集:模型训练过程中单独留出的样本集,用于调整模型的超参数和用于对模型的能力进行初步评估 测试集:用来评估模最终模型的泛化能力,但不能作为调参、选择特征等算法相关的选择的依据。已标注数据,通常做法是将标注隐藏,输送给训练好的模型,通过结果与真实标注进行对比,评估模型的学习能力
2、划分方法:1、总体数据集划分方法: 根据已有全部标注数据,随机选出一部分数据(比如70%)作为训练数据,余下的作为测试数据
2、训练集/验证集的划分:两种方法 方法1:从训练集中,再随机选出一部分数据(比如90%)作为训练数据,余下的作为验证数据(不好)
方法2:交叉验证法先将训练集D划分为k个大小相似的互斥子集,每个子集都尽可能保持数据分布的一致性,即从D中通过分层采样得到。然后,每次用k-1个子集的并集作为训练集,余下的那个子集作为验证集,这样就可获得k组训练/验证集,从而可进行k次训练和验证,最终返回的是这个k个测试结果的均值
通常把交叉验证法称为“k折交叉验证”, k最常用的取值是10,此时称为10折交叉验证 具体做法: 将训练集分为10份,其中9份作为训练集,1份作为验证集,做10次验证后,求平均,从而得到该模型的评分
得出几个模型的评分后,进行比较,从而得出最优的超参数 使用交叉验证的原因: 交叉验证用来选择最优的超参数,代替了原来单个 验证集的功能
假设λ=1,2,3,4,5 分别将其带入模型,训练模型进行10折交叉验证,此时训练模型次数为50次,进行5个模型的评分比较后,选出最优的超参数后,随后需要将整体训练集(训练集+验证集)送进去,训练出最终模型 故 需要训练模型 50+1 次