liam0205.github.io icon indicating copy to clipboard operation
liam0205.github.io copied to clipboard

谈谈 L1 与 L2-正则项 | 始终

Open Liam0205 opened this issue 6 years ago • 4 comments

https://liam.page/2017/03/30/L1-and-L2-regularizer/

在前作里,我们讨论了机器学习里的偏差-方差权衡。机器学习里的损失函数(代价函数)可以用来描述模型与上帝真相(ground truth)之间的差距,因此可以解决「偏差」的问题。但是仅有损失函数时,我们无法解决方差的问题,因而会有过拟合风险。 今次我们讨论损失函数的反面——正则项,看看 $L_1$-正则项和 $L_2$-正则项是如何使机器学习模型走出过拟合的泥沼的。

Liam0205 avatar Jan 12 '19 08:01 Liam0205

可以谈谈什么时候用L1什么时候用L2么?从区别的角度还是没有一下子明白

changchang0801 avatar Sep 17 '19 20:09 changchang0801

@changchang0801 这个其实是看你追求的是什么。就像文章中说的,L1 倾向于得到稀疏解,L2 倾向于得到平滑解。 所以,在需要稀疏性的场景下,比如 online learning 的场景下,需要稀疏解。这时候,就需要各种魔改 L1 的用法。

Liam0205 avatar Sep 18 '19 01:09 Liam0205

在真实的计算中,L1正则如何得到0呢?参数w=0.005,梯度更新之后w=-0.002,这样w也一直在0附近震荡,无法达到0呀

fangding678 avatar Apr 16 '20 03:04 fangding678

@fangding678 在真实的计算中,L1正则如何得到0呢?参数w=0.005,梯度更新之后w=-0.002,这样w也一直在0附近震荡,无法达到0呀

如果参数值接近于0,直接设置为0;下一次参数更新导致损失变大了,就不更新了,

yuriyao avatar Jul 01 '21 03:07 yuriyao