训练集,验证集,测试集的作用

 我来答
白露饮尘霜17
2022-07-19 · TA获得超过1.2万个赞
知道大有可为答主
回答量:5750
采纳率:100%
帮助的人:24.6万
展开全部
训练数据(baitrain dataset)指的是,你拿来du建模zhi型的数据,拟合数据用
验证数据dao(valid dataset)指的是,你拿来挑模型的数据,因为训练数据可以训练很多个模型,譬如,训练步长、是否正则化等等,,你用验证数据(来挑一个最好的。
测试数据(test dataset)是指,你挑完最好的了,,要看你模型的泛化能力,就要用到这个验证数据了
原则上,当你的模型在三个数据集上的表现差不多时,就说明你的模型比较稳健(robust)
当然,大多数情况都会有点过拟合,也就是在训练数据很好,在验证数据一般,在测试数据比较糟糕
转自: https://zhidao.baidu.com/question/252069310.html

有了模型后,训练集就是用来训练参数的,说准确点,一般是用来梯度下降的。而验证集基本是在每个epoch完成后,用来测试一下当前模型的准确率。因为验证集跟训练集没有交集,因此这个准确率是可靠的。那么为啥还需要一个测试集呢?

这就需要区分一下模型的各种参数了。事实上,对于一个模型来说,其参数可以分为普通参数和超参数。在不引入强化学习的前提下,那么普通参数就是可以被梯度下降所更新的,也就是训练集所更新的参数。另外,还有超参数的概念,比如网络层数、网络节点数、迭代次数、学习率等等,这些参数不在梯度下降的更新范围内。尽管现在已经有一些算法可以用来搜索模型的超参数,但多数情况下我们还是自己人工根据验证集来调。

那也就是说,从狭义来讲,验证集没有参与梯度下降的过程,也就是说是没有经过训练的;但从广义上来看,验证集却参与了一个“人工调参”的过程,我们根据验证集的结果调节了迭代数、调节了学习率等等,使得结果在验证集上最优。因此,我们也可以认为,验证集也参与了训练。

那么就很明显了,我们还需要一个完全没有经过训练的集合,那就是测试集,我们既不用测试集梯度下降,也不用它来控制超参数,只是在模型最终训练完成后,用来测试一下最后准确率。

更详细参考: https://www.cnblogs.com/ying-chease/p/9073701.html
实验室认证认可
2024-06-25 广告
CNAS能力验证的频次要求根据各子领域及实验室的具体情况而定。一般来说,为确保实验室的技术能力和结果的准确性,实验室应每年至少参加一次CNAS指定的能力验证计划。对于关键子领域或高风险领域,频次可能需要增加。同时,鼓励实验室积极参加未列入C... 点击进入详情页
本回答由实验室认证认可提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式