文档章节

交叉验证

超神的小橘子
 超神的小橘子
发布于 2017/08/13 22:02
字数 485
阅读 8
收藏 0

针对经验风险最小化算法的过拟合的问题,给出交叉验证的方法,这个方法在做分类问题时很常用:

一:简单的交叉验证的步骤如下:

1、 从全部的训练数据 S中随机选择 中随机选择 s的样例作为训练集 train,剩余的 作为测试集 作为测试集 test。

2、 通过对测试集训练 ,得到假设函数或者模型 。
3、 在测试集对每一个样本根据假设函数或者模型,得到训练集的类标,求出分类正确率。

4,选择具有最大分类率的模型或者假设。

这种方法称为 hold -out cross validation 或者称为简单交叉验证。由于测试集和训练集是分开的,就避免了过拟合的现象

二:k折交叉验证 k-fold cross validation

1、 将全部训练集 S分成 k个不相交的子集,假设 S中的训练样例个数为 m,那么每一个子 集有 m/k 个训练样例,,相应的子集称作 {s1,s2,…,sk}。
2、每次从分好的子集中里面,拿出一个作为测试集,其它k-1个作为训练集

3、根据训练训练出模型或者假设函数。
4、 把这个模型放到测试集上,得到分类率。

5、计算k次求得的分类率的平均值,作为该模型或者假设函数的真实分类率。

这个方法充分利用了所有样本。但计算比较繁琐,需要训练k次,测试k次。

 

三:留一法  leave-one-out cross validation

留一法就是每次只留下一个样本做测试集,其它样本做训练集,如果有k个样本,则需要训练k次,测试k次。

留一发计算最繁琐,但样本利用率最高。适合于小样本的情况。

本文转载自:http://blog.csdn.net/u010451580/article/details/51373081

共有 人打赏支持
超神的小橘子
粉丝 1
博文 43
码字总数 1875
作品 0
太原
教程 | 一文简述如何使用嵌套交叉验证方法处理时序数据

  选自toward data science   作者:Courtney Cochrane   机器之心编译   参与:Nurhachu Null、路      本文简要讲解了交叉验证和嵌套交叉验证,并介绍了针对单个时序数据和多个...

机器之心
05/27
0
0
交叉验证(Cross Validation)原理小结

    交叉验证是在机器学习建立模型和验证模型参数时常用的办法。交叉验证,顾名思义,就是重复的使用数据,把得到的样本数据进行切分,组合为不同的训练集和测试集,用训练集来训练模型,...

张立达
2017/05/03
0
0
数据集的分割与sklearn实现

今天聊一下数据集分割的问题,在使用机器学习算法的时候,我们需要对原始数据集进行分割,分为训练集、验证集、测试集。训练集用于建立模型,验证集用于模型参数的选择,测试集用于评估选定模...

调参的命
2017/10/30
0
0
MADlib——基于SQL的数据挖掘解决方案(29)——模型评估之交叉验证

验证是评估数据挖掘模型对实际数据执行情况的过程。在将挖掘模型部署到生产环境之前,必须通过了解其质量和特征来对其进行验证,评估模型的准确性、可靠性和可用性。可以使用多种方法评估数据...

wzy0623
03/16
0
0
HAWQ + MADlib 玩转数据挖掘之(十二)——模型评估之交叉验证

一、交叉验证概述 机器学习技术在应用之前使用“训练+检验”的模式,通常被称作“交叉验证”,如图1所示。 图1 1. 预测模型的稳定性 让我们通过以下几幅图来理解这个问题: 图2 此处我们试图...

wzy0623
2017/08/29
0
0

没有更多内容

加载失败,请刷新页面

加载更多

WinDbg

参考来自:http://www.cnit.net.cn/?id=225 SRV*C:\Symbols*http://msdl.microsoft.com/download/symbols ctrl + d to open dump_file Microsoft (R) Windows Debugger Version 6.12.0002.633......

xueyuse0012
今天
2
0
OSChina 周五乱弹 —— 想不想把92年的萝莉退货

Osc乱弹歌单(2018)请戳(这里) 【今日歌曲】 @罗马的王:分享松澤由美的单曲《地球ぎ》 很久没看圣斗士星矢了 《地球ぎ》- 松澤由美 手机党少年们想听歌,请使劲儿戳(这里) @开源中国首...

小小编辑
今天
14
1
springBoot条件配置

本篇介绍下,如何通过springboot的条件配置,控制Bean的创建 介绍下开发环境 JDK版本1.8 springboot版本是1.5.2 开发工具为 intellij idea(2018.2) 开发环境为 15款MacBook Pro 前言 很多时候,...

贺小五
今天
1
0
javascript source map 的使用

之前发现VS.NET会为压缩的js文添加一个与文件名同名的.map文件,一直没有搞懂他是用来做什么的,直接删除掉运行时浏览器又会报错,后来google了一直才真正搞懂了这个小小的map文件背后的巨大...

粒子数反转
昨天
1
0
谈谈如何学Linux和它在如今社会的影响

昨天,还在农耕脑力社会,今天已经人工智能技术、大数据、信息技术的科技社会了,高速开展并迅速浸透到当今科技社会的各个方面,Linux日益成为人们信息时代的到来,更加考验我们对信息的处理程...

linux-tao
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部