《机器学习》(周志华)学习笔记(二):模型评估与选择

本文详细介绍了机器学习模型的评估与选择方法,包括泛化误差概念、评估方法(留出法、交叉验证法、自助法)、性能度量(错误率、精度、查准率、查全率、F1、ROC和AUC)以及比较检验(假设检验、交叉验证t检验、McNemar检验、Friedman检验)。此外,还讨论了偏差与方差在模型选择中的作用。
摘要由CSDN通过智能技术生成

引子:对于一个任务,往往有多种算法可供选择,甚至同一种算法,参数设置不同,对应的模型也不一样,我们需要对模型进行评估与选择。评估依据是模型的泛化误差。

1.泛化误差概念理解

错误率(error rate)与精度(accuracy):根据模型分类错误的样本占中样本的比例,如m个样本中有a个分类错误,E =a/m。对应的,精度=1-a/m。
以此推广,我们将预测输出与实际真实输出的差异称之为误差(这里说的误差均为误差期望),学习器在训练集中的误差为训练误差(training error)或经验误差(empirical error),在新样本中的误差为泛化误差(generalization error)。
我们的目标是选择泛化误差小,即泛化能力强(对新样本适应性好)的模型。
影响泛化能力的重要因素——过拟合:学习器把训练样本的某些不一般特效当成“普遍规律”。过拟合不可彻底消除,可以通过一些手段减小(见后续章节)。与过拟合对应的是欠拟合,学习器学习能力低下导致的,可以通过在决策树种增加分枝或者神经网络中增加层数等手段克服。二者类比见西瓜书图示如下。
这里写图片描述

2.泛化误差评估方法

泛化误差是模型在新样品中的误差,自然无法直接得到,通常采用实验测试来对其评估。通过一个测试集的测试误差来进行近似泛化误差。这里就需要将数据集分成两部分:训练集S和测试集T,二者需要彼此互斥。划分方法常用的有一下几个。

2.1.留出法

概念:直接将数据集D 划分为两个互斥的集合,其中一个集合作为训练集,另一个作为测试集T。在S上训练出模型后,用T来评估其测试误差,作为对泛化误差的估计。
注意事项:(1)数据划分必须保证分布一致性,如采用分层采样;(2)存在多种划分方法,单次往往不可靠,一般多次划分求平均;(3)测试集小时,评估结果的方差较大, 训练集小时,评估结果的偏差较大,一般是将大约2/3~4/5 的样本用于训练,剩余样本用于测试。

2.2.交叉验证法

交叉验证法是将数据集D分为k个大小相似的互斥子集Di,每个子集尽可能保持数据分布一致。每次选取一个子集作为测试集,其余k-1个子集的并集作为训练集进行验证,这样可以进行k次验证,最后结果取k次验证结果的均值。这种方式称为“k折

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值