泛化误差的各种交叉验证估计方法综述
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
优先出版 计 算 机 应 用 研 究 第32卷
--------------------------------
基金项目:国家自然科学基金资助项目(11171169);山西省科技基础条件平台建设项目(2013091003-0101)
作者简介:杨柳(1979-),女,山西临汾人,讲师,硕士,主要研究方向为统计机器学习、概率统计(yang_liu@);王钰(1981-),男,讲师,硕士,主要研究方向为机器学习.
泛化误差的各种交叉验证估计方法综述
杨 柳1,王 钰2
(1.山西财经大学 应用数学学院,太原 030031;2.山西大学 计算机中心,太原 030006)
摘 要:在机器学习中,泛化误差(预测误差)是用于算法性能度量的最常用指标,然而,由于数据的分布未知,泛化误差不能被直接计算。
现实中常常通过各种形式的交叉验证方法来估计泛化误差。
详细地分析了泛化误差的各交叉验证估计方法的优缺点,对照了各种方法之间的差异,提出和分析了各方法中有待进一步研究的问题和方向。
关键词:机器学习;泛化误差;交叉验证;偏差;方差 中图分类号:TP181 文献标志码:A
Survey for various cross-validation estimators of generalization error
YANG Liu 1, WANG Yu 2
(1. School of Applied Mathematics, Shanxi University of Finance & Economics, Taiyuan 030031, China; 2. Computer Center of Shanxi University, Taiyuan 030006, China)
Abstract: In machine learning, generalization error is a commonly used index for measuring the performance of algorithm. However, due to unknown data distribution, generalization error may not be directly computed. In practice, it is often estimated by various cross-validation methods. The advantages and disadvantages of the cross-validation estimators of generalization error are analyzed in detail. The difference of various methods are compared. The future research problems and directions are also put forward and analyzed.
Key Words: machine learning; generalization error; cross-validation; bias; variance
0 引言
在机器学习 (有监督学习) 的研究中,主要有三大目标: 特征选择,从所有特征中选择出一个小的特征子集,以便构造一个好的分类器;分类器 (算法) 选择,估计不同分类器的性能,从中选出最好的分类模型;模型评估,对已经选定的分类器,估计它在新数据上的预测误差。
无论是对于哪个学习任务,算法性能的度量是关键。
而泛化误差就是其中最广泛使用的一种性能指标,所谓泛化误差 (generalization error) 指的是在独立测试样本上的期望预测误差,也被称为测试误差 (test error) 或预测误差 (prediction error) [1
,2]。
然而,在实际应用中,我们很难
得到样本的精确分布,因此也无法来直接计算泛化误差,基于训练样本上的平均损失的训练误差显然是它的一个直接的估计,遗憾的是训练误差是泛化误差的一个很差的估计 (过分乐观估计),因为训练误差随着模型复杂度的增加而减小,直至减小到0。
为此,一些学者通过对训练误差改进提出了传统学习中广泛使用的诸如AIC ,BIC 等的解析估计样本内误差的方法
[3-5]。
近些年,一类通过样本重用来直接估计泛化误差的方法被
提出,如交叉验证 (cross validation),自助法 (bootstrap) [1,6]。
交叉验证方法是其中最简单且被广泛使用的方法,也因此
得到了更多学者的关注,各种不同形式的交叉验证方法被提出,包括最早的留一交叉验证,标准K 折交叉验证,RLT (Repeated Learning Testing) 交叉验证,蒙特卡罗(Monte-Carlo) 交叉验证,Bootstrap 交叉验证,5×2交叉验证,组块3×2交叉验证等[7-17]。
1 泛化误差的定义及其记号
假定数据集D={z 1,z 2,…,z n }是从一个未知的分布P 中独立抽样得到的样本,其中z i =(x i ,y i )∈Z ⊆R p+1,x i 是p 维输入向量,y i 是一维输出变量。
令f=A(D)表示在数据集D 上训练由算法A 返回的预测函数,损失函数L(A(D),z)= L(A(D),(x ,y))= Q(A(D)(x),y)表示预测A(D)(x)与观测y 之间差异的度量,例如:对于分类问题, Q(ŷ,y)=I(ŷ≠y),其中I 表示示性函数;在回归情形,Q(ŷ ,y)=‖ŷ –y ‖2 。
这样,算法A 的泛化误差定义为:
µ(n)=EPE(n)=E[L(A(D),z)]
(1)
这里对D 和z 都取期望,其中z 也是从分布P 中独立于D 抽样得到的样本。
(1)式中的期望意味着我们是对一个算法的一般性能感兴趣,而不是仅考虑手边某个特定数据集上算法的性能。
文章预览已结束
获取全文请访问
/article/02-2015-06-001.html。