为什么L2范数损失有唯一的解决方案,而L1范数损失可能有多个解决方案?


16

http://www.chioka.in/differences-between-l1-and-l2-as-loss-function-and-regularization/

如果您查看这篇文章的顶部,那么作者会提到L2规范具有唯一的解决方案,而L1规范可能具有很多解决方案。我从正则化的角度理解了这一点,但从在损失函数中使用L1范数或L2范数的角度理解。

如果查看标量x(x ^ 2和| x |)的函数图,则可以很容易地看到两者都有一个唯一的解决方案。


2
“ fnx”?...请进行编辑以使其更清晰。您是说“功能”吗?
Glen_b-恢复莫妮卡

Answers:


25

让我们考虑一个最简单的可能的一维问题。(高维案例具有相似的属性。)

虽然和都有一个唯一的最小值(具有不同x偏移的绝对值函数的总和)通常不会。考虑和:|xμ|(xμ)2i|xiμ|x1=1x2=3

sum_i | x_i-mu |的图

(注意,尽管在x轴上有标签,但这实际上是的函数;我应该修改标签,但是我将其保留不变)μ

在更高的层面,你可以得到恒定的最小的区域与范数。有一个在拟合直线的情况下的例子在这里L1

二次仍然是二次的,因此将具有唯一的解决方案。在较高的维数(比如说多元回归)中,二次问题可能不会自动具有唯一的最小值-您可能具有多重共线性,导致参数空间损失为负的较低维数脊;与这里介绍的问题有些不同。i(xiμ)2=n(x¯μ)2+k(x)


一个警告。您链接到的页面声称 -norm回归很可靠。我不得不说我并不完全同意。只要它们不是影响点(x空间中的差异),它就可以抵抗y方向上的大偏差。即使是一个有影响力的异常值,它也可能被任意破坏。这里有一个例子在这里L1

由于(在某些特定情况下)您通常不会保证没有任何有高度影响力的观察,因此我不会称L1回归为稳健的。


绘图的R代码:

 fi <- function(x,i=0) abs(x-i)
 f <- function(x) fi(x,1)+fi(x,3)
 plot(f,-1,5,ylim=c(0,6),col="blue",lwd=2)
 curve(fi(x,1),-1,5,lty=3,col="dimgrey",add=TRUE)
 curve(fi(x,3),-1,5,lty=3,col="dimgrey",add=TRUE)

这很棒。您使用什么软件制作图表?
user3180 '18

2
R。这只是在基本图形中完成的。我已将代码添加到答案的末尾。
Glen_b-恢复莫妮卡

1
哇,从来没有意识到您可以为提供功能plot。头脑被炸了。
JAD

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.