L0、L1、L2范数及正则化

范数对于一个向量来说是一个向量的长度(模),对于一个矩阵来说是矩阵中所有向量的长度的求和。

在深度学习中,监督类学习问题其实就是在规则化参数同时最小化误差。最小化误差目的是让模型拟合训练数据,而规则化参数的目的是防止模型过分拟合训练数据。

参数太多,会导致模型复杂度上升,容易过拟合,也就是训练误差小,测试误差大。因此,我们需要保证模型足够简单,并在此基础上训练误差小,这样训练得到的参数才能保证测试误差也小,而模型简单就是通过规则函数来实现的。

规则化项可以是模型参数向量的范数。如:L0、L1、L2等。 

一、L0范数与L1范数

       L0范数是指向量中非0的元素的个数。如果我们用L0范数来规则化一个参数矩阵W的话,就是希望W的大部分元素都是0。换句话说,让参数W是稀疏的。

       L1范数是指向量中各个元素绝对值之和。即:    

L1范数是L0范数的最优凸近似。任何的规则化算子,如果他在Wi=0的地方不可微,并且可以分解为一个“求和”的形式,那么这个规则化算子就可以实现稀疏。W的L1范数是绝对值,|w|在w=0处是不可微。

       虽然L0可以实现稀疏,但是实际中会使用L1取代L0。因为L0范数很难优化求解(NP问题),L1范数是L0范数的最优凸近似,它比L0范数要容易优化求解。

二、L2范数

       L2范数,又叫“岭回归”(Ridge Regression)、“权值衰减”(weight decay),它的作用是改善过拟合。过拟合是:模型训练时候的误差很小,但是测试误差很大,也就是说模型复杂到可以拟合到所有训练数据,但在预测新的数据的时候,效果很差。

       L2范数是指向量中各元素的平方和然后开根。即:    

我们让L2范数的规则项||W||2最小,可以使得W的每个元素都很小,都接近于0。而越小的参数说明模型越简单,越简单的模型则越不容易产生过拟合现象。

三、L1范数和L2范数的差别

一个是绝对值最小,一个是平方最小:

L1会趋向于产生少量的特征,而其他的特征都是0,而L2会选择更多的特征,这些特征都会接近于0。

L1正则化给了模型的拉普拉斯先验,L2正则化给了模型的高斯先验。从参数的角度来看,L1得到稀疏解,去掉一部分特征降低模型复杂度。L2得到较小的参数(如果参数很大,样本稍微变动一点,值就有很大偏差),相当于降低每个特征的权重。

四、正则化相关

对于正则化的一般思路是, 减少特征的数量, 降低模型的复杂度. 所以我们要对每个参数进行惩罚, 从而得到’更简单’的并且可以防止过拟合的模型. 但是在实际问题中我们很难判断哪些特征比较重要, 所以对每一个参数(除了第一个截距参数)进行惩罚, 将(线性回归的)代价函数改为:

其中,  叫做正则化项(L2范数), λ叫做正则化参数. λ的作用就是在”更好地拟合数据”和”防止过拟合”之间权衡.如过λ过大的话, 就会导致θ1、θ2、θ3…近似于0, 这样我们的假设函数就为:hθ(x)=θ0. 这时就变成了欠拟合(Underfit). 所以需要选择一个合适的λ. 

L1和L2的区别 
1、L1是Lasso Regression,表示向量中每个元素绝对值的和:L1范数的解通常是稀疏性的,倾向于选择数目较少的一些非常大的值或者数目较多的insignificant的小值。 
2、L2是岭回归,Ridge Regression,是欧氏距离也就是平方和的平方根。L2范数越小,可以使得w的每个元素都很小,接近于0,但L1范数不同的是他不会让它等于0而是接近于0。 
3、L1正则化的w可取的值是转置的方形,L2对应的是圆形。这样损失函数l(w)的最小值更容易在L1对应的边角上取得,从而这些维度变成0了。 
从贝叶斯的角度来看,加入正则项相当于加入了一种先验。即当训练一个模型时,仅依靠当前的训练数据集是不够的,为了实现更好的泛化能力,往往需要加入先验项。 
L1范数相当于加入了一个Laplacean先验; 
L2范数相当于加入了一个Gaussian先验。 
4、L2对大数的惩罚更大,但是解相对来说比较均匀。
 

参考:   https://blog.csdn.net/zchang81/article/details/70208061?utm_source=copy

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值