本节涉及的知识点包括:
(1)所谓正则化,就是在原来的假设空间上加上一定限制条件;
(2)推导线性回归中引入L2正则;
(3)带正则化约束条件的问题 等价于 无约束的加正则项的augmented error;
(4)VC维解释正则的好处;
(5)选择一般正则项的三个原则;
(6)L1正则和L2正则的对比;
1 正则化的概念
所谓正则化假设空间,就是带有限制条件的假设空间。
2 线性回归引入正则化(岭回归)
引入正则化,就是对假设空间做一定的限制,也就是在原来的线性回归基础上加了约束条件:
这个问题是一个约束优化问题,可以根据KKT条件求解。这里我们从几何的角度来推导:
这里的红色圆圈,圆心表示原点,半径为C,显然w被约束在该圆形区域内。蓝色箭头是当前的负梯度方向,由于约束限制,w只能往梯度在圆形的切线方向上的分量进行更新。当w的方向与负梯度方向相同时,切线分量为0,就达到了在约束条件下的最优解。
即,最优的时候,w与负梯度成比例:
即:
其中λ大于0。这个式子也可以由KKT条件推出 。
上式中代入线性回归的梯度形式,可以求得最优解(其中λ是与C有关的量):
这个形式被称为岭回归。
3 正则项
从另一个角度看,上面的问题等价于直接在原来的损失函数中引入正则项,这样的损失函数称为augmented error:
由于λ是与C有关的量,那么我们不妨把λ当作参数。这样就用求解带正则项的augmented error代替了原来约束问题:
下面是不同的λ带来的正则化的效果:
在进行多项式转换时,使用legendre多项式可以构造一堆两两正交的基底,使得每个项对应的权重影响力是一样的:
4 VC维的解释
加入正则项,等效于带约束的Ein。也就是有效的假设空间比不加正则项的假设空间更小了,VC维更低,因此泛化能力更好。
5 一般正则化项
前面讲的正则项只是很多正则项的一种,称为L2正则项。事实上,我们还可以选择其它的形式作为正则项。选择正则项的时候,可以考虑以下三个方向:
(1)target-dependent :如果知道目标函数的信息,就可以选择与它方向一致的正则项。例如已知目标函数是偶函数,就可以只对奇次方的权重做限制。
(2)可行性:正则项可以让我们选出一个平滑和简单的假设函数。
(3)易优化的:加上正则项之后,应该是一个容易求解的优化问题。
6 L1和L2正则对比
L1最后最优解一般会落在棱形的顶点上,因此通常是稀疏解。
此外,参数λ的选择是很重要的。下图给出了在不同的随机噪声和确定性噪声下的不同的λ带来的效果:
但是,噪声是不可知的,我们如何来选择合适的λ呢?这就是下一节 “验证”中要讲的了。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:《机器学习基石》—正则化 - Python技术站