L1和L2正则化约束的一种解释
(2020-03-10 19:29:20)写在最开始:
模型融合以及有约束优化时常常会遇到如下复合优化目标:
L = f + λg,其中 λ 是 temperature
factor。
那么如何理解这种优化目标呢?这里举一个比较形象的例子:考托福
托福满分120,越高越好,因此 f = 120 -
score
如果Loss函数是 L =
f,显然目标就是把托福考的高,越高越好,没有其他的限制。
接着要求提高了,由于经济条件限制,我想考好还不想多花钱。那么如何用数学语言来描述:尽量少交钱(少交报名费,少报补习班)去考出一个好的分数呢?
答案就是在目标函数中引入代价 g,即 L = f +
g。
对于这种复合优化函数,可以尝试考虑一种简单情况来简化思维:假设
x1,x2 都能使得 f 取得最小值,但 g(x2) < g(x1),那么若是极小化整体的 f+g,则 x2
才是最优解。确实做到了在确保f足够小的前提下,尽可能减小g。
紧接着要求又提高了,有2个学生,他俩经济条件不同,且他俩都想考好还不多花钱。显然 L = f+g
并没有考虑到这2个学生各自的特征。即,我们需要一个 temperature factor
去控制(或者tradeoff)考的高和花钱少这两个要求。
终极形式的目标函数终于出现了:L = f + λ g,这里 λ
就是 temperature factor。
当 λ << 1 时,表示 minf
更重要,在这个场景里是:不怎么在乎钱,可以容忍多花些钱,考高了就好。
当 λ >> 1 时,表示 ming
更重要,在这个场景里是:不能花太多钱,即使考的不怎么好也不再刷分了。
两个极端情况:
当 λ = 0
时,问题退化为无约束优化问题。
当 λ >>>
1 时,这种情况不应该出现,毕竟原始的优化目标还是 f ,g只是约束条件,λ 过于大会造成优化对象错误地转移到约束条件
g 上。(在这个场景里是:过分在乎钱,那就不用考了,毕竟不考一分钱都不用花)。
上述例子中 L 只有 f 和 g
两项,三项及其以上也是同样的道理。有约束优化的拉格朗日函数也可以这样理解。
一.
L2正则化约束为什么鼓励稳定解?
Loss函数的形式:
J = L + 1/2
||w||^2
这种情况比较简单,如何能理解上述例子,这里也不难理解,就是在
L 较小的解中,找 ||w||_2 最小的解。L2
范数(向量的长度、模值)小的解更为稳定。
二. L1正则化约束为什么鼓励稀疏解
Loss函数的形式:
J = L + λ ∑ | w_i
|
这里需要指明的是:L1正则化约束是鼓励稀疏解,绝非一定会得到稀疏解。
代数解释:
对于任意维度 i,J 在 w_i = 0 处的左导数为
d J/d w_i = d L/d w_i -
λ,右导数为 d J/d w_i =
d L/d w_i + λ。如果
| d L/d w_i | < | λ |,则 w_i =
0 处存在最优值。如果好多维度都是这种情况,就会出现稀疏解。
如果 | d L/d
w_i | > | λ
|,即 d J/d w_i 在
w_i = 0 处没有符号的跳转,此时这个维度 i
的最优取值不为0。如果好多维度都是这种情况,就不会出现稀疏解。(即L1正则化约束并不一定会得到稀疏解)。
几何解释:暂时没找到较为严谨且足够形象的几何解释,网上流传的那种画目标函数和 L1
范数等高线的那种解释是错的,不要相信。