机器学习(周志华)2 模型评估与选择

1 经验误差与过拟合

分类错误的样本数占样本总数的比例称为错误率,m个样本中有a个样本分类错误,错误率E=a/m;精度=1-a/m。

一般地,学习器的实际预测输出与样本的真实输出之间的差异称为“误差”。学习器在训练集上的误差称为“训练误差”或“经验误差”,在新样本上的误差称为“泛化误差”。当学习器把训练样本学得太好时,很可能把训练样本自身的一些特点当做了所有潜在样本都会具有的一般性质,导致泛化能力下降,称为“过拟合”。相对地,对训练样本的一般性质尚未学好,称为“欠拟合”。

欠拟合容易克服,如在决策树中扩展分支,在神经网络中增加训练轮数等。过拟合则很麻烦,是无法避免的,只能缓解。

2 评估方法

使用“测试集”来测试学习器对新样本的判别能力,然后以测试集上的“测试误差”作为泛化误差的近似。通常假设测试样本也是从样本真实分布中独立同分布采样而得,测试样本尽量不在训练集中出现。

包含m个样例的数据集D,进行适当处理,产生出训练集S和测试集T。

2.1 留出法

直接将D划分为两个互斥的集合,一个作为训练集,一个作为测试集。训练、测试集的划分尽可能保持数据分布的一致性,避免因数据划分引入额外的偏差,而对最终结果产生影响。从采样的角度来看,保留类别比例的采样方式通常称为分层采样。

单次使用留出法得到的估计结果往往不够可靠稳定,一般要采用若干次随即划分、重复进行实验评估后取平均值作为留出法的评估结果。一般采用若干次随机划分、重复进行试验评估后取平均值作为留出法的评估结果。

此外,一般用2/3-4/5的样本用于训练,剩余用于测试。

2.2 交叉验证法

先将数据集D划分为k个大小相似的互斥子集,即D=D_{1}\bigcup D_{2}\bigcup D_{3}\bigcup ...\bigcup D_{k},D_{i}\bigcap D_{j} = \phi (i\neq j),每个子集都尽可能保持数据分布的一致性,即从D中通过分层采样得到。

然后,每次用k-1个子集的并集作为训练集,剩下的那个子集作为测试集,从而可进行k次训练和测试,最终返回结果的均值,也称为“k折交叉验证”,k通常取10。

与留出法类似,k折交叉验证通常要随机使用不同的划分重复p次,最终的评估结果是这p次k折交叉验证结果的均值,如10次10折交叉验证。特别地,如果k=m时,称为留一法,不用重复划分,因为m个样本划分为m个子集的方式只有一个。留一法的评估结果往往认为比较准确。但是样本数据集比较大时,计算开销难以负担。

2.3 自助法

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值