• 对交叉验证的理解


    1. 交叉验证, 每一折都对应一个模型,例如5折交叉验证就需要训练5个模型。
    2. 交叉验证重点在于验证,通过模型在验证集上的表现,来选择相应的参数,交叉验证,会让验证值更为可靠。
    3. 对于有独立测试集的数据,用不用交叉验证来调参根据实际情况,这个时候交叉验证是可有可无的,因为只要测试集是一样的,其他的不管怎么样都行。
    4. 对于需要自己划分测试集的情况,模型最终在测试集上的表现,是需要进行,交叉验证的,应该说是交叉测试,因为测试集是随机的,不具有说服力,进行交叉测试用到了全部的数据,这样更有说服力。
    5. 对于有独立测试集的情况,在划分训练集和验证集之后,同样可以使用交叉验证,训练多个模型,然后多个模型在测试集上进行测试,最后结果取平均。大家在论文上作指标比较的时候,需要通过前面论文报道结果的方式来选择对应的计算方式,这样才公平。
    6. 最终论文报道的结果都是,跑过多次,然后取最高值,因为大家都这样做(滑稽)。
    7. 通过验证集上的表现来选择模型参数,一般使用early stop。
    8. 我个人是不太喜欢交叉验证的,因为交叉验证浪费时间,神经网络训练一次需要不少时间。
    9. 我们在打比赛的时候一般需要用到交叉验证,因为这个时候的测试集没有标签,利用交叉验证我们可以得到较为可靠的验证值。
  • 相关阅读:
    laravel 解决保存Emoji 表情问题
    下载微信头像下载不了
    微信公众号开发遇到simplexml_load_string 未定义
    部署php的正确姿势
    ubuntu 安装 mysql 的正确姿势
    laravel 部署 前后端分离
    nwjs 解决手指可滑动问题
    Java8新特性Optional、接口中的默认方法与静态方法
    Java设计模式百例
    一位资深程序员大牛给予Java初学者的学习路线建议
  • 原文地址:https://www.cnblogs.com/mlgjb/p/11719925.html
Copyright © 2020-2023  润新知