1700537025
问题 L1正则化使得模型参数具有稀疏性的原理是什么?
1700537026
1700537027
难度:★★★☆☆
1700537028
1700537029
分析与解答
1700537030
1700537031
■ 角度1:解空间形状
1700537032
1700537033
机器学习的经典之作给出的解释无疑是权威且直观的[16],面试者给出的答案多数也是从这个角度出发的。在二维的情况下,黄色的部分是L2和L1正则项约束后的解空间,绿色的等高线是凸优化问题中目标函数的等高线,如图7.6所示。由图可知,L2正则项约束后的解空间是圆形,而L1正则项约束的解空间是多边形。显然,多边形的解空间更容易在尖角处与等高线碰撞出稀疏解。
1700537034
1700537035
1700537036
1700537037
1700537038
图7.6 L2正则化约束与L1正则化约束
1700537039
1700537040
上述这个解释无疑是正确的,但却不够精确,面试者往往回答过于笼统,以至于忽视了几个关键问题。比如,为什么加入正则项就是定义了一个解空间约束?为什么L1和L2的解空间是不同的?面试官如果深究下去,很多面试者难以给出满意的答案。其实可以通过KKT条件给出一种解释。
1700537041
1700537042
事实上,“带正则项”和“带约束条件”是等价的。为了约束w的可能取值空间从而防止过拟合,我们为该最优化问题加上一个约束,就是w的L2范数的平方不能大于m:
1700537043
1700537044
1700537045
1700537046
1700537047
(7.55)
1700537048
1700537049
为了求解带约束条件的凸优化问题,写出拉格朗日函数
1700537050
1700537051
1700537052
1700537053
1700537054
(7.56)
1700537055
1700537056
若w*和λ*分别是原问题和对偶问题的最优解,则根据KKT条件,它们应满足
1700537057
1700537058
1700537059
;
1700537060
1700537061
(7.57)
1700537062
1700537063
仔细一看,第一个式子不就是w*为带L2正则项的优化问题的最优解的条件嘛,而λ*就是L2正则项前面的正则参数。
1700537064
1700537065
这时回头再看开头的问题就清晰了。L2正则化相当于为参数定义了一个圆形的解空间(因为必须保证L2范数不能大于m),而L1正则化相当于为参数定义了一个棱形的解空间。如果原问题目标函数的最优解不是恰好落在解空间内,那么约束条件下的最优解一定是在解空间的边界上,而L1“棱角分明”的解空间显然更容易与目标函数等高线在角点碰撞,从而产生稀疏解。
1700537066
1700537067
■ 角度2:函数叠加
1700537068
1700537069
第二个角度试图用更直观的图示来解释L1产生稀疏性这一现象。仅考虑一维的情况,多维情况是类似的,如图7.7所示。假设棕线是原始目标函数L(w)的曲线图,显然最小值点在蓝点处,且对应的w*值非0。
1700537070
1700537071
1700537072
1700537073
1700537074
图7.7 函数曲线图
[
上一页 ]
[ :1.700537025e+09 ]
[
下一页 ]