目标函数
Lasso相当于带有L1正则化项的线性回归。先看下目标函数: R S S ( w ) + λ ∥ w ∥ 1 = ∑ i = 0 N ( y i − ∑ j = 0 D w j h j ( x i ) ) 2 + λ ∑ j = 0 D ∣ w j ∣ RSS(w)+\lambda \Vert w\Vert_1=\sum_{i=0}^{N}(y_i-\sum_{j=0}^D{w_jh_j(x_i)})^2+\lambda \sum_{j=0}^{D}|w_j| RSS(w)+λ∥w∥1=∑i=0N(yi−∑j=0Dwjhj(xi))2+λ∑j=0D∣wj∣
这个问题由于正则化项在零点处不可求导,所以使用非梯度下降法进行求解,如坐标下降法或最小角回归法。
坐标下降法
本文介绍坐标下降法。
坐标下降算法每次选择一个维度进行参数更新,维度的选择可以是随机的或者是按顺序。
当一轮更新结束后,更新步长的最大值少于预设阈值时,终止迭代。
下面分为两部求解
RSS偏导
下面做一下标记化简
ρ j = ∑ i = 1 N h j ( x i ) ( y i − ∑ k ≠ j w k h k ( x i ) ) \rho_j=\sum_{i=1}^Nh_j(x_i)(y_i-\sum_{k \neq j }w_kh_k(x_i)) ρj=∑i=1Nhj(xi)(yi−∑k=jwkhk(xi))
z j = ∑ i =