上一讲讲的是过拟合的原因,并且也介绍了一点,解决过拟合的方法。此讲重点介绍其中的一种最为常用的方法,正规化(Regularized)。
我们上一节讲说了一个过拟合的例子:
step back不仅用于篮球中
我们也知道了,如果我们使用一个高阶多项式(图中红色曲线所示),例如10阶,对目标函数(蓝色曲线)进行拟合。拟合曲线波动很大,虽然
Ein
E
i
n
很小,但是
Eout
E
o
u
t
很大,也就造成了过拟合现象。
我们的正则化的方法呢是希望从高次多项式返回到低次多项式,这个方法的历史原型是:人们为了求得逼近某个函数,而能做到这个的我们有一个方法称为step back:
在我们的学习体系中加上一些条件(constrain)
具体的数学推倒很多相关的blog都有介绍,这里我重点放在我们逼近后的这个函数的一些特点:
我们想方设法将之前的线性回归的回归函数,(以线性为例)我们希望其系数很多都是0只有少数是1,这样的变化就是相当于给我们的函数加上了一些条件:
举个例子:
如何从10阶转换为2阶呢?首先,
H10
H
10
可表示为:
H10 H 10 = w0 w 0 + w1x1 w 1 x 1 x+ w2x2 w 2 x 2 + w3x3 w 3 x 3 +⋯+ w10x10 w 10 x 10
而 H2 H 2 可表示为:
H2 H 2 = w0 w 0 + w1x1 w 1 x 1 x+ w2x2 w 2 x 2
所以,如果限定条件是
w3
w
3
=
w4
w
4
=⋯=
w10
w
10
=0,那么就有
H2=H10
H
2
=
H
10
。也就是说,对于高阶的假设函数,为了防止过拟合,我们可以将其高阶部分的权重w限制为0,这样,就相当于从高阶的形式转换为低阶,fit波形更加平滑,不容易发生过拟合。
这样就比较容易理解的解释了上面的式子。
我们注意到这个3将会是一个常数,我们对这个常数起一个名字叫C,所有的权重w的平方和的大小不超过C,我们把这种假设集记为H(C)。
这个集合的规律老师的ppt总结的一样,非常的有特点。
我们需要有个上限
我们要有一个上限的安排,避免在逼近的过程中丧失拟合的效果。
∑∥∥w2∥∥<C
∑
‖
w
2
‖
<
C
这些个权重被限定在半径为
C−−√
C
的圆内,而球外的
w
w
都不符合要求,即便它是靠近梯度为零的
w
w
。
引用一段比较好的叙述
假设在空间中的一点,根据梯度下降算法, w w 会朝着的方向移动(图中蓝色箭头指示的方向),在没有限定条件的情况下,w最终会取得最小值 wlin w l i n ,即“谷底”的位置。现在,加上限定条件,即w被限定在半径为C−−√的圆内,w距离原点的距离不能超过圆的半径,球如图中红色圆圈所示 wT⋅w=C w T ⋅ w = C 。那么,这种情况下, w w 不能到达的位置,最大只能位于圆上,沿着圆的切线方向移动(图中绿色箭头指示的方向)。与绿色向量垂直的向量(图中红色箭头指示的方向)是圆切线的法向量,即 w w 的方向,不能靠近红色箭头方向移动。那么随着迭代优化过程,只要 −▽Ein − ▽ E i n 与w点切线方向不垂直,那么根据向量知识, −▽Ein − ▽ E i n 一定在 w w 点切线方向上有不为零的分量,即点会继续移动。只有当 −▽Ein − ▽ E i n 与绿色切线垂直,即与红色法向量平行的时候, −▽Ein − ▽ E i n 在切线方向上没有不为零的分量了,也就表示这时 w w 达到了最优解的位置。
我们就得到了获得最优解需要满足的条件:
λ称为Lagrange multiplier,是用来解有条件的最佳化问题常用的数学工具
2N
2
N
是方便后面公式推导。那么我们的目标就变成了求解满足上面公式的
wREG
w
R
E
G
。
下面经过一系列的推倒,我们
会得出一个计算
WREG
W
R
E
G
的式子
WREG=(ZT⋅Z+λI)−1⋅ZT⋅y W R E G = ( Z T ⋅ Z + λ I ) − 1 ⋅ Z T ⋅ y
有了这个之后我们可以将
λ
λ
带入实验:
图很明显了,事实上,这种正则化不仅可以用在多项式的假设函数中,还可以应用在logistic regression等其他假设函数中,都可以达到防止过拟合的效果。
好像和VC理论有一定的联系
机器学习基石这课和吴老师的最大不同就是VC维的认知,这是个重要的参数:
Augmented Error表达式如下:
Eaug(W)=Ein(W)+λN⋅WT⋅W E a u g ( W ) = E i n ( W ) + λ N ⋅ W T ⋅ W
而我们的VCbound的表达是:
Eout≤Ein+Ω(H) E o u t ≤ E i n + Ω ( H )
根据放缩性理论我们有直接结论(程序员使用机器学习的时候只需要个大概吧,之后会深入理解这一块)
最后归纳总结通用的正则化
选择这个 Ω(W) Ω ( W ) 有三种
- target-dependent
- plausible
- friendly
这个误差的测量一样也有三种一模一样的方式:
在详细说一下 λ λ 的取值:
以上两种噪音的情况下,都是噪音越大,相应的
λ
λ
也就越大。这也很好理解,如果在开车的情况下,路况也不好,即噪音越多,那么就越会踩刹车,这里踩刹车指的就是正则化。但是大多数情况下,噪音是不可知的,这种情况下如何选择
λ
λ
。这里需要谢谢拉格朗日算子的出演!最后两节课就是将这些告诉我们的!
这节课的正则化学习告诉我们机器学习是需要人为调整的!甚至是加噪音!