机器学习模型评估与预测

1.1经验误差与过拟合

定义几个概念:
⋅ \cdot 错误率(error rate)
E = a m E=\frac{a}{m} E=ma
其中a表示样本分类错误数,m是样本总数
⋅ \cdot 精度(accuracy)为 1 − a m 1-\frac{a}{m} 1ma

⋅ \cdot 学习器的实际预测输出与样本的真实输出之间的差异称为 “误差”
⋅ \cdot 学习器在训练集上的误差称为 “训练误差”或“经验误差”
⋅ \cdot 在新样本上的误差称为 “泛化误差”

把训练样本本身一些特点当作所有潜在样本都会具有的一般性质,导致泛化性能下降,这种现象称为 “过拟合”

1.2 评估方法

通常,可以通过实验测试来对学习器泛化误差进行评估并进而做出选择,为此,需要使用一个人“测试集”来测试学习器对此新样本的判别能力,然后以测试集的“测试误差”作为泛化误差的近似。

1.2.1留出法(hold-out)

留出法直接将数据集D划分为两个互斥的集合,其中一个集合作为训练集S,另外一个作为测试集T,即D=S∪T,S∩T=空集。在S上训练出模型后,用T来评估其测试误差,作为对泛化误差的估计。
需要注意的问题:
1.训练/测试集的划分要尽可能的保持数据分布的一致性,避免因数据划分过程引入额外的偏差而对最终结果产生影响。
2.在给定训练/测试集的样本比例后,仍然存在多种划分方式对初始数据集D进行划分,可能会对模型评估的结果产生影响。因此,单次使用留出法得到的结果往往不够稳定可靠,在使用留出法时,一般采用若干次随机划分、重复进行实验评估后取得平均值作为留出法的评估结果。
3.此外。我们希望评估的是用D训练出的模型的性能,但是留出法需划分训练/测试集,这就会导致一个窘境:若另训练集S包含大多数的样本,则训练出的模型可能更接近于D训练出的模型,但是由于T比较小,评估结果可能不够稳定准确;若另测试集T包含多一些样本,则训练集S与D的差别更大,被评估的模型与用D训练出的模型相比可能就会有较大的误差,从而降低了评估结果的保真性(fidelity)。因此,常见的做法是:将大约2/3~4/5的样本用于训练,剩余样本作为测试。
在这里插入图片描述
对于留出法,除了划分为测试集,验证集还有两种划分方式。
⋅ \cdot 训练数据,验证数据和测试数据按照6:2:2的方式划分数据集
⋅ \cdot 当数据量非常大时,可以使用 98 : 1 : 1 的比例划分训练数据,验证数据和测试数据

1.2.2交叉验证法

k 折交叉验证通过对 k 个不同分组训练的结果进行平均来减少方差,因此模型的性能对数据的划分就不那么敏感。
在这里插入图片描述
⋅ \cdot 第一步,不重复抽样将原始数据随机分为 k 份。
⋅ \cdot 第二步,每一次挑选其中 1 份作为测试集,剩余 k-1 份作为训练集用于模型训练。
⋅ \cdot 第三步,重复第二步 k 次,这样每个子集都有一次机会作为测试集,其余机会作为训练集。在每个训练集上训练后得到一个模型,用这个模型在相应的测试集上测试,计算并保存模型的评估指标,
⋅ \cdot 第四步,计算 k 组测试结果的平均值作为模型精度的估计,并作为当前 k 折交叉验证下模型的性能指标。

1.2.3 自助法

在统计学中,自助法(Bootstrap Method,Bootstrapping或自助抽样法)是一种从给定训练集中有放回的均匀抽样,也就是说,每当选中一个样本,它等可能地被再次选中并被再次添加到训练集中。
数据集D中存在m个样本,运用自助抽样法,对数据集进行有放回的抽样m次后,其中始终不被采到的概率为 ( 1 − 1 m ) m (1-\frac{1}{m})^m (1m1)m,取极限得到:
lim ⁡ ( 1 − 1 m ) m = 1 e ≈ 0.368 \lim(1-\frac{1}{m})^m=\frac{1}{e}\approx0.368 lim(1m1)m=e10.368</

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值