L1 和 L2的区别

L1范数,又称Lasso正则化,导致稀疏权重,便于特征提取;L2范数有助于防止过拟合,提升模型泛化能力。L1范数在优化时使权重快速收敛至0,而L2范数则避免权重直接为0,维持模型稳定。L0范数指示非零元素数量,常用于稀疏表示。在实际应用中,L1范数因其优化特性更受欢迎。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

L1 和 L2的区别:

L1范数是指向量中各个元素绝对值值和,也有一个美称叫“稀疏规则算子”。(Lasso regularization)
比如向量 A = [ 1 , − 1 , 3 ] A = [1,-1,3] A=[1,1,3],那么A的L1范数为 ∣ 1 ∣ + ∣ − 1 ∣ + ∣ 3 ∣ |1|+|-1|+|3| 1+1+3
总结一下就是:

  • L1范数:为x向量各个元素绝对值之和
  • L2范数:为x向量各个元素平方和的1/2次方。(又称Eudclidean范数)

在支持向量机学习过程中,

  • L1范数实际是一种对于成本函数求解最优的过程,因此,L1范数正则化通过向成本函数中添加L1范数,使得学习得到的结果满足稀疏化,从而方便人类提取特征,即L1范数可以使权值稀疏,方便特征提取。
  • L2范数可以防止过拟合,提升模型的泛化能力。

L1,L2 在图上表示如下,引用链接下下文中,
在这里插入图片描述

当w趋近与于0的时候,L1的斜率是不变的,所以w会很快的变成0.
而L2的斜率随着w变小而变小,从而很难到达0,因此w会尽可能而不是等于0.

什么是范式:

a function that assigns a strictly positive length or size to each vector in a vector space, except for the zero vector. ——Wikipedia
一个向量的norm就是将该向量投影到[0,)范围内的值,其中0值只有零向量的norm取到。看到这样的一个范围,相信大家就能想到与现实中的距离类比。
∣ ∣ x ∣ ∣ p : = ( ∑ i = 1 n ∣ x i ∣ p ) 1 p ||x||_p := (\sum_{i=1}^n|x_i|^p)^\frac{1}{p} xp:=(i=1nxip)p1
当p == 1时是L1范数
当p ==2 时是L2范数
引用:https://www.zhihu.com/question/26485586/answer/616029832

L0范数指向量中非0元素的个数,如果我们用L0范数来规范一个参数矩阵,就是希望大部分元素是0。即让参数W是稀疏的。 通过使用L0范数和L1范数可以实现系数,但是L1范数因具有L0更好的优化求解特性而被广泛使用。

让参数稀疏有什么好处:

  1. 特征选择
  2. 可解释性

选择 使用L2范数的好处:

  1. L2范数可以防止过拟合,提高模型泛化能力
  2. 优化计算

具体原理请参考:
https://blog.youkuaiyun.com/zouxy09/article/details/24971995

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值