L1与L2正则化总结

1.过拟合的基础概念:
首先,用一个例子来理解什么是过拟合,假设我们要根据特征分类{男人X,女人O}。
请看下面三幅图,x1、x2、x3:
这里写图片描述
这三幅图很容易理解:
1、 图x1明显分类的有点欠缺,有很多的“男人”被分类成了“女人”。
2、 图x2虽然有两个点分类错误,但是能够理解,毕竟现实世界有噪音干扰,比如有些人男人留长发、化妆、人妖等等。3、 图x3分类全部是正确的,但是看着这副图片,明显觉得过了,连人妖都区分的出来,可想而知,学习的时候需要更多的参数项,甚至将生殖器官的形状、喉结的大小、有没有胡须特征等都作为特征取用了,总而言之f(x)多项式的N特别的大,因为需要提供的特征多,或者提供的测试用例中我们使用到的特征非常多(一般而言,机器学习的过程中,很多特征是可以被丢弃掉的)。
总结一下三幅图:
x1我们称之为【欠拟合】
x2我们称之为【分类正拟合】,随便取的名字,反正就是容错情况下刚好的意思。
x3我们称之为【过拟合】,这种情况是我们不希望出现的状况,为什么呢?很简单,它的分类只是适合于自己这个测试用例,对需要分类的真实样本而言,实用性可想而知的低.
目标函数一般描述为:这里写图片描述
其中:f(xi)= w 0 x 0 + w 1 x 1 + w 2 x 2 + w 3 x 3 + . . . . . + w n x n
结合上图和上式,解决过拟合问题:
显而易见,我们应该、而且只能去看【过拟合】的f(x)形式吧?
显而易见,我们从【过拟合】的图形可以看出f(x)的涉及到的特征项一定很多吧,即等等很多吧?
显而易见,N很大的时候,是等数量增长的吧?
显而易见,w系数都是学习来的吧?
So,现在知道这些信息之后,如何去防止过拟合,我们首先想到的就是控制N的数量吧,即让N最小化吧,而让N最小化,其实就是让W向量中项的个数最小化吧?(所以个人理解:并不是参数量少就可以方式过拟合,而是通过减少参数量来去除一些冗余的特征,来防止过拟合
其中,W=( w 0 , w 1 , w 2 , w 3 , . . . w N )
PS: 可能有人会问,为什么是考虑W,而不是考虑X?很简单,你不知道下一个样本x输入的是什么,所以你怎么知道如何去考虑x呢?相对而言,在下一次输入,即第k个样本之前,我们已经根据前k-1次测试样本的输入,计算(学习)出了W.就是这么个道理.x1…xn是第k个样本学习到的特征。
接着思考,如何求解“让W向量中项的个数最小化”问题,就是一个约束问题(规则化)。注1
2.L0-L2正则化概念
L0正则化的值是模型参数中非零参数的个数
L1正则化表示各个参数绝对值之和。
L2正则化标识各个参数的平方的和的开方值。
L0表示为r(d)= | W | 0 ,解决“让W向量中项的个数最小化”问题:使公式中前一项最小并且使 | W | 0 最小,我们使公式的和最小。从而解释了为什么R(d)能够方式过拟合问题。只不过实际求解使比较复杂,更愿意选择L1范式。
L1表示为r(d)= λ | W | 1 ,L1范数和0范数可以实现稀疏,通过减少参数量来去除一些冗余的特征,来防止过拟合,但L1因具有比L0更好的优化求解特性而被广泛应用.
L2表示为r(d)= λ 2 | | W | | 2 ,让L2范数的正则项||W||2最小,可以使得W的每个元素都很小,都接近于0,但与L1范数不同,它不会让它等于0,而是接近于0,这里是有很大的区别的哦;所以大家比起1范数,更钟爱2范数。因此L2防止过拟合,可以解释为:越小的参数说明模型越简单,越简单的模型越不容易产生过拟合现象。这是因为越复杂的模型,越是会尝试对所有的样本进行拟合,甚至包括一些异常样本点,这就容易造成在较小的区间里预测值产生较大的波动,这种较大的波动也反映了在这个区间里的导数很大,而只有较大的参数值才能产生较大的导数。因此复杂的模型,其参数值会比较大。
一种含L2的结构是:
m i n i N ( y W T x ) + λ 2 | | W | | 2 2
链接:https://www.zhihu.com/question/20924039/answer/131421690

3.帮助理解:
正则化以及类似处理方法的本质(个人认为)是一种对对象进行限制以满足某一特定目的的处理方法。
正则化等处理在数学上是有渊源的:
1) Ex1. 线性代数中的首一多项式(monic polynomial)。容易理解,若多项式满足某一性质时,它的任意数量倍数多项式也可能将满足这个性质。因此,为了使求得的多项式唯一,人为对得到的解加上约束“首系数为1”,这样就保证了所求得的多项式不仅满足条件,而且唯一。
2) Ex2. 线性代数中的Gram-Schmidt正交化。对线性空间而言,任意一组个数等于空间维数且线性无关的向量可以构成这个线性空间的一组基。因此如果我们已经找到了这样的一组向量,实际上是找到了无数组这样的向量。所以为了使得所求得的这组基向量更“规范”,通过Gram-Schmidt正交化的方法将其化为彼此正交且单位化的标准正交基。
3) Ex3. Lasso方法得到稀疏解。在标准线性回归估计的基础上,对其估计值加上范数惩罚,迫使某些系数的估计被压缩为0。
4) Ex4. 统计中常用的模型判定准则AIC(Akaike information criterion)和BIC(Bayesian information criterion)。对模型中参数个数进行判定,在估计表现和参数个数中到达平衡。
类似的例子还有很多,它们都能视为某种“正则化”的方法。Ex1需要满足的特定目的是要让解唯一,Ex2需要满足的特定目的是要让解单位化且正交,Ex3需要满足的特定目的是要让估计稀疏,Ex4需要满足的特定目的是要选出拥有最合适参数个数的模型。所以题目中提到的有什么作用,泛泛而言它的作用是对所求到的进行约束从而使其满足特定目的,也就是上面其他小伙伴提到的避免过拟合。
链接:https://www.zhihu.com/question/20924039/answer/45397882

猜你喜欢

转载自blog.csdn.net/u012617944/article/details/79747602