交叉验证,有时亦称循环估计, 是一种统计学上将数据样本切割成较小子集的实用方法。于是可以先在一个子集上做分析, 而其它子集则用来做后续对此分析的确认及验证。 一开始的子集被称为训练集。而其它的子集则被称为验证集或测试集。

交叉验证(Cross-validation)主要用于建模应用中,例如PCR 、PLS 回归建模中。在给定的建模样本中,拿出大部分样本进行建模型,留小部分样本用刚建立的模型进行预报,并求这小部分样本的预报误差,记录它们的平方加和。这个过程一直进行,直到所有的样本都被预报了一次而且仅被预报一次。把每个样本的预报误差平方加和,称为PRESS(predicted Error Sum of Squares)。

2目的

用交叉验证的目的是为了得到可靠稳定的模型。在建立PCR 或PLS 模型时,一个很重要的因素是取多少个主成分的问题。用cross validation 校验每个主成分下的PRESS值,选择PRESS值小的主成分数。或PRESS值不再变小时的主成分数。

常用的精度测试方法主要是交叉验证,例如10折交叉验证(10-fold cross validation),将数据集分成十份,轮流将其中9份做训练1份做测试,10次的结果的均值作为对算法精度的估计,一般还需要进行多次10折交叉验证求均值,例如:10次10折交叉验证,以求更精确一点。

交叉验证有时也称为交叉比对,如:10折交叉比对

该程序实现了广义交叉验证,GCV Generalized cross-validation,用做非线性时间序列的计算。

matlab gcv,广义交叉验证相关推荐

  1. 广义交叉验证(GCV)

    广义交叉验证(Generalized Cross-Validation ,GCV) GCV=1N∑Nn=1[yn−f(Xn)]2[1−df/N]2=1NRSS[1−df/N]2GCV=1N∑n=1N[ ...

  2. 【笔记】普通交叉验证 (CV) ,广义交叉验证(GCV),图像恢复正则化参数选择

    开始的疑问是,如果考虑的问题是形如 的去噪问题,那么能用CV的方法来选择最优参数吗,假设取90%的数据作为训练集,在训练集上应该只能得到这90%的数据所对应的估计x,那要怎么得到测试集数据的估计?直觉 ...

  3. 普通交叉验证(OCV)和广义交叉验证(GCV)

    普通交叉验证OCV OCV是由Allen(1974)在回归背景下提出的,之后Wahba和Wold(1975)在讨论 了确定多项式回归中多项式次数的背景,在光滑样条背景下提出OCV. Craven和Wa ...

  4. ESL第七章 模型评估及选择 【期望】测试误差、模型偏差估计偏差、【平均】乐观、AIC、参数有效数、BIC、最小描述长度、VC/结构风险最小化、一标准误差准则/广义交叉验证、【留一】自助/.632估计

    目录 7.2 偏差.方差和模型复杂度 7.3 偏差-方差分解 7.3.1 例子:方差-偏差权衡 7.4 训练误差率的"乐观optimism" 7.5 样本内预测误差的估计.Cp和A ...

  5. matlab.10折交叉验证

    clc clear all % 导入数据 data = load('F:\work_matlab\Matlab\wdbc.txt'); [data_r, data_c] = size(data); % ...

  6. 一文帮你理解模型选择方法:AIC、BIC和交叉验证!

    一文帮你理解[模型选择方法]:AIC.BIC 和交叉验证! 本文先讲透模型选择的基本思想,再逐一叙述几种比较典型和常用的模型选择方法,希望可以帮助你理解. 一.模型选择的基本思想 模型选择的核心思想就 ...

  7. matlab中svm testacc参数,使用Matlab进行交叉验证的多类SVM的完整示例

    我目前正在混淆使用Matlab实现带有交叉验证的SVM. stackoverflow上有很多帖子提到了有关SVM及其交叉验证的信息;然而,即使使用最简单的'fisheriris'数据集也没有完整的例子 ...

  8. 交叉验证——ESL chapter7.10

    交叉验证 交叉验证是估计预测误差最简单且广泛使用的方法. 通常情况下,我们的数据量都是不足够多的,如果在本来就不多的数据集中再划分出一部分作为验证集,那可供学习的数据就更少了.为了解决这一问题,K-折 ...

  9. matlab实现留一交叉验证,留出法和交叉验证

    写论文的时候涉及到了这两种方法,这里进行总结. 评估方法 主要分三种: 留出法(分一次 互斥集) 交叉验证法(分多次 对k折形成多次互斥集) 自助法(有放回抽样) 留出法 代码如下: function ...

最新文章

  1. 字符串转换成NSDate类型的 为nil解决方法
  2. 40岁后才明白的道理:人一生奋斗余地很有限--转载
  3. leetcode63. Unique Paths II
  4. c++ builder 中的 XMLDocument 类详解(2) - 记要
  5. extjs中元数据_Extjs中Store小总结
  6. zabbix自动发现主机并加入组绑定模板
  7. 00 后的 AI 开发者进阶之道:从入门到鏖战 MIT 编程大赛 | 人物志
  8. 2018年7月第一周网站建站笔记
  9. java下载什么软件有题库_java题库app
  10. Grounded theory相关知识
  11. 复盘2020年全球医疗行业:新冠疫苗争分夺秒、跨国药企押注中国、药企整合并购不断 | 医药观察...
  12. 如何用VBA制作工资条
  13. 小鑫の日常系列故事(十)——排名次
  14. 计算机打印机安装步骤,打印机安装步骤
  15. PDF如何在线压缩?PDF压缩到最小的方法
  16. 阿里云何万青:那些女儿教会我的事(二)
  17. java鬼吹灯搬山法杖_《鬼吹灯》:深度解析搬山鹧鸪哨,为寻找雮尘珠的悲惨人生...
  18. 世界人工智能三要素:数据、算力和算法
  19. python爬取百度文库doc_Python百度文库爬虫之doc文件
  20. WSF脚本详解:JS和VBS互调用

热门文章

  1. MySQL之数据库设计六个步骤
  2. Dota2 Senate Dota2 参议院
  3. hbase hive java_hive 与 hbase 结合
  4. 基于java-Android平台实现随心明信片系统演示【附项目源码+简要论文说明】
  5. 离职一时爽,求职火葬场——教你如何把离职理由说得“清新脱俗”
  6. 7.牛批了 Android 2022高级资深面试题 一线大厂和二线大厂面试真题精选 (大疆 附答案)第七套 30k+
  7. InsecureRequestWarning: Unverified HTTPS request is being made to host ‘xx.xx.cn‘. Adding certificat
  8. C++ 负数转二进制形式
  9. 技术人写公众号为啥没人看?
  10. 打印100以内的素数