交叉验证Cross-Validation

Posted CuriousZero

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了交叉验证Cross-Validation相关的知识,希望对你有一定的参考价值。

PRML中首章绪论的模型选择,提到两个方法:

1、交叉验证(Cross-Validation)

2、赤池信息准则(Akaike Information Criterion),简称:AIC。

 

交叉验证是模型选择的一种方法,若有模型选择问题,就可以用交叉验证。例如做线性回归,你有 10 个变量,就有 (2的10次方=)1024 个模型需要选择,就可以使用交叉验证 或者 AIC。

使用交叉验证是从预测的角度去做,使用 AIC 是从模型的复杂度与模型的拟合角度去做。

 

交叉验证:

  (ref-baidu :在给定的建模样本中,拿出大部分样本进行建模型,留小部分样本用刚建立的模型进行预报,并求这小部分样本的预报误差,记录它们的平方加和。)

  如果模型的设计使用有限规模的数据集迭代很多次,那么对于验证数据会发生一定程度的过拟合,因此保留一个第三方的测试集是很有必要的。

 

例如一个 “五折交叉验证”,

将数据划分为5组,分别为 G1、G2、G3、G4、G5。
① 取G1组作为测试组,其余4组作为训练组;
② 取G2组作为测试组,其余4组作为训练组;
③ 取G3组作为测试组,其余4组作为训练组;
④ 取G4组作为测试组,其余4组作为训练组;
⑤ 取G5组作为测试组,其余4组作为训练组。
 
对5轮运行结果的表现得分求平均值。
 

以上是关于交叉验证Cross-Validation的主要内容,如果未能解决你的问题,请参考以下文章

常见交叉验证(cross-validation)

交叉验证——Cross-validation

机器学习:常见交叉验证(cross-validation)

机器学习中的交叉验证(cross-validation)

sklearn 中的交叉验证

Python为给定模型执行留一法交叉验证实战LOOCV(leave-one-out cross-validation)