大数据处理之道(实验方法<二>)
一:交叉验证(crossvalidation)(附实验的三种方法)方法简介
?
?
(1)?定义:交叉验证(Cross-validation)主要用于建模应用中,例如PCR(Principal Component Regression) 、PLS(Partial least squares regression)回归建模中。在给定的建模样本中,拿出大部分样本进行建模型,留小部分样本用刚建立的模型进行预报,并求这小部分样本的预报误差,记录它们的平方加和。这个过程一直进行,直到所有的样本都被预报了一次而且仅被预报一次。把每个样本的预报误差平方加和,称为PRESS(predicted Error Sum of Squares)。【来自wikipidia:https://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交叉和LOO(leaveone out)CV即留一法交叉。 K-折:(在这里说下K-折)是在将数据集分成K个子集,K个子集中得一个作为测试集,而其余的K-1个数据集作为训练集,最后对K个数据子集的错误计算均值,K次迭代验证是对监督学习算法的结果进行评估的方法,数据集的划分一般采用等均分或者随机划分。 LOO:这个方法是K折的一种特列,就是把数据分为N份,其实每一份都是一个样本,这样迭代N次,计算最后的误差来作为预测误差。 (3)?度量方法:在以上的交叉验证的最后都提到了数据误差,因为没验证一次都有一次数据误差,经行K折验证,进行迭代K次,这次误差的处理也有不同的方法,也就是度量方法,比如你取平均值ME,或者方差等都是可以的,还有平均标准误差等,都可以作为最后的验证误差。 (4) 下面是3-fold cross validation 二、实验数据处理方法 (注:在这里大家要注意与2折交叉验证的区别,主要在数据集的分和检验上) (2)交叉验证:在这里就不叙述了,就是利用交叉验证的结果即作为参数选择的标准,同时也作为模型择优的标准。 (3)?实验三【来自机器学习导论】这里首先将数据分为两部分,一部分作为训练集,一部分作为测试集,用训练集做交叉验证选择最优参数,用测试集来选择最优模型。当然最后的误差也是有测试集来作为预测误差。以上是三种实验处理的方法,纠正哪种方法好,都不能做什么评论,只能说适合你的胃口,或者你专业的胃口,或者看客的胃口……? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |