ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

2021-03-22

2021-03-22 18:58:51  阅读:211  来源: 互联网

标签:03 误差 训练 22 方差 模型 2021 测试 数据


这里写目录标题

集成学习-打卡task3

优化基础模型

优化什么(目的)

在回归模型中我们常用MSE均方误差来对模型进行评价。
在这里插入图片描述

其中 f̂ (xi) 是样本 xi 用建立的模型 f̂ 预测的结果。而当我们训练好模型后,我们会遇到一个问题:模型在训练误差很小,但是测试均方误差很大时,产生这种情况的原因通常是模型出现了过拟合。而模型中的测试均方误差曲线是呈现U型曲线的如下图所示。图片引用datawhale在这里插入图片描述
图片来源于https://github.com/datawhalechina/team-learning-data-mining/tree/master/IntegratedLearning

在这里插入图片描述
图片中是MSE公式的详细推导从图可以看出影响MSE的主要由三个因素分解为 f̂ (x0)的方差、 f̂ (x0) 的偏差平方和误差项 ϵ 的方差:在这里插入图片描述
在这三个参数中:
Var⁡(ε) 为建模任务的难度,这个量在我们的任务确定后是无法改变的,也叫做不可约误差。
Var(f̂ (x0)) 模型的方差:用不同的数据集去估计 f时,估计函数的改变量。 比如说:用100个样本集得到100个线性回归模型。由于样本抽取具有随机性,得到的100个模型不可能参数完全一样,那么这100个模型之间的差异就叫做方差。我们希望得到一个稳定的模型,也就是在不同的样本集估计的模型都不会相差太大,即要求f的方差越小越好。一般来说,模型的复杂度越高,f的方差就会越大。
[Bias(f̂ (x0))]2模型的偏差是指:为了选择一个简单的模型去估计真实函数所带入的误差。 假如真实的数据X与Y的关系是二次关系,但是我们选择了线性模型进行建模,那由于模型的复杂度引起的这种误差我们称为偏差,它的构成时复杂的。偏差度量了学习算法的期望预测与真实结果的偏离程度,即刻画了学习算法本身的拟合能力。
偏差度量的是单个模型的学习能力,而方差度量的是同一个模型在不同数据集上的稳定性
“偏差-方差分解”说明:泛化性能是由学习算法的能力、数据的充分性以及学习任务本身的难度所共同决定的。给定学习任务,为了取得好的泛化性能,则需使偏差较小,即能够充分拟合数据,并且使方差较小,即使得数据扰动产生的影响小。一般而言,增加模型的复杂度,会增加模型的方差,但是会减少模型的偏差,我们要找到一个方差–偏差的权衡,使得测试均方误差最小。

怎么优化(过程)

  1. 特征提取:
    在前面的讨论中,我们已经明确一个目标,就是:我们要选择一个测试误差达到最小的模型。但是实际上我们很难对实际的测试误差做精确的计算,因此我们要对测试误差进行估计,估计的方式有多种这里只介绍:交叉验证
    介绍交叉验证之前说下,通常下数据集的划分为把整个数据集分成两部分,一部分用于训练,一部分用于验证,这也就是我们经常提到的训练集(training set)和测试集(test set)不过,这个简单的方法存在两个弊端:
    1.最终模型与参数的选取将极大程度依赖于你对训练集和测试集的划分方法。
    2.该方法只用了部分数据进行模型的训练。
    所以训练集和测试集的划分意味着我们无法充分利用我们手头已有的数据,所以得到的模型效果也会受到一定的影响。基于这样的背景,有人就提出了Cross-Validation方法,也就是交叉验证。交叉验证优势在于:能够给出测试误差的一个直接估计。交叉验证包括两种:LOOCV方法和k折交叉验证。
    LOOCV方法也包含将数据集分为训练集和测试集这一步骤。但是不同的是,我们现在只用一个数据作为测试集,其他的数据都作为训练集,并将此步骤重复N次(N为数据集的数据数量,蓝色的是训练集,黄色的是验证集)。如下图:
    在这里插入图片描述
    LOOCV有很多
    优点
    :首先它不受测试集合训练集划分方法的影响,因为每一个数据都单独的做过测试集。同时,其用了n-1个数据训练模型,也几乎用到了所有的数据,保证了模型的bias更小。不过LOOCV的缺点也很明显,那就是计算量过于大。另外选取的训练集之前间相关性大(每次都训练数据几乎是一样的),而这种大相关性会导致最终的test error具有更大的Variance。
    另外一种是K折交叉验证:我们把训练样本分成K等分,然后用K-1个样本集当做训练集,剩下的一份样本集为验证集去估计由K-1个样本集得到的模型的精度,这个过程重复K次取平均值得到测试误差的一个估计 。5折交叉验证如下图:
    在这里插入图片描述
    在测试误差能够被合理的估计出来以后,我们做特征选择的目标就是:从p个特征中选择m个特征,使得对应的模型的测试误差的估计最小。
    对应的方法有:(a)最优子集选择:向前逐步选择
    在这里插入图片描述
    图片来源于https://github.com/datawhalechina/team-learning-data-mining/tree/master/IntegratedLearning

    (b) 压缩估计(正则化):
    除了刚刚讨论的直接对特征自身进行选择以外,我们还可以对回归的系数进行约束或者加罚的技巧对p个特征的模型进行拟合,显著降低模型方差,这样也会提高模型的拟合效果。具体来说,就是将回归系数往零的方向压缩,这也就是为什么叫压缩估计的原因了。
    在这里插入图片描述
    岭回归通过牺牲线性回归的无偏性降低方差,有可能使得模型整体的测试误差较小,提高模型的泛化能力。
    为什么Losso能做到特征选择而岭回归却不能呢个做到呢?(如图:左边为lasso,右边为岭回归)
    在这里插入图片描述
    图片来源于https://github.com/datawhalechina/team-learning-data-mining/tree/master/IntegratedLearning

    椭圆形曲线为RSS等高线,菱形和圆形区域分别代表了L1和L2约束,Lsaao回归和岭回归都是在约束下的回归,因此最优的参数为椭圆形曲线与菱形和圆形区域相切的点。但是Lasso回归的约束在每个坐标轴上都有拐角,因此当RSS曲线与坐标轴相交时恰好回归系数中的某一个为0,这样就实现了特征提取。反观岭回归的约束是一个圆域,没有尖点,因此与RSS曲线相交的地方一般不会出现在坐标轴上,因此无法让某个特征的系数为0,因此无法做到特征提取。
    ©降维:
    到目前为止,我们所讨论的方法对方差的控制有两种方式:一种是使用原始变量的子集,另一种是将变量系数压缩至零。但是这些方法都是基于原始特征 x1,…,xpx1,…,xp 得到的,现在我们探讨一类新的方法:将原始的特征空间投影到一个低维的空间实现变量的数量变少,如:将二维的平面投影至一维空间。机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。
    在这里插入图片描述在这里插入图片描述

标签:03,误差,训练,22,方差,模型,2021,测试,数据
来源: https://blog.csdn.net/viras/article/details/115063823

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有