简述如何解决过拟合和最小二乘法的本质

1. 过拟合

过拟合是指模型为了得到一致假设而使假设变得过于严格,也就是说模型对训练数据的学习有点过头。模型并没有学习数据的整体分布,而是学习了每个数据点的预期输出。这就好比你在做数学题的时候,你只记准了某些特定问题的答案是什么,但不知道解题的公式。这就造成模型无法泛化。如同一个人在他熟悉的领域畅通无阻,而一旦迈出这个领域就不知所措了。
怎样发现过拟合?

如上所说,过拟合的一个典型特征就是模型不能泛化。如果想测试模型是否具有泛化能力,一个简单的方法就是将数据集分成两部分: 训练集 和 测试集 。训练集包含80%的可用数据,用于训练模型。测试集包含剩余的20%可用数据,用于测试模型在它从未见过的数据上的准确率。实际上分成三部分效果会更好:60%的训练数据集,20%的测试数据集和20%的验证数据集。通过分割数据集,我们可以用每个数据集去检验模型的性能,以深入了解模型的训练过程。

2. 如何防止过拟合

2.1 从模型&数据角度

获取更多数据 你的模型可以存储很多很多的信息,这意味着你输入模型的训练数据越多,模型就越不可能发生过拟合。原因是随着你添加更多数据,模型会无法过拟合所有的数据样本,被迫产生泛化以取得进步。 收集更多的数据样本应该是所有数据科学任务的第一步,数据越多会让模型的准确率更高,这样也就能降低发生过拟合的概率。

2.1.1 数据增强&噪声数据

收集更多的数据会比较耗时耗力。如果没有时间和精力做这个,应该尝试让你的数据看起来更多元化一些。利用数据增强的方法可以做到这一点,这样模型每次处理样本的时候,都会以不同于前一次的角度看待样本。这就提高了模型从每个样本中学习参数的难度。

2.1.2 简化模型

即时你现在手中获取了所有需要的数据,如果你的模型仍然过拟合训练数据集,可能是因为模型过于强大。那么你可以试着降低模型的复杂程度。

2.2 从训练过程角度

2.2.1 提前终止

大部分情况下,模型会首先学习数据的正确分布,然后在某个时间点上开始对数据过拟合。通过识别模型是从哪些地方开始发生转变的,那么就可以在过拟合出现之前停止模型的学习过程。和前面一样,通过查看随着时间推移的训练错误,就可以做到这一点。

2.2.2 从正则化角度

正则化是指约束模型的学习以减少过拟合的过程。它可以有多种形式,下面我们看看部分形式。L1和L2正则化 正则化的一个最强大最知名的特性就是能向损失函数增加“惩罚项”(penalty)。所谓『惩罚』是指对损失函数中的某些参数做一些限制。最常见的惩罚项是L1和L2:L1惩罚项的目的是将权重的绝对值最小化,L2惩罚项的目的是将权重的平方值最小化。

2.3 应对深度学习模型

对于深度学习模型中的过拟合问题,我们可以从两个角度出发:Dropout和Dropconnect。 由于深度学习依赖神经网络处理从一个层到下一个层的信息,因而从这两方面着手比较有效。其理念就是在训练中随机让神经元无效(即dropout)或让网络中的连接无效。这样就让神经网络变得冗长和重复,因为它无法再依赖具体的神经元或连接来提取具体的特征。等完成模型训练后,所有的神经元和连接会被保存下来。试验显示这种方法能起到和神经网络集成方法一样的效果,可以帮助模型泛化,这样就能减少过拟合的问题。

3. 最小二乘法本质

3.1 概念

首先来看百度百科对最小二乘法的介绍:最小二乘法(又称最小平方法)是一种数学优化技术。它通过最小化误差的平方和寻找数据的最佳函数匹配。利用最小二乘法可以简便地求得未知的数据,并使得这些求得的数据与实际数据之间误差的平方和为最小。最小二乘法还可用于曲线拟合。其他一些优化问题也可通过最小化能量或最大化熵用最小二乘法来表达。

简而言之,最小二乘法同梯度下降类似,都是一种求解无约束最优化问题的常用方法,并且也可以用于曲线拟合,来解决回归问题。最小二乘法实质就是最小化“均方误差”,而均方误差就是残差平方和的1/m(m为样本数),同时均方误差也是回归任务中最常用的性能度量。

如果以最简单的一元线性模型来解释最小二乘法。回归分析中,如果只包括一个自变量和一个因变量,且二者的关系可用一条直线近似表示,这种回归分析称为一元线性回归分析。如果回归分析中包括两个或两个以上的自变量,且因变量和自变量之间是线性关系,则称为多元线性回归分析。对于二维空间线性是一条直线;对于三维空间线性是一个平面,对于多维空间线性是一个超平面。

对于一元线性回归模型, 假设从总体中获取了m组观察值(X1,Y1),(X2,Y2), …,(Xm,Ym)。对于平面中的这m个点,可以使用无数条曲线来拟合。要求样本回归函数尽可能好地拟合这组值。综合起来看,这条直线处于样本数据的中心位置最合理。 选择最佳拟合曲线的标准可以确定为:使总的拟合误差(即总残差)达到最小。有以下三个标准可以选择:

  • 用“残差和最小”确定直线位置是一个途径。但可能会出现计算“残差和”存在相互抵消的问题。

  • 用“残差绝对值和最小”确定直线位置也是一个途径。但绝对值的计算比较麻烦。

  • 最小二乘法的原则是以“残差平方和最小”确定直线位置。用最小二乘法除了计算比较方便外,得到的估计量还具有优良特性。这种方法对异常值非常敏感。

最常用的是普通最小二乘法( Ordinary Least Square,OLS):所选择的回归模型应该使所有观察值的残差平方和达到最小。

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值