比如我有两个变量X1, X2,做完线性回归之后发现它们的系数分别为
β1=10,β2=1
现在我对这个线性回归加L1的惩罚项,也就是说模型变成了LASSO。
按照LASSO的原理,β1和β2应该变小。那么谁变小的幅度更大呢?还是说它们是等比例的变小?
2个回答
LASSO的loss有两项分别是likelihood和prior。Loss对于β的gradient也分成两项。来至于likelihood的gradient和问题本身相关,很难比较gradβ1和gradβ2的大小。我们只能比较来至于prior的gradient。
d(|β|)/dβ=sign(β)
也就是说来至于prior的改变量的绝对值是一个常数C(C=α∗λ,α是learning rate,λ是拉格朗日乘数,用于平衡likelihood和prior)。假如C=0.1,β1=10,β2=1,那么β1和β2只通过prior能变成0的最少步数分别是100步和10步。
如果是RIDGE,来至于prior的gradient
d(|β|2)/dβ=2β
随着β的减小,改变的速度也会下降。
SofaSofa数据科学社区DS面试题库 DS面经 相关讨论
随便看看