关于我对训练集、验证集、测试集的一点理解

以下是我对训练集、验证集、测试集的一点理解

1、训练集

毋庸置疑,训练集是用来对模型进行训练

2、验证集

关于验证集,我理解是:在训练集的一些批次训练后,我们想知道之前的训练效果如何,所以我们用验证集来初步评估下,如果效果还是不太好,我们就要重新去调整一些超参数(学习率、批次、批处理量等等),然后进行继续训练,试图找到更好的模型。

你可能存在的疑惑

既然你来搜索这个问题,你必定会问:测试集不是也可以做到这种效果吗?好的,这是最重要的问题,文章最后,我举个例子(我觉得你一定会理解!)

3、测试集

测试集用来干嘛呢?我们做出一个东西,肯定希望有用,不仅是我可以用,最好是别人拿到也可以用。所以,测试集我们不应该用它来调整模型,而是我们选择一个训练好的模型把他应用于生活中可能出现的数据集(这就是评估模型泛化能力的意思)。

【重点】举例解释说明验证集和测试集

好比我们做题,答案在老师手上,但我们不知道答案。括号内容为比喻内容。
step 1、训练过程(做代码编程题);
step 2 、训练到我们认为可以时(我们用我们认为正确的答案解出来时)
step 3、此时,把模型放在验证集初步评估(我们把做题结果给判断机看),如果评估效果不行,(题目没有满分,还完全正确,一些数据测试错误),重新调参继续训练(回来继续完善答案)。
step 4、反复step 2、3
step 5、无数次炼丹过后,终于整出了最后的模型,我们把模型用在测试集上,得到模型的最终结果(时间到了,我们完善了n次代码,得到了最后答案,提交上去,看看能通过多少测试数据,假如此时我们是可以看到测试数据和答案的,现在的分数就是最终你这道题拿到的分数)
【关键】如果用测试集测试后发现不行再返回去调参训练,那测试集也算是参与到训练过程了,即测试集影响了训练,不能说再用训练得到的模型在测试集上得到效果好就是真的有了很好的泛化能力(我看到题目测试集的数据和答案了,我再去改代码,让它尽量多骗一点分,可能我确实多得了一两分,但就说明我不是个菜鸡吗?非也!)。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值