K折交叉验证的原理

见 https://www.jianshu.com/p/284581d9b189

模型评估

当使用十折交叉验证时,每次训练集为90%的数据,测试集为10%的数据。用这10%数据,我们可以计算出衡量误差的指标(例如RMSE),并且,我们还能得到10组对应测试集的预测值。接下来我们需要用这些数据做两件事情:

  1. 计算10个RMSE值的均值和标准差。K折交叉验证使用的是数据的随机部分,所以每次得到的误差值不应该变化太大。如果误差的标准差过大,说明我们的模型(和特征,超参数等)无法在测试集中获得稳定的预测结果。

  2. 将10组预测值合并为一组。例如,如果你有1000个样本点,那么使用10折交叉验证(每次使用1000/10=100个作为测试集),你会得到10组预测值,其中每组100个值,一共10*100=1000个预测值。将它们合并为一个向量后,你就得到了1000个预测值,而且它们是一一对应原始的1000个样本点的,我们把这组预测值称为oof(out-of-folds)预测值。使用oof与整个训练集(1000个样本点)的类标号列(常称为train_y),我们就可以对于整个数据集计算RMSE,使用该结果来作为模型评估的指标

代码实现

挖坑待填

参考资料

https://stats.stackexchange.com/questions/161491/how-to-evaluate-the-final-model-after-k-fold-cross-validation

K折交叉验证与模型评估相关推荐

  1. ML:模型训练/模型评估中常用的两种方法代码实现(留一法一次性切分训练和K折交叉验证训练)

    ML:模型训练/模型评估中常用的两种方法代码实现(留一法一次性切分训练和K折交叉验证训练) 目录 模型训练评估中常用的两种方法代码实现 T1.留一法一次性切分训练 T2.K折交叉验证训 模型训练评估中 ...

  2. python 交叉验证后获取模型_Python机器学习:6.2 K折交叉验证评估模型性能

    训练机器学习模型的关键一步是要评估模型的泛化能力.如果我们训练好模型后,还是用训练集取评估模型的性能,这显然是不符合逻辑的.一个模型如果性能不好,要么是因为模型过于复杂导致过拟合(高方差),要么是模型 ...

  3. Kaggle上分技巧——单模K折交叉验证训练+多模型融合

    一.K折交叉验证训练单个模型 1.1 k 折交叉验证(K-Fold Cross Validation)原理 通过对 k 个不同分组训练的结果进行平均来减少方差,因此模型的性能对数据的划分就不那么敏感, ...

  4. k折交叉验证法python实现_Jason Brownlee专栏| 如何解决不平衡分类的k折交叉验证-不平衡分类系列教程(十)...

    作者:Jason Brownlee 编译:Florence Wong – AICUG 本文系AICUG翻译原创,如需转载请联系(微信号:834436689)以获得授权 在对不可见示例进行预测时,模型评 ...

  5. 一套完整的基于随机森林的机器学习流程(特征选择、交叉验证、模型评估))...

    机器学习实操(以随机森林为例) 为了展示随机森林的操作,我们用一套早期的前列腺癌和癌旁基因表达芯片数据集,包含102个样品(50个正常,52个肿瘤),2个分组和9021个变量 (基因).(https: ...

  6. matlab-K折交叉验证与分层K折交叉验证

    文章目录 K折交叉验证有什么用? 如何实现K折交叉验证? K折交叉验证的要点:(文字版) 如何实现K折交叉验证(图片版) 如何实现K折交叉验证(matlab版) 为啥我们需要分层K折交叉验证? 如何实 ...

  7. 5折交叉验证_[Machine Learning] 模型评估——交叉验证/K折交叉验证

    首先区分两个概念:'模型评估' 与 '模型性能度量' 模型评估:这里强调的是如何划分和利用数据,对模型学习能力的评估,重点在数据的划分方法. Keywords: 划分.利用数据 模型性能度量:是在研究 ...

  8. 寻找最优模型---K折交叉验证

    目录 1.概览 2.代码 1.概览 当我们要从多个模型中快速选择一个较为合适的模型时,也可以把数据依次放到每个模型中去测试,找到泛化能力较强的那一个.虽然这是一个「笨」办法,但在实验流程上也有一些取巧 ...

  9. 交叉验证(cross validation)是什么?K折交叉验证(k-fold crossValidation)是什么?

    交叉验证(cross validation)是什么?K折交叉验证(k-fold crossValidation)是什么? 交叉验证(cross validation)是什么?  交叉验证是一种模型的验 ...

最新文章

  1. MPI派生数据类型发送接收,降低发送时间
  2. python 有效的字母异位词
  3. linux脚本定时任务,使用Linux脚本执行定时任务
  4. DRF (Django REST framework) 框架介绍(3)
  5. qq远程控制电脑方法_【技术分享】教你远程控制别人电脑
  6. 使用Spring boot,Thymeleaf,AngularJS从零开始构建一个新的Web应用程序-第3部分
  7. Shiro 权限标签
  8. 标准的SQL的解析顺序
  9. java tcp链接慢_jmeter tcp长连接性能测试
  10. listview 中内容覆盖了屏幕底部的工具栏的解决办法
  11. Instruments工具的使用
  12. Kafka开源转商业实践,助力车主无忧系统稳健 | 凌云时刻
  13. opencv cv2.copyMakeBorder()函数详解
  14. FS8P2711B户外红蓝双闪肩灯指示灯IC
  15. win10电脑右击新建没有Word、Excel怎么办
  16. Oracle中的dual表
  17. 4.1_[Java 输入输出]-全网最全 Java 控制台输入输出
  18. html中搜索栏怎么写,html搜索框怎么做
  19. 1135 mysql_Mysql实例mysql中一个普通ERROR 1135 (HY000)错误引发的血案
  20. 16年蓝桥杯第九题-交换瓶子

热门文章

  1. 【JAVA】如何判断对象已经死亡?
  2. MX450和MX330的区别
  3. MySQL MySQL基础_运算符
  4. SAP库存库龄逻辑分析
  5. 智慧城市建设解决方案,智慧公安系统
  6. d2387(d2387车次途经站点)
  7. 南阳理工学院CSDN高校俱乐部年度巡讲    ------南阳理工学院CSDN高校俱乐部
  8. 酷睿i7 10510u参数 i710510u相当于台式机什么水平 i710510u玩游戏怎么样
  9. 数据治理连载漫画:什么是元数据?
  10. Linux服务篇之DHCP原理与配置