训练集、验证集以及测试集的区别

1、数据集的划分:

训练集:含有参考答案的数据,用来训练模型的已标注数据,用来建立模型,发现规律
验证集:模型训练过程中单独留出的样本集,用于调整模型的超参数和用于对模型的能力进行初步评估
测试集:用来评估模最终模型的泛化能力,但不能作为调参、选择特征等算法相关的选择的依据。已标注数据,通常做法是将标注隐藏,输送给训练好的模型,通过结果与真实标注进行对比,评估模型的学习能力

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 次

  • 11
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值