你好,游客 登录
背景:
阅读新闻

大数据处理之道(实验方法<二>)

[日期:2014-12-19] 来源:CSDN博客  作者:瞭望天空 [字体: ]

一:交叉验证(crossvalidation)(附实验的三种方法)方法简介  

(1) 定义:交叉验证(Cross-validation)主要用于建模应用中,例如PCRPrincipal Component Regression) 、PLSPartial least squares regression)回归建模中。在给定的建模样本中,拿出大部分样本进行建模型,留小部分样本用刚建立的模型进行预报,并求这小部分样本的预报误差,记录它们的平方加和。这个过程一直进行,直到所有的样本都被预报了一次而且仅被预报一次。把每个样本的预报误差平方加和,称为PRESS(predicted Error Sum of Squares)。【来自wikipidiahttps://zh.wikipedia.org/wiki/%E4%BA%A4%E5%8F%89%E9%A9%97%E8%AD%89#K-fold_cross-validation

(2)分类:

 

交叉验证一般分为三类:double-fold CV即经常所说的2折交叉;10-fold交叉和LOOleaveone outCV即留一法交叉。

2折:将原始数据集DataSet均分为两份:一份作为训练集,即trainingSet,一份作为测试集,即testingSet, 然后用训练集去做训练,用测试集去验证;之后再将训练集作为测试集,测试集作为训练集进行迭代一次,将两次所得的误差经行处理作为总体数据的预测误差。 (注:这里强调一点,就是数据集一定要均分为两份,理由是:作为训练集,数据量一定要不小于测试集,所以在迭代的过程中,使得数据不出现错误情况,必须均 分。

K-折:(在这里说下K-折)是在将数据集分成K个子集,K个子集中得一个作为测试集,而其余的K-1个数据集作为训练集,最后对K个数据子集的错误计算均值,K次迭代验证是对监督学习算法的结果进行评估的方法,数据集的划分一般采用等均分或者随机划分。

LOO:这个方法是K折的一种特列,就是把数据分为N份,其实每一份都是一个样本,这样迭代N次,计算最后的误差来作为预测误差。

(3) 度量方法:在以上的交叉验证的最后都提到了数据误差,因为没验证一次都有一次数据误差,经行K折验证,进行迭代K次,这次误差的处理也有不同的方法,也就是度量方法,比如你取平均值ME,或者方差等都是可以的,还有平均标准误差等,都可以作为最后的验证误差。

(4) 下面是3-fold cross validation

 

二、实验数据处理方法

 

(1) 验证:是指把数据分为两部分,一部分作为训练集,即trainingSet,一部分为测试集,即testingSet,一般前者占数据的70%,后者占数据的30%,用训练集来进行训练,用测试集来进行检验,将最后的误差作为总体预测误差。
(注:在这里大家要注意与2折交叉验证的区别,主要在数据集的分和检验上)

(2)交叉验证:在这里就不叙述了,就是利用交叉验证的结果即作为参数选择的标准,同时也作为模型择优的标准。

(3) 实验三【来自机器学习导论】这里首先将数据分为两部分,一部分作为训练集,一部分作为测试集,用训练集做交叉验证选择最优参数,用测试集来选择最优模型。当然最后的误差也是有测试集来作为预测误差

以上是三种实验处理的方法,纠正哪种方法好,都不能做什么评论,只能说适合你的胃口,或者你专业的胃口,或者看客的胃口……

原文链接:http://blog.csdn.net/u010700335/article/details/42003381





收藏 推荐 打印 | 录入: | 阅读:
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数
点评:
       
评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款