正则项浅析——精选推荐

正则项浅析
我们经常会听到正则项这个概念,通过查阅资料并且结合⾃⼰的理解对正则项做了⼀个简单的总结,⾸先,从问题出发:
(1)正则项存在的意义是什么,为什么要使⽤正则项?正则项是如何防⽌过拟合的?
(2)有哪⼏种正则项,如何表⽰,它们的相同点和不同点是什么?
(3)不同正则项的使⽤场景是什么,如何选取正则项呢?
下⾯就来⼀⼀的进⾏分析吧~~~~
先引⼊问题:
就拿斯坦福机器学习课程的例⼦来说,通过房⼦的⾯积来预测房价,建⽴回归⽅程来拟合样本数据
从左到右,分别是⽋拟合,恰当拟合,过拟合。第⼀张图是⽋拟合,它是⾼偏差的,第三张图是过拟合的,⽤四次⽅五个参数进⾏拟合,中间弯弯曲曲,是⾼⽅差的。那么怎么解决过拟合呢?
(1)⼀⽅⾯是削减特征的数量,如果所有特征都是有⽤的,我们不该舍弃的,或者特征很少的时候,我们可能不会削减特征。
(2)另⼀⽅⾯是减⼩特征的参数,这样当很多特征变量,并且多多少少都有⽤时,也就是正则化出现的意义,下⾯会更详细的介绍。
(⼀)为什么要使⽤正则项?
其实正则项是对参数的控制。那么为什么要控制参数呢,控制参数有什么好处呢?
(1)实现参数的稀疏,这样可以简化模型,避免过拟合。在⼀个模型中重要的特征并不是很多,如果考虑所有的特征都是有作⽤的,那么就会对训练集进⾏充分的拟合,导致在测试集的表现并不是很好,所以我们需要稀疏参数,简化模型。
二波罗蜜(2)尽可能保证参数⼩⼀些,这⼜是为啥呢?因为越是复杂的模型,它会对所有的样本点进⾏拟合,如果在这⾥包含异常的样本,就会在⼩区间内产⽣很⼤的波动,不同于平均⽔平的⾼点或者低点,这样的话,会导致其导数很⼤,我们知道在多项式导数中,只有参数⾮常⼤的时候,才会产⽣较
⼤的导数,所以模型越复杂,参数值也就越⼤。为了避免这种过度的拟合,需要控制参数值的⼤⼩。
(⼆)正则项的分类
正则项有三种:L0、L1、L2
L0正则化的值是模型参数中⾮零参数的个数。
L1正则化表⽰各个参数绝对值之和。
L2正则化标识各个参数的平⽅的和的开⽅值。
1、L0正则化
保证参数稀疏化来防⽌过拟合,可以⽤⾮零参数,来进⾏特征选择。但是L0正则化不好求,因此采⽤L1正则化。L1正则化是L0正则化的最优凸近似,⽐L0容易求解,并且可以实现稀疏的效果。
2、L1正则化
L1正则化也叫lasso,它往往是替代L0正则化来防⽌过拟合的。为啥⽤L1范数,因为L1范数就是各个参数的绝对值相加,我们已知,参数的值的⼤⼩和模型的复杂度是成正⽐的,因此复杂模型,L1范数
就会⼤,导致损失函数⼤。下⾯定量的分析:
在原始的代价函数后⾯加上⼀个L1正则化项,即所有权重w的绝对值的和,乘以λ/n。如下:
同样计算导数得:超声波马达
上式中sgn(w)表⽰w的符号。那么权重w的更新规则为:
现在来观察正则求导项,可知当w为正时,更新后的w变⼩;当w为负时,更新后的w变⼤。因此它的效果就是让w往0靠,使⽹络中的权重尽可能为0,也就相当于减⼩了⽹络复杂度,防⽌过拟合。另外,
上⾯没有提到⼀个问题,当w为0时怎么办?当w等于0时,|w|是不可导的,所以我们只能按照原始的未经正则化的⽅法去更新w,这就相当于去掉ηλsgn(w)/n这⼀项,所以我们可以规定sgn(0)=0,这样就把w=0的情况也统⼀进来了。
3、L2正则化
L2正则化也是防⽌过拟合的,原因和L1⼀样⼀样的,就是形式不同。L2范数是各参数的平⽅和再求平⽅根。对于L2的每个元素都很⼩,但是不会为0,只是接近0,参数越⼩说明模型越简单,也就越不容易产⽣过拟合。L2正则化也叫做“岭回归”。
来让我们看看具体的例⼦,对于房屋价格预测我们可能有上百种特征,与刚刚所讲的多项式例⼦不同,我们并不知道 哪些是⾼阶多项式的项。所以,如果我们有⼀百个特征,我们并不知道如何选择关联度更好的参数,如何缩⼩参数的数⽬等等。因此在正则化⾥,我们要做的事情,就是把减⼩我们的代价函数(例⼦中是线性回归的代价函数)所有的参数值,因为我们并不知道是哪⼀个或哪⼏个要去缩⼩。因此,我们需要修改代价函数,在这后⾯添加⼀项,就像我们在⽅括号⾥的这项。当我们添加⼀个额外的正则化项的时候,我们收缩了每个参数。
为什么加了⼀项就让参数尽量⼩呢,因为只要你想让J最⼩,那么θ肯定尽可能的去⼩。
直播延时注意:这⾥我们没有去惩罚 θ0,实践中只会有较⼩的差异
λ 要做的就是控制惩罚项与均⽅差之间的平衡关系。
λ越⼤说明,参数被打压得越厉害,θ值也就越⼩
现在进⾏定量的分析:
L2正则化就是在代价函数后⾯再加上⼀个正则化项:
C0代表原始的代价函数,后⾯那⼀项就是L2正则化项,它是这样来的:所有参数w的平⽅的和,除以训练集的样本⼤⼩n。λ就是正则项系数,权衡正则项与C0项的⽐重。另外还有⼀个系数1/2,1/2经常会看到,主要是为了后⾯求导的结果⽅便,后⾯那⼀项求导会产⽣⼀个2,与1/2相乘刚好凑整。L2正则化项是怎么避免overfitting的呢?我们推导⼀下看看,先求导:
可以发现L2正则化项对b的更新没有影响,但是对于w的更新有影响:
在不使⽤L2正则化时,求导结果中w前系数为1,现在w前⾯系数为 1-ηλ/n ,因为η、λ、n都是正的,在样本量充⾜的时候,1-ηλ/n⼩于1,它的效果是减⼩w,这也就是权重衰减的由来。当然考虑到后⾯的导数项,w最终的值可能增⼤也可能减⼩。
(三)lasso回归和ridge回归
下⾯我们来看两个对⽐图
(1)lasso
注意到L1正则化是权值的绝对值之和,J是带有绝对值符号的函数,因此J是不完全可微的。机器学习的任务就是要通过⼀些⽅法(⽐如梯度下降)求出损失函数的最⼩值。考虑⼆维的情况,即只有两个权值w1和w2,此时L=|w1|+|w2|,对于梯度下降法,求解J的过程可以画出等值线,同时L1正则化的函数L也可以在w1w2的⼆维平⾯上画出来。如下图:
L1正则化
丙烯运输
在图中,当J等值线与L⾸次相交的地⽅就是最优解。上图中J与L在L的⼀个顶点处相交,这个顶点就是最优解。注意到这个顶点的值是(w1,w2)= (0,w)。可以直观想象,因为L函数有很多突出的⾓(⼆维情况下四个,多维情况下更多),J与这些⾓接触的机率会远⼤于与L其它部位接触的机率,⽽在这些⾓上,会有很多权值等于0,这就是为什么L1正则化可以产⽣稀疏模型,进⽽可以⽤于特征选择。
(2)ridge
消音工程同理,假设有如下带L2正则化的损失函数,同样可以画出他们在⼆维平⾯上的图形,如下:
双合金螺杆
L2正则化
图2 L2正则化⼆维平⾯下L2正则化的函数图形是个圆,与⽅形相⽐,被磨去了棱⾓。因此J与L相交时使得w1或w2等于零的机率⼩了许多,这就是为什么L2正则化不具有稀疏性的原因。
总结:L1会趋向于产⽣少量的特征,⽽其他的特征都是0,⽽L2会选择更多的特征,这些特征都会接近于0。Lasso在特征选择时候⾮常有⽤,⽽Ridge就只是⼀种规则化⽽已。在所有特征中只有少数特征起重要作⽤的情况下,选择Lasso⽐较合适,因为它能⾃动选择特征。⽽如果所有特征中,⼤部分特征都能起作⽤,⽽且起的作⽤很平均,那么使⽤Ridge也许更合适。

本文发布于:2024-09-22 19:35:57,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/3/314718.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:正则   参数   特征   函数   拟合   模型   代价   求导
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议