西瓜书 机器学习 南大周志华 第二章 概念导读

此文字数5845,看完时间约为。。。。。 当然看自己的理解能力了,第二章的内容基本都在这里,根据自己的的理解而编写的。
欢迎大家一起讨论学习!

2.1经验误差与过拟合

误差 : 学习器上的实际预测输出与样本真实输出之间的差异。

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

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

过拟合: 学习器学习能力过强,把训练样本自身独有的特点当作所有潜在样本的一般性质,导致泛化性能下降。

在这里插入图片描述

2.2 评估方法

评估学习器的好坏即评估其泛化误差。

D:数据集 S:训练集 T:测试集

D中产出S与T的方法:

1、留出法(hold - out): 直接把D划分为互斥的S与T,即D = S∪T,S∩T=空集(我的输入法打不出空集)。
一般要采取若干次随机划分、重复进行实验评估后取平均值作为留出法的评估结果。
划分比例: 训练集2/3~4/5,剩下的就测试集了。

2、交叉验证法(cross validation): 先采用分层抽样将数据集D划分为k个大小相似的互斥子集,每次采用k-1组子集作为训练集, 剩余作为测试集。重复取k次训练集,即得到k组测试结果。返回k组数据的均值。

在这里插入图片描述
k折交叉验证(k-fold cross validation): 交叉验证法评估结果的稳定性和保真性在很大程度上取决于k的取值,为强调这一点,通常把交叉验证法称为“k折交叉验证”(k-fold cross validation)。

p次k折交叉验证: 即将数据集D划分为k个大小相似的互斥子集这一步骤进行p次,得到p×k个评估结果,返回均值。

留一法: 假定数据集D有m个样本,k=m,m个样本只有唯一的方式划分k = m个子集,因此留一法不受随机划分的影响,留一法在数据集较小的情况下用。(较为准确)

3、自助法: 以自助采样法为基础。(减少训练样本规模不同所造成的影响)

给定包含m个样本的数据集D,对它进行采样产生数据集次D: 随机从D中挑出一个样本,拷贝放入数据集次D中,再将原样本放回数据集D中,下次随机挑选仍可以被挑到,这个过程执行m次,我们就得到了m个样本的数据集次D,这就是自助采样的结果。

通过自助采样,初始数据集D中约有36.8%的样本未出现在数据集次D中,因此,我们可以用次D做训练集,D\次D作为测试集,这样实际评估的模型期望评估的模型都使用了m个样本,但我们仍有约1/3的、没在训练集中出现的样本作为测试集,测试结果称为**“包外估计”**。
(在训练集较小、难以有效划分训练集、测试集时使用)
4、调参与最终模型: (之后补上)

2.3 性能度量

定义: 对学习器的泛化性能进行评估,不仅需要有效可行的实验评估方法,还需要有衡量模型泛化能力的评价标准,这就是性能度量。(反映任务需求)

回归任务最常用的性能度量是 “均方误差”
在这里插入图片描述
更一般的,对于数据分布d和概率密度函数p(·),均方误差可描述为
在这里插入图片描述
2.3.1 错误率与精度 (适用于二分类任务,也适应于多分类任务)

错误率: 分类错误样本数占总样本数的比例。
在这里插入图片描述
精度: 分类正确的样本数占样本总数的比例。
在这里插入图片描述
2.3.2 查准率(precision)、查全率(recall)与F1(harmonic mean )
True positive 真正例,False positive 假正例,True negative 真反例,False negative 假反例,TP+FP+TN+FN = 样例总数,如图:
在这里插入图片描述
查准率P和查全率R分别定义为:
在这里插入图片描述
即 查准率P=真正例/预测结果的正例,查全率R=真正例/真实情况的正例。

P-R图直观显示出学习器在样本总体上的查全率、查准率。 如下图:
在这里插入图片描述
根据P-R图来判断学习器的性能:

若一个学习器的P-R曲线被另一个学习器的P-R曲线所包围,则可断言后者的性能优于前者;
“平衡点”(Break - Even Point,简称BEP),它是“P = R”时的取值,因此,A的性能优于B的;(P-R曲线交叉时用此判断)
“调和平均”(harmonic mean ):(更常用)
F1=
在这里插入图片描述
F1度量的一般形式——Fβ,能让我们表达出对查准率\查全率的不同偏好,它定义为
在这里插入图片描述
其中β>0度量了查全率对查准率的相对重要性。(调和平均更重视较小值)
β<1,查准率具有更大影响;
β=1,退化为标准F1;
β>1,查准率具有更大影响。
那些什么宏P、宏R以及宏F1就不讲了,自己去看书吧,即平均,or平均所求。

2.3.3 ROC与AUC
学习器将测试样本进行排序,“最可能”是正例的排在最前面,“最不可能”是正例的排在最后面。分类过程相当于是以某个 “截断点” (cut point)将样本分为两部分,前为正例,后为反例。
若更重视“查准率”,选择更靠前的位置进行截断;若更重视“查回率”,选择更靠后的位置进行截断。
排序本身质量的好坏,体现了学习器“一般情况下”泛化性能的好坏。
“ROC曲线 - 受试者工作特征” (Receiver Operating Characteristic )则是是从这个角度出发来研究学习器的泛化性能的有力工具。
ROC曲线的纵轴是“真正例率”(True Positive Rate 简称TPR),横轴是“假正例率”(False Positive Rate 简称FPR),两者定义为
在这里插入图片描述
即TPR = 真正例/真实情况的正例,FPR = 假正例/真实情况的反例

