上一小节中,咱们介绍了过拟合的概念,在机器学习中最大的危险就是过拟合,为了解决过拟合问题,一般有两种办法,第一是减小样本的特征(即维度),第二就是咱们这里要说的“正则化”(又称为“惩罚”,penalty)。机器学习
在非线性变换小节中,咱们有讨论Q次多项式变换的定义和其包含关系,这里若是是10次多项式变换,那么系数的个数是11个,而2次多项式的系数个数是3。从中咱们能够看出,全部的2次多项式实际上是10次多项式加上一些限制,即w3=w4=...=w10=0。函数
基于上面的讨论,咱们但愿能将二次多项式表示成十次多项式再加上一些约束条件,这一步的目的是但愿能拓宽一下视野,在推导后面的问题的时候能容易一些。
这个过程,咱们首先要将二次多项式的系数w拓展到11维空间,加上w3=w4=...=w10=0这个条件获得假设集合H2;而后为了进一步化简,咱们能够将这个条件设置的宽松一点,即任意的8个wi为0,只要其中有三个系数不为0就行,获得一组新的假设空间H2',但这个问题的求解是一个NP-hard的问题,还须要咱们修正一下;最后,咱们还须要将这个约束条件进一步修正一下获得假设集合H(C),给系数的平方的加和指定一个上限,这个假设集合H(C)和H2'是有重合部分的,但不相等。
最后,咱们把H(C)所表明的假设集合称为正则化的假设集合。
下图表示了这个约束条件的变化:学习
由上图所示,咱们如今要求解的是在必定约束条件下求解最佳化问题,求解这个问题能够用下面的图形来描述。测试
原本要求解Ein的梯度,至关于在一个椭圆蓝色圈中求解梯度为零的点,而下面这个图表示,系数w在半径是根号C的红色球里面(w须要知足的约束条件),求解蓝色区域使得梯度最小的点。
那么,最优解发生在梯度的反方向和w的法向量是平行的,即梯度在限制条件下不能再减少。咱们能够用拉格朗日乘数的方法来求解这个w。spa
Ridge Regression是利用线性回归的矩阵形式来求解方程,获得最佳解。.net
咱们要求解这个梯度加上w等于0的问题,等同于求解最小的Augmented Error,其中wTw这项被称为regularizer(正则项)。咱们经过求解Augmented Error,Eaug(w)来获得回归的系数Wreg。这其实就是说,若是没有正则项的时候(λ=0),咱们是求解最小的Ein问题,而如今有了一个正则项(λ>0),那么就是求解最小的Eaug的问题了。代理
从上图能够看出,当λ=0的时候就会发生过拟合的问题,当λ很小时(λ=0.0001),结果很接近理想的状况,若是λ很大(λ=1),会发生欠拟合的现象。因此加一点正则化(λ很小)就能够作到效果很好。blog
咱们要解一个受限的训练偏差Ein的问题,咱们将这个问题简化成Augmented Error的问题来求解最小的Eaug。
原始的问题对应的是VC的保证是Eout要比Ein加上复杂度的惩罚项(penalty of complexity)要小。而求解Eaug是间接地作到VC Bound,并无真正的限制在H(C)中。ip
wTw能够当作是一个假设的复杂度,而VC Bound的Ω(H)表明的是整个假设集合有多么的复杂(或者说有多少种选择)。
这两个问题都好像是计算一个问题的复杂度,咱们该怎么联系着两种复杂度的表示方式呢?其理解是,一个单独的很复杂的多项式能够看作在一类很复杂的假设集合中,因此Eaug能够看作是Eout的一个代理人(proxy),这实际上是咱们运用一个比原来的Ein更好一点点代理人Eaug来贴近好的Eout。get
L1 Regularizer是用w的一范数来算,该形式是凸函数,但不是到处可微分的,因此它的最佳化问题会相对难解一些。
L1 Regularizer的最佳解经常出如今顶点上(顶点上的w只有不多的元素是非零的,因此也被称为稀疏解sparse solution),这样在计算过程当中会比较快。
L2 Regularizer是凸函数,平滑可微分,因此其最佳化问题是好求解的。
噪声越多,λ应该越大。因为噪声是未知的,因此作选择很重要,我将在下一小节中继续接受有关参数λ选择的问题。
过拟合表如今训练数据上的偏差很是小,而在测试数据上偏差反而增大。其缘由通常是模型过于复杂,过度得去拟合数据的噪声和异常点。正则化则是对模型参数添加先验,使得模型复杂度较小,对于噪声以及outliers的输入扰动相对较小。
正则化符合奥卡姆剃刀原理,在全部可能选择的模型,可以很好的解释已知数据而且十分简单才是最好的模型,也就是应该选择的模型。从贝叶斯估计的角度看,正则化项对应于模型的先验几率,能够假设复杂的模型有较小的先验几率,简单的模型有较大的先验几率。
机器学习中的范数规则化之(一)L0、L1与L2范数
机器学习中的范数规则化之(二)核范数与规则项参数选择