学习心得整理如下:
1. 模型的目的:两者都是解决过度拟合的问题。为什么过拟合是个问题呢?这要从模型的误差说起。
模型的误差= 偏差(bias)+方差(variance),在我的理解中,bias就是对样本内数据拟合的偏误,类似residual;variance指的是对样本外数据拟合的偏误,类似预测能力。
因此,当出现过拟合的时候,bias会很小,是好事,但是variance就会变的很大,甚至会将模型的误差推的很高,这就是坏事了,是需要解决的问题。需要让模型不要对样本内的数据拟合的太好。
2. Lasso:least absolute shrinkage and selection operator 是如何解决过度拟合的呢?
Lasso使用的是L1 regularization,就是L1正则化的方法。通俗来讲,就是一维正则化的方法。下面是模型,方便理解一些:
就是在OLS的求解过程中,加入一个一维的(绝对值)项,作为惩罚项。限制模型的系数大小,不要让某一个变量对于模型有过度的解释能力。同时让一些本来解释能力不强的变量的系数直接等于0。因为存在这样的正则化过程,Lasso模型同样还有挑选解释变量的效果,最终的结果是稀疏的,sparsity。这个效果很适合用在初始变量很多的情况下,lasso可以帮助挑出来解释能力更好的变量,提高效率。
另外需要注意的是,lasso因为加入了绝对值项,因此在求解的过程中是不可导的,所以优化方法和常规方法都不同。
3. Ridge Regression:岭回归,是如何解决过度拟合的呢?
就是在OLS的求解过程中,加入一个二位的(平方)项,作为惩罚项。限制模型的系数大小,不要让某一个变量对于模型有过度的解释能力,但是岭回归不会让任何系数都等于零。岭回归加入的是平方项,所以是可以正常求导的,所以一般结果都不会是让估计系数等于零。计算起来也更快一点。
4. 关于lambda的选取:我们可以看到lasso和ridge回归中都有一个不确定的lambda,该如何取值呢?一般是在模型中试一下。lasso的收敛速度很快,也就是说lambda取很小的值的时候,就已经能解决过度拟合的问题了,比如0.01。但是在ridge回归中,lambda可能要取10才会有同样的效果。
最后贴两篇延伸阅读:
中文:https://blog.csdn.net/Joker_sir5/article/details/82756089
英文:https://www.analyticssteps.com/blogs/l2-and-l1-regularization-machine-learning
英文:https://towardsdatascience.com/l1-and-l2-regularization-methods-ce25e7fc831c


雷达卡



京公网安备 11010802022788号







