周志华机器学习西瓜书速记第二章绪论模型评估与选择(一)

2.1 经验误差与过拟合

错误率:m个样本a个样本分类错误,错误率为E=a/m

精度 = 1 - 错误率,即:1-a/m

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

泛化误差:学习器在新样本上的误差。

通常来讲,训练误差很小的学习器往往过拟合,这样对新的样本的泛化误差回大很多。

于过拟合相对应的是欠拟合,这是指对训练样本的一般性质尚未学好。

2.2 评估方法

我们用一个测试集来测试学习器对新样本的泛化能力,然后以测试集上的“测试误差”作为泛化误差的近似。

注意:测试集应该与训练集互斥。

2.2.1 留出法

留出法直接将数据集D划分为两个相互斥的集合其中一个集合作为训练集S,另一个作为测试集T,即D= S并T,S交T = 空集。在S上训练出模型后,用T来测试,作为对泛化误差的估计。

2.2.2 交叉验证法

先将数据集D划分为k个集合,D1,D2,D3...Dk,为了保证每个子集与原数据集的分布的一致性,故采用分层取样的方法。

每次取k-1个集合作为训练集,另外剩余的那个集合作为测试集。这样我们就得到K组测试/训练集,返回结果为K组结果的均值。

通常把稽查验证法叫做“k折交叉验证”,k通常取10.

对比留出法,同样D划分为K个子集存在多种划分方法,为了极限因不同的划分方法的所造成的误差,我们随机划分p次,每次k组,被称作p次k组交叉验证法,返回值是p次的均值。

10次10折交叉验证和100次留出法都是进行了100次训练。

留一法

留一法是k折交叉验证的特殊形式,若存在一个数据集D内含m个样本令k = m,这样每次训练集只与原数据集少一个样本,则训练出的模型回与D训练出的模型极大的相似,所以认为留一法的精确度非常高。

但当训练集的样本量十分大的时候,留一法的开销也同样十分大,另外“没有免费的午餐”告诉我们留一法估计结果也未必比其他的评估方法准确。

2.2.3 自助法  bootstrapping

以自助采样为基础,给定包含m个样本的集合D,对D进行m次自助采样,生成一个包含m个样本的新的集合D’。

自助采样是一种有放回的均匀抽样。

因此m次抽样后D集合中有的样本回多次出现在新数据集D'中,有的元素则始终不会被抽中。

始终不被抽中的概率为(1-1/m)^m,对这个式子求极限可得到,当m趋近于无穷的时候,这个数趋近于1/e,约等于0.368,即通过大量的自助采样法后,处死数据集D中约有36.8%的样本仍未出现在采样集合D'中。

因此,我们可以将D’作为训练集,D\D'作为测试集,(\为集合减法)这样期望评估的模型和实际评估的模型都是使用m个样本训练得到的,而我们仍有36%的样本未在训练集中出现,用于测试,这样的测试结果被叫做“包外估计”。

自助法的优缺点:

一、优点

1.自助法在数据集较小,难以邮箱划分训练集/测试集的时候很有用。

2.自助法能从初始数据集中产生多个不同的训练集,对集成学习等方法有很大好处。

二、缺点

自助法产生的数据集甘比哪里初始数据集的分布,这会引入估计偏差。当数据量足够时,一般使用留出法和交叉验证法。

2.2.4 调参和最终模型

大多数学习算法都有些参数需要设定,参数对模型效果的影响巨大。

理论上调参的过程应当枚举全部参数进行比较收益选择,而实际上往往参数的取值是实数范围内的取值,因此是无法穷举全部参数可能的,而比较好的选择是,首先对参数选定一个范围和一个步长,最终候选参数可能是一个较少的数量,这往往是肌酸开销与性能折中后的结果。

而大多性能比较好的算法,参数数量往往会比较多。例如,某算法需要三个参数,而每个参数的候选值有五个,就有125种调参方式,因此肌酸开销是非常大的,以至于在很多应用中,调参对模型性能有关键的影响。

调参时往往训练集D会留出部分数据进行评估。当一旦选定了最优的模型后则需要用全部的D训练最终模型。

另外,我们把实际中遇到的数据成为测试集,把评估模型时从训练集中划分出的数据集成为验证集。     

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值