正规化思想

机器学习中使用正规化来解决过拟合的原理

1.什么是欠拟合和过拟合

在这里插入图片描述
上面是一个典型预测房价的例子:
图片中的第一个坐标系我们使用一条直线对样本点进行拟合,也就是线性回归。但是,从图上可以看出这显然不是一个很好的模型。根据图中样本点的变化趋势可以很明显地推断出,随着房子面积的增加,房价一开始有明显的增幅,但是当面积增大到一定程度时房价趋于平缓。因此线性回归无法很好拟合训练集。
我们把这种情况称之为欠拟合(underfitting),这种情况的特点主要体现为高偏差(PS:偏差主要指算法对真实值的拟合程度。

第二幅图,我们对该函数加入一个二次项,该函数变成了二次函数,而在图中我们可以很明显地看到该曲线对样本的拟合程度效果不错。

最后一幅图,我们在函数中加入了三次项和四次项,所以该函数中出现了五个参数theta0~theta4。从最右边的图中我们可以看出该曲线很完美地拟合了坐标中的样本点,但是该函数由于多项式的增加,使得他的曲线变得不那么自然。按照常理,房价是不可能随着面积以这样的形式波动的,所以我们也不认为他是一个很好的房价预测模型。
我们把这种过度拟合样本的情况称之为过拟合(overfitting),这种情况的特点主要体现为高方差(PS:方差主要指算法在未知预测值与实际已知值之间的关系,或者称之为“稳定性”)。

2.过拟合的原因

产生过拟合问题主要发生在变量(特征值)过多。这种时候可以训练出拟合程度很高的函数曲线。但是这样的曲线由于过度拟合样本,某些小的噪声也对函数产生很大的影响,导致他无法很好地泛化到新的数据集中,从而无法预测出比较贴合实际的结果。

3.正规化

在正规化中我们不会删除任何特征变量,但是会减少theta(J)的大小,接下来我们会讨论怎样应用正则化和什么叫做正则化均值,然后将开始讨论怎样使用正则化来使学习算法正常工作,并避免过拟合。

  1. penalize
    在前面的介绍中,我们看到了如果用一个二次函数来拟合这些数据,那么它给了我们一个对数据很好的拟合。然而,如果我们用一个更高次的多项式去拟合,最终我们可能会得到一个曲线,它能很好地拟合训练集,但却并不是一个好的结果,因为它过度拟合了数据,因此,一般性并不是很好。让我们考虑下面的假设,我们想要加上惩罚项,从而使参数 θ3 和 θ4 足够的小。这里我的意思就是,上图的式子是我们的优化目标,也就是说我们需要尽量减少代价函数的均方误差。
    在这里插入图片描述
    对于这个函数我们对它添加一些项,加上 1000 乘以 θ3 的平方,再加上 1000 乘以 θ4 的平方,1000 只是我随便写的某个较大的数字而已。现在,如果我们要最小化这个函数,那么为了最小化这个新的代价函数,我们要让 θ3 和 θ4 尽可能小。因为,如果你在原有代价函数的基础上加上 1000 乘以 θ3 这一项 ,那么这个新的代价函数将变得很大,所以,当我们最小化这个新的代价函数时, 我们将使 θ3 ,θ4的值无限趋向于零,我们就可以忽略这两个值了。如果我们做到这一点( θ3 和 θ4 接近 0 ),那么我们将得到一个近似的二次函数。

  2. regularization
    具体过程
    更一般地,这里给出了正规化背后的思路。这种思路就是,如果我们的参数值对应一个较小值的话(参数值比较小),那么往往我们会得到一个形式更简单的假设。
    在我们上面的例子中,我们惩罚的只是 θ3 和 θ4 ,使这两个值均接近于零,从而我们得到了一个更简单的假设,实际上这个假设大抵上是一个二次函数。但更一般地说,如果我们像惩罚 θ3 和 θ4 这样惩罚其它参数,那么我们往往可以得到一个相对较为简单的假设。
    实际上,这些参数的值越小,通常对应于越光滑的函数,也就是更加简单的函数。因此 就不易发生过拟合的问题。
    我们知道,为什么越小的参数对应于一个相对较为简单的假设,对你来说现在不一定完全理解,但是在上面的例子中使 θ3 和 θ4 很小,并且这样做能给我们一个更加简单的假设,这个例子至少给了我们一些直观感受。
    来让我们看看具体的例子,对于房屋价格预测我们可能有上百种特征,与刚刚所讲的多项式例子不同,我们并不知道 θ3 和 θ4 是高阶多项式的项。所以,如果我们有一百个特征,我们并不知道如何选择关联度更好的参数,如何缩小参数的数目等等。
    因此在正则化里,我们要做的事情,就是把减小我们的代价函数(例子中是线性回归的代价函数)所有的参数值,因为我们并不知道是哪一个或哪几个要去缩小。因此,我们需要修改代价函数,在这后面添加一项,就像我们在方括号里的这项。当我们添加一个额外的正则化项的时候,我们收缩了每个参数。
    下面是一个正规化项:
    在这里插入图片描述
    并且 λ 在这里我们称做正则化参数。λ 要做的就是控制在两个不同的目标中的平衡关系。
    第一个目标就是我们想要训练,使假设更好地拟合训练数据。我们希望假设能够很好的适应训练集。而第二个目标是我们想要保持参数值较小。(通过正则化项)而 λ 这个正则化参数需要控制的是这两者之间的平衡,即平衡拟合训练的目标和保持参数值较小的目标。从而来保持假设的形式相对简单,来避免过度的拟合。
    对于我们的房屋价格预测来说,我们之前所用的非常高的高阶多项式来拟合,我们将会得到一个非常弯曲和复杂的曲线函数,现在我们只需要使用正则化目标的方法,那么你就可以得到一个更加合适的曲线,但这个曲线不是一个真正的二次函数,而是更加的流畅和简单的一个曲线。这样就得到了对于这个数据更好的假设。

4.总结

以上简要概述了正规化解决过拟合化问题的思想,整个过程就是以偏差的增加来换取方差的减少,或者是平衡结构风险与预测风险间的关系,从而使整个机器学习算法的泛化性更强。正规化的思想同样可运用在逻辑回归或其他非线性模型上。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值