机器学习:过拟合和欠拟合

一.小例

本篇我们来简单介绍一下机器学习中的过拟合和欠拟合问题,首先我们来看一个例子。
我们知道酶的活性会随温度的变化而变化,在最适温度达到最高,高于或低于最适温度都会有所降低,那么我们若想预测某温度下酶的活性时,该怎么判断模型是否欠拟合或过拟合了呢?来看几幅图
在这里插入图片描述
可以看到大概在60度左右酶的活性最高,在这之前和之后都会有所降低,我们预想的模型大概是这样的。它的决策边界可能如图所示。
在这里插入图片描述
如果说模型过于简单了,就可能就会得到一条直线。这种训练好后的模型既不能满足训练数据的预期,也不能满足新数据的预期,此时它就是属于欠拟合。(训练数据和新数据的预测结果都不准确)
在这里插入图片描述
当然,如果模型过于复杂了也不是一件好事。虽然它可以很好的拟合我们的训练数据,但在新数据的预测上就不尽人意了。如下图,对应训练数据,该模型的预测结果是非常准确的,但是我们知道在温度超过最适温度后,酶的活性就会降低,图示结果明显错误,这种情况就是过拟合。(对训练数据的预测结果非常准确,但对新数据的预测结果不准确)
在这里插入图片描述
如果大家还有点不理解,博主就来说说网上看到的一个很有趣的比喻。

假如你有一个女朋友,你知道她的一切兴趣爱好,也很清楚她什么时候需要什么,可以很好地满足她的各种需求,这样双方的感情就会比较稳定,你的女朋友也不会厌烦你。但如果有一天你们因为某种原因分手了,然后你又交了一个女朋友,然后你用对待前任的处事方式来对待你的现任女友,你的现任女友就不一定会觉得这种处事方式好了,就可能会产生各种矛盾,这就是过拟合。

那么如果你没有谈过恋爱,并不知道怎么谈恋爱,有一天你突然有了一个女朋友,因为没有经验,你可能无法处理好你们之间的各种事情,这就是欠拟合。

二.简单定义

过拟合和欠拟合:模型不合适,无法对数据进行有效预测。

过拟合:
体现:在训练数据上效果不错,但对于新数据效果一般
原因:模型结构过于复杂,使用了过多属性,训练时包含了干扰信息。
解决方式:

  1. 简化模型结构(使用低阶模型,比如线性模型)
  2. 数据预处理,保留主成分信息(数据PCA处理)
  3. 在模型训练时,增加正则化项(regularization)

欠拟合:
体现:训练数据和新数据效果都不好
原因:模型过于简单(算法较弱)、训练数据过少或过多、用于训练模型的特征属性不佳
解决方式:
1.换一种较强的算法,提高模型复杂度
2 增加或减少数据量
4. 对训练数据做一个主成分分析,保留主成分。
在这里插入图片描述

这里呢,博主就不做过多介绍了,就简单说说正则项吧。
在线性回归中,最小损失函数的公式如下:
在这里插入图片描述
更新正则项后效果如下:
在这里插入图片描述
原来我们的g(x)可能等于下图这种表达式
在这里插入图片描述
这时正则项的作用就体现出来了
在这里插入图片描述
因为我们要让损失函数尽可能小,如果入取值越大,为了达到目的我们就必须减小θ的值,这样就实现了一个约束的作用,我们就可以借此来约束高次项的影响了,也就是说原来高次项的信息就会减少,过于复杂的边界函数也会变得比较圆滑,也因此实现了一个降维的效果。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值