机器学习 (六) 过拟合与欠拟合 (Overfitting & Underfitting)

偏差(Bias)与方差(Variance)

在这里插入图片描述
如上图,偏差(Bias) 代表欠拟合(Underfitting),即训练集与验证集的误差都很大;**方差(Variance)**代表过拟合(Overfitting),即训练集误差很小,但验证集误差很大。

high Variance high bias high bias & high variance(欠拟合) low bias & low variance (过拟合)
Training Set Error 1% 15% 15% 0.5%
Validation Set Error 11% 16% 30% 1%

过拟合(Overfitting)

定义:

  由于使用的参数过多而导致模型对观测数据(训练数据)过度拟合,以至于用该模型来预测其他测试样本输出的时候与实际输出或者期望值相差很大的现象。
  简言之,就是训练数据拟合过好,导致测试数据与验证数据误差较大。

原因:

  • 模型太复杂
  • 数据太少
  • 数据噪声大

解决方法:

  1. 数据集扩增(Data Augmentation)
  2. 正则化(Regularization)
  3. 提前停止迭代(Early Stopping)
  4. 减少特征
  5. 针对神经网络,可用Dropout方法
  6. 需要设置超参数的方法,可用交叉验证(Cross Validation)

1.数据集扩增(Data Augmentation)

  足够的数据往往能更好更客观的训练出较好的模型,当数据较少时,拟合的模型太过片面,只学习到了部分数据,很容易导致过拟合。因此,增加数据可以很好的防止过拟合。数据集增加有很多方法,如人为增加数据;重采样,给训练集分配更多的数据;通过实验获取更过数据等。

2.正则化(Regularization)

机器学习中通常采用L1正则化L2正则化
  L1正则化的模型叫做Lasso回归,使用L2正则化的模型叫做Ridge回归(岭回归)。正则化是在loss function的式子后加一个L1或L2正则化参数项,构成一个新的带惩罚因子的cost function.

L1正则化:

L1正则化是指权值向量 w w w中所有元素的绝对值的和,其参数项公式如下:
λ 2 m ∑ j = 1 m ∥ w ∥ 1 = λ 2 m ∑ j = 1 m ∣ w j ∣ \frac{\lambda}{2m}\sum_{j=1}^{m}\left \| w \right \|_{1} = \frac{\lambda}{2m}\sum_{j=1}^{m} | w_{j} | 2mλj=1mw1=2mλj=1mwj
应用L1正则化的模型的cost function为:
J ( w , b ) = L ( w , b ) + λ 2 m ∑ j = 1 m ∣ w j ∣ J(w,b) = L(w,b) + \frac{\lambda}{2m}\sum_{j=1}^{m} | w_{j} | J(w,b)=L(w,b)+2mλ

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值