zoukankan      html  css  js  c++  java
  • 训练集、验证集、测试集的区别与联系

    使用随机森林算法时用到了交叉验证,突然陷入沉思,有测试集的情况下用交叉验证做什么?整理思路如下:

    1、训练集,顾名思义,就是拿来训练模型的数据集,通过这个数据训练得到模型的参数;

    2、验证集,可以用来做超参数的选取与模型的选取,在没有测试集的情况下也可以评价模型的性能。

    3、测试集,用来评价模型的效果。

    总结:验证集只是参与模型的选取或者超参数的选取等等,交叉验证虽然做了多个模型,但是实际最终的模型与这多个模型无关,还是用的所有样本训练的。个人理解是如果不涉及到超参数的选取,可以不做交叉验证,即不划分专门的验证集,就拿所有的训练集和验证集建模即可。测试集只是用来评价模型的效果,最终的模型还是用全部样本训练的。

    注:

    参数:就是模型可以根据数据可以自动学习出的变量,应该就是参数。比如,深度学习的权重,偏差等

    超参数:就是用来确定模型的一些参数,超参数不同,模型是不同的(比如说:假设都是CNN模型,如果层数不同,模型不一样,虽然都是CNN模型。),超参数一般就是根据经验确定的变量。在深度学习中,超参数有:学习速率,迭代次数,层数,每层神经元的个数等等。

  • 相关阅读:
    spring boot自定义starter
    Java死锁以及命令检测
    Java线程状态切换以及核心方法
    PowerMock单元测试
    python数据结构与算法
    算法学习 并查集(笔试题目:找同伙)
    大写
    算法学习 交叉排序
    算法学习 长整数相加
    python数据结构与算法——哈希表
  • 原文地址:https://www.cnblogs.com/lmj-sky/p/15136125.html
Copyright © 2011-2022 走看看