L0、L1、L2范数的理解

一、什么是L1、L2、L3范数

L0范数是指向量中非0的元素的个数。(L0范数很难优化求解)

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

L2范数是指向量各元素的平方和然后求平方根

L1范数可以进行特征选择,即让特征的系数变为0.

L2范数可以防止过拟合,提升模型的泛化能力,有助于处理 condition number不好下的矩阵(数据变化很小矩阵求解后结果变化很大)

(核心:L2对大数,对outlier离群点更敏感!)

下降速度:最小化权值参数L1比L2变化的快

模型空间的限制:L1会产生稀疏 L2不会。

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

参考:L1范数与L2范数的区别_不二的博客-CSDN博客_l2范数

二、概念

范数是具有“长度”概念的函数。在向量空间内,为所有的向量的赋予非零的增长度或者大小。不同的范数,所求的向量的长度或者大小是不同的。

举个例子,2维空间中,向量(3,4)的长度是5,那么5就是这个向量的一个范数的值,更确切的说,是欧式范数或者L2范数的值。

L0、L1、L2范数的理解

 特别的,L0范数:指向量中非零元素的个数。无穷范数:指向量中所有元素的最大绝对值。

三、范数

一、L0范数和L1范数

考虑一个一阶线性回归的例子;

L0、L1、L2范数的理解

    对于这类问题,我们是希望找到一个L0、L1、L2范数的理解的方程去拟合这些点,方法也很简单,通过最小二乘法也就是:L0、L1、L2范数的理解也就是L0、L1、L2范数的理解,对于这个简单问题,可以得到一个确定的解w0和b0,而这是对于一个参数w来说,这时,假如设定其方程为L0、L1、L2范数的理解,也就是w的参数为w1和w2,不用说,这里就会有w0=w1+w2,记住这个等式,很重要!

这个时候,假如我要求w1和w2满足稀疏性怎么办?也就是最好一个为0,另一个为w0。Ok,下面我们继续来考虑用最小二乘法方程来得出w1和w2值:L0、L1、L2范数的理解,其实,这个结果也还是会满足w1+w2=w0,具体w1和w2等于多少,不能确定,无法保证稀疏性。 

这个时候假如加入约束条件:L0、L1、L2范数的理解,这里||w||0是w的L0范数,λ是约束项系数,也就是求解L0、L1、L2范数的理解这个时候,假如要保证其最小,就需要上面两项式子都相对最小,对于第二项式子,最好结果就是满足其中一个w参数为0,也就是w1或者w2为0,另一个参数等于w0(实际按上面公式是略小于w0,这里及后面假设等于w0,不影响分析)。所以L0范数实现了参数稀疏性。

同理,使用L1范数后最小二乘法公式为:L0、L1、L2范数的理解,这里来看一张图片理解:

 

L0、L1、L2范数的理解

对于情况a,也就是w1和w2都为正,这个时候上面公式变为:L0、L1、L2范数的理解,由于w0=w1+w2,所以也就是L0、L1、L2范数的理解,其中w0为定值,所以这里不起到参数稀疏作用,但是对于情况b来说,也就是一个为正一个为负,这样使得(|w1|+|w2|)这项变大,而为了让其最小,其结果就是w1为0,w2=w0,所以也起到稀疏化作用。

参考:本文链接:超简单理解L0、L1、L2范数原理及作用_恩泽君的博客-CSDN博客

 OK,来个一句话总结:L1范数和L0范数可以实现稀疏,L1因具有比L0更好的优化求解特性而被广泛应用。

       好,到这里,我们大概知道了L1可以实现稀疏,但我们会想呀,为什么要稀疏?让我们的参数稀疏有什么好处呢?这里扯两点:

1)特征选择(Feature Selection):

       大家对稀疏规则化趋之若鹜的一个关键原因在于它能实现特征的自动选择。一般来说,xi的大部分元素(也就是特征)都是和最终的输出yi没有关系或者不提供任何信息的,在最小化目标函数的时候考虑xi这些额外的特征,虽然可以获得更小的训练误差,但在预测新的样本时,这些没用的信息反而会被考虑,从而干扰了对正确yi的预测。稀疏规则化算子的引入就是为了完成特征自动选择的光荣使命,它会学习地去掉这些没有信息的特征,也就是把这些特征对应的权重置为0。

2)可解释性(Interpretability):

       另一个青睐于稀疏的理由是,模型更容易解释。例如患某种病的概率是y,然后我们收集到的数据x是1000维的,也就是我们需要寻找这1000种因素到底是怎么影响患上这种病的概率的。假设我们这个是个回归模型:y=w1*x1+w2*x2+…+w1000*x1000+b(当然了,为了让y限定在[0,1]的范围,一般还得加个Logistic函数)。通过学习,如果最后学习到的w*就只有很少的非零元素,例如只有5个非零的wi,那么我们就有理由相信,这些对应的特征在患病分析上面提供的信息是巨大的,决策性的。也就是说,患不患这种病只和这5个因素有关,那医生就好分析多了。但如果1000个wi都非0,医生面对这1000种因素,累觉不爱。

参考:机器学习中的范数规则化之(一)L0、L1与L2范数_zouxy09的专栏-CSDN博客_l0范数

 二、L2范数

参考:机器学习中的范数规则化之(一)L0、L1与L2范数_zouxy09的专栏-CSDN博客_l0范数

 

 

 

 

 

 

上一篇:Mysql数据安全备份


下一篇:NBA球员信息获取