西瓜书第二章部分内容学习笔记

1. 经验误差与过拟合

错误率(error rate):分类错误的样本数占样本总数的比例。

如果在m个样本中有a个样本分类错误,则错误率E=a/m。

精度(accuracy):精度=1-错误率

误差 (error):学习器的实际预测输出与样本的真实输出之间的差异。

训练误差(training error)或经验误差(empirical error):学习器在训练集上的误差。

泛化误差(generalization error):学习器在新样本上的误差。目前的期望是得到泛化误差小的学习器。

为了得到在新样本上表现得很好的学习器,往往需要从训练样本中尽可能学出适用于所有潜在样本的“普遍规律”,以期望在遇到新样本时做出正确的判别。但是如果学习器将训练样本学习的太过完美,可能会将训练样本自身的一些特点当作所有潜在样本共有的一般性质,这样反而会导致泛化性能下降,即出现“过拟合”(overfitting)。与之相对的是“欠拟合”(underfitting),这是指训练样本的一般性质尚未学好。下图是过拟合与欠拟合的实际案例。

过拟合出现的原因往往是学习能力太过强大,学习到了训练样本中包含的不太一般的特性。而欠拟合出现的原因则往往是学习能力太弱。欠拟合可以通过在决策树学习中扩展分支、在神经学习中增加训练轮数等方法克服,而过拟合只能被“缓解”,无法被彻底避免。

2. 评估方法

2.1 留出法

“留出法”(hold-out)直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另一个作为测试集T,即D=S\cupT,S\capT=\varnothing。在S上训练出模型,用T评估其测试误差,作为对泛化误差的估计。

例如,D包含1000个样本,将其划分为S包含700个样本,T包含300个样本。用S进行训练后,如果模型在T上有90个样本分类错误,则错误率为(90/300)*100%=30%,精度为1-30%=70%

训练/测试集的划分要尽可能保持数据分布的一致性,避免引起额外的误差。在实际的分类任务中,至少要保证样本的类别比例类似。例如,对D进行分层采样获得含70%的训练集S和含30%的测试集T,若D中存在500个正例、500个反例,则训练集S中应该存在350个正例、350个反例,测试集T应该存在150个正例、150个反例。 

留出法缺点:训练集S与测试集T中各自样本的占比不同,会导致训练出的模型各有不同,与被评估的模型会有差别,使得评估结果不准确。该问题没有完美的解决方案。常见做法是将大约2/3~4/5的样本用于训练,其余样本用于测试。

2.2 交叉验证法

“交叉验证法”(cross validation)先将数据集D划分为k个大小相似的互斥子集,即

D=D\small 1\small \cupD\small 2\small \cup·····\small \cupD\small k,D\small i\small \capD\small j=\small \varnothing(i\small \neqj)。每个子集D\small i都尽可能保持数据分布的一致性。每次用k-1个子集的并集作为训练集,余下的子集作为测试集,这样就可以获得k组训练/测试集,从而可以获得k次训练和测试,最终返回k个测试结果的均值。交叉验证法又被称为“k折交叉验证”(k-fold cross validation)。k的最长取值为10。下图是10折交叉验证的示意图。

留一法(Leave-One-Out):交叉验证法的一个特例。即D中含有m个样本,令k=m。

留一法不受随机样本划分方式的影响,因为m个样本只有唯一的方式划分为m个子集--每个子集包含一个样本。留一法的评估结果往往被认为比较准确。

留一法缺陷:即使在理想情况下,数据集比较大时,训练m个模型的计算开销可能是难以忍受的。例如,数据集包含1百万个样本时,则需要训练1百万个模型。 

2.3 自助法

 “自助法”(bootstrapping)可以减少训练样本规模不同造成的影响,同时还能比较高效地进行实验估计。

给定包含m个样本地数据集D,每次随机从D中挑选一个样本,将其拷贝放入D’,然后再将该样本放回初始数据集D中,使得该样本在下次采样时仍有可能被采到;这个过程重复执行m次后,就得到了包含m个样本地数据集D’。D中有一部分样本会在D’中多次出现,另一部分样本不出现。样本在m次采样中始终不会被采集到地概率是 \small (1-\frac{1}{m})^{m},取极限得0.368。即初始数据集D中约有36.8%的样本未出现在采样数据集D’中。可将D’用作训练集,D/D'用作测试集。

自助法缺点:自助法产生的数据集改变了初始数据集的分布,会引入估计偏差。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值