机器学习基石(林轩田)第十四章 笔记与感悟总结

14.1 Regularization - Regularized Hypothesis Set


我们可以看出,右侧的数据拟合的并不好,因为我们用来拟合的方程维数太高!!!

我们想让右侧的overfit 变成左侧的看起来不错的 ‘regularized fit’

我们想从高次的H慢慢回退到低次的Hypothesis、

命名的历史是:当有限的数据点可以用多个方程来进行拟合时,我们需要选择最合适的那个。

弹幕:穿过样本点的函数特别多,regularization就是从这些函数中找出比较好的


我们看出了将高次的w置为0,则变成了低维的



我们依旧可以从10次多项式中寻找w,但是最后要求高维的w满足限制条件(等于0)

那么为什么我们不直接从(2+1)维的w中寻找,而偏偏要这么的麻烦呢?

答:我们希望能够拓宽自己的视野,让我们在推导后面的问题容易一些。



现在我们放松一点条件,变成只要至少有8个的wq=0便可以。

我们发现变成了介于H2与H10之间的一种选项。

我们称是稀疏的(sparse)假设集。


这让我们想到了PLA中的是非题,此类是非题是一个NP-hard难题。


我们为了避免NP-hard难题,于是我们再做一步转换。

我们将是非的多少项之和,转变成了系数平方之和小于某个常数的问题

当C趋于无限大的时候,其实就跟没有限制条件一样,就和10个系数的时候一样了(H10)

我们把H(C)的这种形式,叫做规则化的hypothesis,即在规则和条件约束下的hypothesis,得到的权重叫做




14.2 Regularization - Weight Decay Regularization

我们将新的问题表示成向量和矩阵的形式。

w的数学意义是一个球,球心在原点,而球的半径小于。我们只要这个球里面的w,而外面的都不要。这个“球”是高维空间上的“球”。


我们没有条件时,只要找到谷底的方向滚下去就好。

例如Wlin是谷底,我们会朝着这个方向滚下去。

然而我们现在有了条件显示,是一个“球”。只有在红色圈圈内的才是我们的最后解。

假如说,我们已经在了“球”的边边上,那么我们怎么判断是不是已经到最优点了?


球的法向量,告诉我们不能往外走。

而绿色的箭头,则表明是可以继续往下滚的方向。它满足我们的要求。

那么当我们到达了一个可能的解时(at optimal solution),它梯度的反方向和我们的方向是平行的。

我们就设平行为已知,得到一个方程。

的方法叫做Lagrange multiplier  拉格朗日乘子法。用来解有条件约束的问题。


感觉好像变得更复杂了,原本求一个,现在变成了既要求,有要求了。

假设有个很神的同学(oracle 先知)告诉你是多少,我们就很容易求是多少了

很容易证明,只要>0,我们的是存在的(正定的)。



我们对这个梯度+2/N * 的式子进行左右积分,等价于变成    最小化这个积分后的式子、

我们把这个式子叫做,其式子里面没有constraint



=0的时候就会发生Overfitting,而很大的时候就无法描述了。

哲学:一小点regularization就能有很多的效果。

 我们设置的越大,说明我们希望的w越小越好。因为我们是在求解最小化的问题。

很大,相当于是在惩罚w,就相当于是要较小的C。(小半径)

我们常常称之为weight-decay regularization,即把权重变小的一种方法。



我们使用了一点小技巧。polynomial transform有小缺点。即当x在[-1,1]之间的时候,当x的维数很高的时候,它就很小,我们如果仍想让这个高维x在最后具有影响力,那么对应的w就得非常非常大。

我们就好像是在过度惩罚了高维度的x。

我们使用了坐标转换,q+1个坐标,但是因为彼此之间不是垂直的,我们做regularization就除了一些问题。

我们的想法是在高维空间上找出一组垂直的基底。

这些基底叫做Legendre polynomials

我们列出了前五个legendre polynomials



14.3 Regularization - Regularization and VC Theory

我们原本是做个有限制的最小化的问题。

我们间接的把VC Bound做好

因为C和 等价的缘故,


当我们最小化Eaug的时候,间接的使用VC Bound


回头来看Augmented Error 和 VC Bound其实有一些相似和不一样的地方。

表示w这条曲线本身到底有多么的复杂,单一的hypothesis有多么的复杂。

表示整个hypothesis set有多复杂。

如果前者与后者的复杂度十分相近的话,比如说,最高项的系数和Hypothesis集里的最高项有点联系的话。也许,我们做好的想法,可以通过做好解决。即,做好,能够做好


理论上,我们要用的代价,

但是实际上我们只考虑在C里面的那些谷底的人,即

我们prefer那些w比较短的方式。

regularization可能会使实际代价的小一些。但是这跟A(演算法)有关。



14.4 Regularization - General Regularization

最好告诉我们说好的hypothesis在哪一个方向。告诉我们一个比较小的范围。

比如,我们知道目标函数是偶数次方的,我们就可以想办法在regularization的过程中,将奇数次方前面的系数调小一些。

或者选择比较有说服力的,能够使函数变得平滑一些的函数。

或者是容易能够optimize的方式。

但是如果选择了坏的regularization,那么还有最后的保护,即=0,大不了不regularization了。



L1最后的最优点往往在顶点上。sparse solution 只要算不是0的那几项,因此会比较快。

比如有个1126个维度的模型,用L1只需要算几个,因此会比较快。



其实是用来踩刹车的那种方法。因此,如果噪声很多的话,就需要更大的

因为路况越不好,我们就需要踩更多刹车。

因为我们拿到样本时,其实并不知道noise是多少。因此我们需要做一个合适的的估计。



猜你喜欢

转载自blog.csdn.net/Jason__Liang/article/details/80483465