手机版 下载桌面 设为首页

SPSS:交叉验证(简单交叉验证、k折交叉验证、留一法)

  SPSS:交叉验证(简单交叉验证、k折交叉验证、留一法)。针对经验风险最小化算法的过拟合的问题,给出交叉验证的方法,这个方法在做分类问题时很常用:

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

  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次。

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

分类标签:SPSS  交叉验证  

声明:本文转载仅出于学习和传播信息所需,并不意味着代表本站观点或证实其内容的真实性;其他网站或个人转载使用须保留本站所注“来源”,并自负相关法律责任;如作者不希望被转载或其他事宜,请及时联系我们!