【吴恩达机器学习笔记】第七章 正则化

搜索微信公众号:‘AI-ming3526’或者’计算机视觉这件小事’ 获取更多人工智能、机器学习干货

csdn:https://blog.csdn.net/qq_36645271

github:https://github.com/aimi-cn/AILearners


第七章 正则化

7.1 过拟合问题

7.1.1 什么是过拟合

让我们继续使用用线性回归来预测房价的例子来了解什么是过拟合(over-fitting)。下图通过建立以住房为面积为自变量的函数来预测房价。
在这里插入图片描述
第一个模型用一次函数来拟合数据集,它是一个线性模型,欠拟合(under-fitting),另一个说法是这个算法具有高偏差(high-bias),其不能很好地拟合训练数据。第二个模型用二次函数来拟合数据集,其拟合效果很好。第三个模型用四次多项式进行拟合,那么我们就有五个参数,这样我们的曲线就能通过全部的五个训练样本。这看起来似乎很好的你喝了训练集,但因为它通过了所有的数据点,是一条扭曲的曲线,实际上我们不认为它是一个好的模型。这个问题我们称之为过拟合(over-fitting),另一种说法是这个算法具有高方差(high-variance)

总结来说,过拟合(over-fitting)问题将会在变量过多的时候出现,这时训练出的假设能很好地拟合训练集(代价函数可能非常接近于0),它千方百计地拟合训练集,导致无法泛化(generalized)到新的样本中以至于无法预测因样本的价格。这里的**泛化(generalize)**指的是一个假设模型应用到新样本的能力。新样本数据是指没有出现在训练集的房子。

同样的过拟合问题也可能在逻辑回归中出现。
在这里插入图片描述
第一个模型用一条直线来分开正负样本,它不能很好地拟合数据,所以它是一个欠拟合的例子,或者说具有高偏差的假设模型。第二个模型在第一个模型的基础上加入了一些二次项,这使得我们的判定边界很好地拟合了数据。第三种情况用高阶多项式来拟合数据,那么逻辑回归的判定边界可能会变得扭曲,这不是一个用于预测的好的假设模型。这是一个过拟合例子,或者说是一个有高方差的假设模型,它无法做到很好地泛化到新样本。

7.1.2 如何解决过拟合问题

在这里插入图片描述
在之前的例子中,当我们使用一维或二维数据时,我们可以通过绘制出假设模型的图像,然后选择合适的多项式阶数。例如之前房价预测的例子,我们可以用上述方法,但是我们的学习问题可能需要很多变量,并且这不仅仅是选择多项式阶次的问题。过多的特征会增加绘图的难度,如果训练数据很少,那我们就会出现过拟合的问题。为了解决过拟合问题,我们有以下两个方法来解决:

  1. 尽量减少选取变量的数量
    • 人工检查变量清单,并以此决定哪些变量更为重要,哪些特征需要保留,哪些应该舍弃。
    • 模型选择算法,它可以对需要保留和舍弃的变量进行自动选择。
  2. 正则化(regularization)
    • 尽量保留所有的特征变量,但是减少量级或参数 θ j \theta_j θj的大小。
    • 正则化在我们有许多特征,并且每个特征都对预测值 y y y有一定贡献时非常有用。

7.2 代价函数

7.2.1 惩罚项

在这里插入图片描述

在之前的例子中,我们发现如果使用一个二次函数来拟合这些数据,会得到一个不错的结果,而用阶数过高的多项式去拟合数据,虽然看上去拟合效果很好,曲线通过了每一个数据点,但实际上这个函数过拟合了,泛化的不好。

现在,让我们在这个高阶函数中加入惩罚项(penalize),使得参数 θ 3 , θ 4 \theta_3,\theta_4 θ3,θ4非常小,即我们要最小化其均方误差代价函数:
m i n θ 1 2 m ∑ i = 1 m ( h θ ( x ( i ) ) − y i ) 2 + 1000 θ 3 2 + 1000 θ 4 2 min_\theta \frac{1}{2m}\sum^{m}_{i=1}(h_\theta(x ^{(i)})-y^{i})^2+1000\theta_3^2+1000\theta_4^2 minθ2m1i=1m(hθ(x(i))yi)2+1000θ32+1000θ

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值