L1正则化在0处不可导时如何处理?

1 坐标轴下降法

设lasso回归的损失函数为:

  

其中,n为样本个数,m为特征个数。

由于lasso回归的损失函数是不可导的,所以梯度下降算法将不再有效,下面利用坐标轴下降法进行求解。

坐标轴下降法和梯度下降法具有同样的思想,都是沿着某个方向不断迭代,但是梯度下降法是沿着当前点的负梯度方向进行参数更新,而坐标轴下降法是沿着坐标轴的方向。

下面为具体的更新过程:

(3)通过以上步骤即可以得到每轮的迭代结果,如果相对于的变化很小,则停止迭代,否则,重复步骤(2).

通过以上迭代过程可以看出

    1. 坐标轴下降法进行参数更新时,每次总是固定另外m-1个值,求另外一个的局部最优值,这样也避免了Lasso回归的损失函数不可导的问题。

    2. 坐标轴下降法每轮迭代都需要O(mn)的计算。(和梯度下降算法相同)

坐标轴下降法的数学依据为:

对于一个可微凸函数,其中为n*1的向量,如果对于一个解,使得在某个坐标轴上都能达到最小值,则就是的全局的最小值点。

2 Proximal Algorithms 近端梯度下降

西瓜书P253有介绍

3 ADMM

[Algorithm]ADMM简明理解

Reference

坐标轴下降法(解决L1正则化不可导的问题)

[Algorithm]ADMM简明理解​​​​​​​

发布了74 篇原创文章 · 获赞 17 · 访问量 2万+

猜你喜欢

转载自blog.csdn.net/sinat_25394043/article/details/104126446