机器学习 -- 多项式回归(Ⅲ 过拟合(overfitting) 和 欠拟合(underfitting))

一. 定义

        我们实际希望的,是在新样本上能表现得很好的学习器。为了达到这个目的,应该从训练样本中尽可能学出适用于所有潜在样本的“普遍规律”,这样才能在遇到新样本时做出正确的判别.然而,当学习器把训练样本学得“太好”了的时候,很可能巳经把训练样本自身的一些特点当作了所有潜在样本都会具有的一般性质,这样就会导致泛化性能下降这种现象在机器学习中称为“过拟合” 。 与"过拟合"相对的是“欠拟合” ,这是指对训练样本的一般性质尚未学好。

 

二. 造成因素

        有多种因素可能导致过拟合,其中最常见的情况是由于学习能力过于强大,以至于把训练样本所包含的不太一般的特性都学到了。而欠拟合则通常是由于学习能力低下而造成的。欠拟合比较容易克服,例如在决策树学习中扩展分支、在神经网络学习中增加训练轮数等,而过拟合则很麻烦。在后面的学习中我们将看到,过拟合是机器学习面临的关键障碍,各类学习算法都必然带有一些针对过拟合的措施;然而必须认识到,过拟合是无法彻底避免的,我们所能做的只是“缓解”或者说减小其风险。

 

三. 举例:过拟合、欠拟合的直观对比。

四. 模型的泛化能力

        训练模型不是为了最大程度拟合这些点,而是为了可以预测新的模型。因此真正需要的是得到的模型泛化能力有多好,这种情况下,我们需要怎么做呢?

解决方案:将数据分为训练数据集和测试数据集。此时测试数据对于模型相当于全新的数据,若测试数据集能获得很好的结果则证明模型泛化结果强;反之证明泛化能力弱,多半遭遇了过拟合。事实上,这是训练数据集更大的意义。

 

五. 多项式模型复杂程度

        对于多项式模型来说,我们回归的阶数越高,我们的模型会越复杂,在这种情况下对于我们的机器学习算法来说,通常是有下面一张图的。横轴是模型复杂度(对于不同的算法来说,代表的是不同的意思,比如对于多项式回归来说,是阶数越高,越复杂;对于KNN来说,是K越小,模型越复杂,k越大,模型最简单,当k=n的时候,模型就简化成了看整个样本里,哪种样本最多,当k=1来说,对于每一个点,都要找到离他最近的那个点),另一个维度是模型准确率(也就是他能够多好的预测我们的曲线)。

通常对于这样一个图,会有两根曲线:

(1)一个是对于训练数据集来说的,模型越复杂,模型准确率越高。因为模型越复杂,对训练数据集的拟合就越好,相应的模型准确率就越高。
(2)对于测试数据集来说,在模型很简单的时候,模型的准确率也比较低,随着模型逐渐变复杂,对测试数据集的准确率在逐渐的提升,提升到一定程度后,如果模型继续变复杂,那么我们的模型准确率将会进行下降(欠拟合->正合适->过拟合)。

 

六. 简要概括

(1)欠拟合:算法所训练的模型不能完整表述数据关系。
(2)过拟合:算法所训练的模型过多的表达了数据间的噪音关系。

我们需要寻找泛化能力最好的地方:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值