图2.4(a)是ROC图的示意图,对角线对应随机猜测模型,而(0,1)对应将所有正例排在反例之前的理想模型。现实任务中通常利用有限个测试样例来绘制ROC图,无法产生图2.4(a)的光滑曲线,只能绘制出图2.4(b)所示的近似ROC曲线。
ROC曲线绘制过程: 给定m+个正例和m-个反例,根据学习器预测结果对样例进行排序,把所有样例均预测为反例,此时TPR和FPR均为0,在(0,0)处标记一个点,然后依次将每个样例划分为正例,设前一个标记点坐标为(x,y),当前若为真正例,则对应标记点的坐标为(x,y+1/m+),当前若为假正例,则对应标记点坐标为(x+1/m+,y),然后用线段连接相邻点即可
在这里插入图片描述
类似P-R图,若一个学习器的ROC曲线被另一个学习器的曲线包住,则可断言后者性能优于前者;若两个学习器的ROC曲线交叉,可以通过比较ROC曲线下的面积,即AUC来判断。在这里插入图片描述
给定m+个正例和m-个反例,令D+和D-分别表示正、反例集合,排序“损失”(loss) 定义为在这里插入图片描述
L(rank)对应得事ROC曲线之上的面积:若一个正例在ROC曲线上对应的标记点的坐标为(x,y),则x恰是排序在其之前的反例所占的比例,即假正例率。(说实话这句话我也不是特别明白,请知道的大佬赐教)因此有
在这里插入图片描述
2.3.4 代价敏感错误率与代价曲线

为权衡不同类型错误所造成的不同损失,可为错误赋予 ”非均等代价“
在这里插入图片描述
一般来说,cost[ii] = 0;若将第0类判别为第1类所造成的损失更大,则cost[01] >cost[10]; 损失程度相差越大,cost[01]与cost[10]的差值也就越大。
“代价敏感” (cost sensitive)错误率为
在这里插入图片描述
类似的,可给出基于分布定义的代价敏感错误率,也可给出其他一些性能度量,如精度的代价敏感版本。
在非均等代价下,ROC曲线不能直接反映学习器的期望总体代价,而 “代价曲线”(cost curve) 可达到此目的。代价曲线图的横轴是正例概率代价
在这里插入图片描述
其中p表示正例的概率,纵轴是取值为[0,1]的归一化代价。
在这里插入图片描述
代价曲线的绘制很简单:设ROC曲线上点的坐标为(TPR,FPR) ,则可相应计算出FNR=1-TPR,然后在代价平面上绘制一条从(0,FPR) 到(1,FNR) 的线段,线段下的面积即表示了该条件下的期望总体代价;如此将ROC 曲线土的每个点转化为代价平面上的一条线段,然后取所有线段的下界,围成的面积即为在所有条件下学习器的期望总体代价,如图所示:
在这里插入图片描述
2.4比较检验
先使用某种实验评估方法,测得学习器的某个性能度量结果,再通过统计假设检验方法对其性能度量进行比较。
影响学习器性能评估比较的几个重要因素:

第一,我们希望比较的是泛化性能,而实验评估方法让我们得到的是测试集上的性能,两者的对比结果未必相同;
第二,测试集上的性能与测试集本身的选择有很大关系;
第三,很多机器学习算法本身具有一定的随机性
概率论还没学,之后在另一篇补上。
若测试集上观察到A比B的性能好,基于假设检验结果我们可以推断出A的泛化性能是否在统计意义上优于B,以及这个结论有多大的把握。(先知道这个就好了)
2.5 偏差与方差
下一篇吧,这一篇篇幅太长,看得你们恶心。哈哈哈
公式图都是“借”了别人的,感谢!!!!

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
1. 什么是泛化能力?泛化能力和过拟合之间有什么关系? 泛化能力是指模型在新的、未见过的数据上的表现能力。模型的泛化能力与其对训练数据的拟合程度有关,通常来说,过拟合的模型泛化能力较差。 2. 什么是交叉验证?交叉验证的作用是什么? 交叉验证是一种通过将数据集分成若干个子集来进行模型评估的方法。具体地,将数据集分成k个子集,每个子集都轮流作为测试集,其余子集作为训练集,重复k次,最终得到k个模型的评估结果的平均值。交叉验证的作用是提高模型评估的可靠性和泛化能力。 3. 留出法、k折交叉验证和留一法的区别是什么?它们各自适用于什么情况? 留出法是将数据集分成两部分,一部分作为训练集,另一部分作为测试集。留出法适用于数据集较大的情况。 k折交叉验证是将数据集分成k个子集,每个子集都轮流作为测试集,其余子集作为训练集,重复k次,最终得到k个模型的评估结果的平均值。k折交叉验证适用于数据集较小的情况。 留一法是k折交叉验证的一种特殊情况,即将数据集分成n个子集,每个子集都作为测试集,其余子集作为训练集,重复n次。留一法适用于数据集较小且样本数较少的情况。 4. 为什么要对数据进行预处理?数据预处理的方法有哪些? 数据预处理可以提高模型的表现,并且可以减少过拟合的风险。数据预处理的方法包括:标准化、归一化、缺失值填充、特征选择、特征降维等。 5. 什么是特征选择?特征选择的方法有哪些? 特征选择是指从所有特征中选择出对模型预测结果有重要贡献的特征。特征选择的方法包括:过滤式方法、包裹式方法和嵌入式方法。其中,过滤式方法是基于特征间的关系进行特征选择,包裹式方法是基于模型的性能进行特征选择,嵌入式方法是将特征选择嵌入到模型训练中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值