坐标下降法求LASSO问题怎样执行

  统计/机器学习 回归分析 监督式学习 开放问题    浏览次数:4928        分享
0

学习中看到有人提到利用 坐标下降法 求解LASSO,但是有个疑问,坐标下降法是每次迭代固定其余维度变化一个维度,然后求拉格朗日函数在当前维度上的最小值,这个求最小化的步骤中岂不是还是要利用到导数?就是在这个轴方向上的导数为零即为最小值取值点,但是LASSO问题中惩罚项决定了其目标函数是不可导的,这样坐标下降法怎么能执行下去呢?再一个,目标下降法需要保证目标函数是可微凸函数才能保证收敛于全局最小值,LASSO的目标函数天然就不是可微的,这样是不是说明使用坐标下降法得到的额LASSO问题的解是不可信的呢

 

CE_PAUL   2019-02-11 23:48



   1个回答 
1

LASSO的正则项只在“数学”的0点才不可微。但因为有round-off error,“数值计算”中的0并不是数学上的0,而是(0-e,0+e),e是浮点能表示的精度。在IEEE 754中有$+0,-0$两个浮点数表示0,分别代表(0,0+e),(0-e,0)。所以当$x=+0/-0$时,$d(|x|_1)/d(x)=+1/-1$,并非不存在。把L1norm当做可微的就可以了。

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2019-02-12 05:00



  相关讨论

什么时候该用LASSO,什么时候该用Ridge?

LASSO是无偏的还是有偏的?

Lasso的自由度是多大?

Ridge回归的解析解是什么?

关于lasso和ridge的区别

Lasso是对数值大的系数压缩大还是数值小的系数压缩大?

L2-norm为什么会让模型变得更加简单?

惩罚系数不变,特征变大,是不是更容易被Lasso去除?

post lasso是什么意思?

Ridge,Lasso,ElasticNet的目标函数分别是什么?

  随便看看

plt.show()之后matplotlib图像依然不展示

python里怎么求一个矩阵的秩?

线性回归或者逻辑回归中常提到的AIC和BIC是什么意思?

为啥Xgboost比GradientBoost好那么多?

关于方差膨胀因子(VIF)的问题