我试图理解一个引号“在存在相关变量的情况下,岭回归可能是首选。”假设我们有变量a1,a2,b1,c2,并且2个a是相关的。如果我们使用套索,它可以消除a之一。套索和里奇都会收缩。因此,听起来在这种情况下套索可能会更好。但是报价说里奇更好。这是一个错误的报价还是我遗漏了什么?(也许思维太简单了) 最佳答案 这个问题的答案很大程度上取决于您正在处理的数据集的类型。为您的问题提供简短的答案:进行一些正则化总是很好,因此请尽可能避免“普通”线性回归。Ridge可以被认为是很好的默认正则化,但是,如果您认为功能集中只有很少的功能真正有用,则应考虑使用LASSO正则化,或者使用Elastic Net(解释如下)。这两种方法倾向于将“无用的”特征权重减小为零。在像您这样的情况下,假设您可能具有许多相关功能,则您可能倾向于运行这些“调零”正则化方法之一。可以同时使用Elastic Net和LASSO,但是,相比于LASSO,Elastic Net通常更受青睐,因为当您拥有的特征集大于训练集中的实例数量时,或者当多个特征之间具有很强的相关性时,LASSO可能会表现不正常(根据您的情况)。弹性净正则化可以理解为一种混合方法,它融合了L2和L1范式的惩罚。具体而言,弹性净回归使成本函数最小化:混合比r超参数在0到1之间,并控制使用多少L2或L1罚分(0为山脊,1为套索)。最后,Python Scikit-Learn的库使ElasticNet易于实现。例如:from sklearn.linear_model import ElasticNetelastic_net= ElasticNet(alpha= 0.1, l1_ratio= 0.5) # l1_ratio is the mix relastic_net.fit(X,y)如果您想对LASSO正则化与Ridge正则化相比有何数学解释,我建议您参考Aurelien Geron的书:动手学习或斯坦福大学有关正则化的资源(与MATLAB软件包的相似之处):这是python生成的比较两个罚款和成本函数的图:https://web.stanford.edu/~hastie/glmnet/glmnet_alpha.html在LASSO上,我们可以观察到“批次梯度下降”路径在装订线的末端有一点反弹。这主要是由于这样的事实,即坡度在O_2 = 0时会突然变化。应逐渐降低学习率,以收敛到全局最小值(按照动手学习ML指南生成的图)希望有帮助!关于machine-learning - 套索或岭相关变量,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42904211/
10-12 21:58