AI工程师成长之路--机器学习之模型评估与选择

本文介绍了机器学习中的模型评估与选择,包括误差与拟合的概念,如错误率、精度、欠拟合和过拟合。讲解了模型的评估方法,如留出法、交叉验证法、自助法,并探讨了各种方法的优缺点。此外,还讨论了性能度量,如错误率、精度、查准率、查全率、F1值以及ROC AUC,并介绍了比较不同模型的检验方法,如假设检验、交叉验证t检验、McNemar检验和Friedman检验。最后,文章提到了偏差、方差和噪声在模型性能中的作用。
摘要由CSDN通过智能技术生成

机器学习之模型评估与选择

开篇简介:本文是博主结合前辈经验和自身的认识写的博文,有不少博主自身理解还不太透彻,因为考虑到文章的完整性,有些部分需要引用的前辈的一些方法,望谅解。由于文章专业化内容过多,会影响阅读体验,在这里建议大家难以理解的部分先不要去深究,等待需要用到的时候再去深入研究一下。本博文大家可以先保存以后用到时候当做资料参考,希望能帮助到大家一点点。

1.误差与拟合

错误率 = a个样本分类错误/m个样本

精度 = 1 - 错误率

误差:模型的预测输出与真实值之间的差异

训练误差:通过已知的样本数据进行学习,从而得到模型的过程,这个过程中产生的误差

泛化误差:具体、特殊到一般的过程称为泛化。对机器学习模型来说,泛化是指模型作用于新的样本数据(非训练集),这个过程产生的误差

欠拟合和过拟合

过拟合:某个模型在训练集上表现很好,在新样本上表现差,导致一些非普通规律被模型接纳和体现,反之称为欠拟合,即模型对训练集的一般性质学习较差

模型选择可以通过分析、评估模型的泛化误差,选择泛化误差最小的模型

2.模型的评估方法

(评估思路:因为待测数据集全集几乎拿不到,我们使用测试集进行泛化测试,用测试误差即为泛化误差的近似)

注意点:测试集和训练集尽可能互斥,测试集和训练集独立同分布

2.1留出法

留出法:将已知数据集分成两个互斥的部分,其中一个用来训练模型,另一个部分用来测试模型,评估其误差,作为泛化误差的估计。

注意点:两个数据集的划分要尽可能的保持数据分布一致性,避免因数据划分过程引发的偏差。

下面看个例子:

在只有一个包含m个样例的数据集D,从中产生训练集S和测试集T。

D分为两个互斥的集合,一个作为S,一个作为T。

分层采样:S和T中正例和反例比例一样。

例如D包含500个正例,500反例。分层采样获得含70%样本的S,有350正例,350反例;30%样本的T,有150正例,150反例。

一般采用随机划分、重复进行实验评估后取平均值作为留出法的评估结果

例如,进行100次随机划分,每次产生一个训练/测试集用于实验评估,100次后得到100个结果,而留出法返回的则是这100个结果的平均。

弊端:T比较小,评估结果不够稳定准确,偏差大。

常见将大约2/3~4/5的样本用于训练,剩余样本用于测试。

2.2交叉验证法(留一法)

将D划分为k个大小相似的互斥子集。(D通过分层采样得到每个子集Di,保持数据分布一致性)。每次用k-1个子集的并集作为训练集,余下那个作测试集。即可获得K组训练/测试集,进行K次训练和测试,最终返回k个测试结果的均值。也称”k折交叉验证”。

为减小因样本划分不同而引入的差别,k折交叉验证要随机使用不同的划分重复p次,最终评估结果是这p次k折交叉验证结果的均值,即进行p*k次训练/测试。

留一法:K可以根据实际情况设置,充分利用了所有样本,多次划分,评估结果相对稳定。m个样本划分成m个子集,每个子集包含一个样本。留一法中被实际评估的模型与期望评估的用D训练出来的模型很相似,因此,留一法的评估结果往往被认为比较准确。

留一法缺陷:数据集较大,计算比较繁琐,需要进行K次训练和评估。例如,数据集包含100w个样本,则需训练100w个模型。且留一法的估计结果未必比其他评估法准确。

2.3自助法(有放回的抽样测试

试样本量较小的时候可以通过自助法产生多个自助样本集,且有约36.8%的测试样本。

例如:从m个样本的数据集D,随机采样(选)一个样本,拷贝入训练D’,放回,继续随机挑选,直至m次。

样本在m次采样中始终不被踩到的概率(1-1/m)^m。

  

实际评估的模型与期望评估的模型都使用m个训练样本,而仍有约1/3的没有在训练集的样本用于测试。

自助法在数据集较小、难以有效划分训练/测试集时很有用。在初始数据量足够时,留出法和交叉验证法更常用。

 

2.4调参与最终模型

①选择适合的学习算法

②对算法参数进行设定,调参

 

3.性能度量

性能度量:评价模型泛化能力的标准,对不同的模型有不同的评价标准。回归模型的性能度量通常选用均方误差。

给定样例集D={(x1,y1),(x2,y2),……,(xm,ym)},yi是对xi的真实标记,要评估学习器f的性能,就要把学习器预测结果f(x)与真实标记y进行比较。

均方误差:

   

数据分布D和概率密度函数p(.),均方误差:

  

3.1分类算法常用的性能度量

错误率:分类错误的样本数占样本总数的比例。

  

精度:分类正确的样本数占样本总数的比例。

  

数据分布D和概率密度函数p(.)。

错误率:

  

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值