Questions tagged «lasso»

回归模型的正则化方法将系数缩小为零,使其中一些等于零。因此套索执行特征选择。

3
带有交互作用项的LASSO-主效应缩小到零可以吗?
LASSO回归将系数缩小为零,从而有效地提供了模型选择。我相信在我的数据中,名义协变量和连续协变量之间存在有意义的相互作用。但是,真实模型的“主要影响”不一定有意义(非零)。当然我不知道,因为真正的模型是未知的。我的目标是找到真实的模型并尽可能地预测结果。 我了解到,在建立交互之前,经典的建模方法总是会包含主要效果。因此,如果在同一模型中存在协变量的交互作用,那么就不会有没有两个协变量和的主效应的模型。因此,该功能会 仔细选择模型术语(例如,基于后向或前向AIC)以遵守该规则。XXXžžZX* ZX∗žX*ZstepR LASSO的工作方式似乎有所不同。由于所有参数都是不利的,因此毫无疑问会发生这样的情况,即主效应缩小为零,而最佳(例如,交叉验证)模型的交互作用为非零。这是我特别为我的数据发现当使用R的glmnet软件包。 我收到了基于上面引用的第一条规则的批评,即,我最终的交叉验证的套索模型不包括一些非零交互的相应主效应项。但是,在这种情况下,此规则似乎有些奇怪。最终的问题是真实模型中的参数是否为零。假设它是,但交互作用为非零,则LASSO可能会识别出这一点,从而找到正确的模型。实际上,由于该模型不包含真正为零的主效应(实际上是噪声变量),因此根据该模型进行的预测似乎更为精确。 我是否可以基于此理由驳斥批评,还是应该采取一些预防措施,使LASSO在交互作用术语之前确实包含主要作用?

2
贝叶斯套索vs普通套索
套索可使用不同的实现软件。我知道在不同的论坛上有很多关于贝叶斯方法与常客方法的讨论。我的问题特别针对套索- 贝叶斯套索与常规套索有什么区别或优势? 这是该包中的两个实现示例: # just example data set.seed(1233) X <- scale(matrix(rnorm(30),ncol=3))[,] set.seed(12333) Y <- matrix(rnorm(10, X%*%matrix(c(-0.2,0.5,1.5),ncol=1), sd=0.8),ncol=1) require(monomvn) ## Lasso regression reg.las <- regress(X, Y, method="lasso") ## Bayesian Lasso regression reg.blas <- blasso(X, Y) 那么我什么时候应该选择一种或其他方法呢?还是一样?


1
网桥惩罚与Elastic Net正则化
很好地研究了一些罚函数和近似值,例如LASSO()和Ridge()以及它们如何进行回归比较。L1L1L_1L2L2L_2 我一直在阅读有关Bridge惩罚的信息,即广义惩罚。将其与具有\ gamma = 1的LASSO 和具有\ gamma = 2的Ridge进行比较,使其成为特殊情况。 γ = 1 γ = 2∑∥βj∥γ∑‖βj‖γ\sum \|\beta_{j}\|^{\gamma}γ=1γ=1\gamma = 1γ=2γ=2\gamma = 2 Wenjiang [ 1 ]将\ gamma \ geq 1时的Bridge惩罚γ≥1γ≥1\gamma \geq 1与LASSO进行了比较,但是我找不到与LASSO和Ri​​dge惩罚相结合的弹性网正则化的比较,给出为∑λ2∥β∥2+λ1∥β∥1∑λ2‖β‖2+λ1‖β‖1\sum \lambda_{2} \|\beta\|^{2}+\lambda_{1}\|\beta\|_{1}。 这是一个有趣的问题,因为Elastic Net和此特定的Bridge具有相似的约束形式。使用不同的度量比较这些单位圆(ppp是Minkowski距离的幂): p=1p=1p = 1对应于LASSO,p=2p=2p = 2对应于Ridge,p=1.4p=1.4p = 1.4于一个可能的网桥。弹性网在L1L1L_1和L2L2L_2罚分上具有相等的权重。例如,这些数字可用于识别稀疏性(Bridge明显缺少稀疏性,而Elastic Net将其保存在LASSO中)。 那么在正则化(稀疏性除外)方面,具有1 &lt;\ gamma &lt;2的Bridge与1&lt;γ&lt;21&lt;γ&lt;21<\gamma <2Elastic Net相比如何?我对监督学习特别感兴趣,因此也许有关特征选择/加权的讨论是适当的。也欢迎几何论证。 也许更重要的是,在这种情况下,Elastic Net是否总是更理想? …

3
为什么Lars和Glmnet为Lasso问题提供不同的解决方案?
我想更好地理解R封装Lars和Glmnet,这是用来解决问题的套索: (有关变量和样本,请参见第3页的www.stanford.edu/~hastie/Papers/glmnet.pdf)米我Ñ( β0β)∈ [Rp + 1[ 12 N∑我= 1ñ( y一世- β0- xŤ一世β)2+ λ | |β| |升1个]米一世ñ(β0β)∈[Rp+1个[1个2ñ∑一世=1个ñ(ÿ一世-β0-X一世Ťβ)2+λ||β||升1个]min_{(\beta_0 \beta) \in R^{p+1}} \left[\frac{1}{2N}\sum_{i=1}^{N}(y_i-\beta_0-x_i^T\beta)^2 + \lambda||\beta ||_{l_{1}} \right]pppññN 因此,我将它们都应用于相同的玩具数据集。不幸的是,对于相同的数据输入,这两种方法不能提供相同的解决方案。有人知道差异的来源吗? 我得到的结果如下:生成一些数据(8个样本,12个特征,Toeplitz设计,所有内容都居中)之后,我使用Lars计算了整个套索路径。然后,我使用由Lars计算的lambda序列(乘以0.5)运行Glmnet,希望获得相同的解决方案,但我没有。 可以看到解决方案是相似的。但是我如何解释这些差异?请在下面找到我的代码。这里有一个相关的问题:用于计算LASSO解决方案的GLMNET或LARS?,但没有包含我的问题的答案。 设定: # Load packages. library(lars) library(glmnet) library(MASS) # Set parameters. nb.features &lt;- 12 nb.samples &lt;- 8 nb.relevant.indices &lt;- 3 snr &lt;- 1 nb.lambdas …

1
为什么LASSO在高维度上找不到我的理想预测变量对?
我正在R中进行LASSO回归的小型实验,以测试它是否能够找到理想的预测变量对。该对的定义如下:f1 + f2 =结果 这里的结果是称为“年龄”的预定向量。通过取年龄向量的一半并将其余值设置为0,可以创建F1和f2,例如:age = [1,2,3,4,5,6],f1 = [1,2,3, 0,0,0]和f2 = [0,0,0,4,5,6]。通过从正态分布N(1,1)进行采样,我将此预测变量对与数量增加的随机创建变量结合在一起。 我看到的是当我命中2 ^ 16个变量时,LASSO再也找不到了。请参阅下面的结果。 为什么会这样呢?您可以使用以下脚本重现结果。我注意到,当我选择其他年龄向量时,例如:[1:193],LASSO确实找到了高维(&gt; 2 ^ 16)对。 剧本: ## Setup ## library(glmnet) library(doParallel) library(caret) mae &lt;- function(errors){MAE &lt;- mean(abs(errors));return(MAE)} seed = 1 n_start &lt;- 2 #start at 2^n features n_end &lt;- 16 #finish with 2^n features cl &lt;- …

1
如果LASSO等于用拉普拉斯先验进行线性回归,那么在分量为零的集合上如何有质量?
我们都熟悉在文献中有充分记载的概念,即LASSO优化(为简单起见,这里仅将注意力集中在线性回归的情况下) 等效于具有高斯误差的线性模型,在线性模型中,参数被赋予了拉普拉斯先验 \ exp(-\ lambda \ | \ beta \ | _1) 我们也知道,较高的那个会设置调整参数,\ lambda,参数的较大部分将设置为零。话虽如此,我有以下思想问题:升Ô 小号小号 =∥ÿ- Xβ∥22+ λ ∥ β∥1个升Øss=‖ÿ-Xβ‖22+λ‖β‖1个 {\rm loss} = \| y - X \beta \|_2^2 + \lambda \| \beta \|_1 经验值(- λ ∥ β∥1个)经验值⁡(-λ‖β‖1个) \exp(-\lambda \| \beta \|_1 ) λλ\lambda 考虑到从贝叶斯的角度来看,我们可以计算出后验概率,即非零参数估计值位于任何给定的时间间隔集合中,并且 LASSO设置为零的参数等于零。让我感到困惑的是,假设拉普拉斯先验是连续的(实际上是绝对连续的),那么在集合上如何有任何质量是\ {0 \}处的间隔和单例的乘积{ 0 }{0}\{0\}?

5
使用正则化算法时,我们仍然需要进行特征选择吗?
关于运行统计学习算法之前是否需要使用特征选择方法(随机森林特征重要性值或单变量特征选择方法等),我有一个问题。 我们知道,为避免过度拟合,我们可以对权重向量引入正则化惩罚。 因此,如果要进行线性回归,则可以引入L2或L1甚至弹性网正则化参数。为了获得稀疏解,L1惩罚有助于特征选择。 然后,是否仍需要在运行L1正则化或回归(例如Lasso)之前进行特征选择?从技术上讲,套索正在帮助我减少L1损失,那么为什么在运行算法之前需要选择特征? 我读了一篇研究文章,说先做Anova再做SVM比单独使用SVM可以提供更好的性能。现在的问题是:SVM本质上使用L2规范进行正则化。为了最大化裕量,它正在最小化权重向量范数。因此,它正在对其目标函数进行正则化。那么从技术上讲,诸如SVM之类的算法就不应该困扰于特征选择方法吗?但是该报告仍然说,在普通SVM功能更强大之前进行Univariate Feature选择。 有想法的人吗?

2
KKT与套索回归的无约束公式
L1惩罚回归(又名套索)以两种形式表示。设两个目标函数为 Q1=12||Y−Xβ||22Q2=12||Y−Xβ||22+λ||β||1.Q1=12||Y−Xβ||22Q2=12||Y−Xβ||22+λ||β||1. Q_1 = \frac{1}{2}||Y - X\beta||_2^2 \\ Q_2 =\frac{1}{2}||Y - X\beta||_2^2 + \lambda ||\beta||_1. 然后将两种不同的制剂是 argminβQ1argminβQ1 \text{argmin}_\beta \; Q_1 受 ||β||1≤t,||β||1≤t, ||\beta||_1 \leq t, 和等同 argminβQ2.argminβQ2. \text{argmin}_\beta \; Q_2. 使用Karush-Kuhn-Tucker(KKT)条件,很容易看出第一种配方的平稳性条件等同于采用第二种配方的梯度并将其设置为0。我找不到,也找不到,是第一种配方的补充松弛条件λ(||β||1−t)=0λ(||β||1−t)=0\lambda\left(||\beta||_1 - t\right) = 0如何通过第二种配方的溶液保证得到满足。

2
从惩罚回归模型估计R平方和统计显着性
我使用受罚的R包来获取数据集的压缩系数估计,在该数据集中,我有很多预测变量,而对于哪些预测变量很重要则知之甚少。在选择了调整参数L1和L2并且对系数感到满意之后,是否有一种统计上合理的方法来汇总模型拟合度(如R平方)? 此外,我对测试模型的整体重要性感兴趣(即R²= 0还是全部= 0)。 我已仔细阅读了此处提出的类似问题的答案,但并没有完全回答我的问题。我在这里使用的R包有一个很好的教程,作者Jelle Goeman在教程的最后有关于注释式回归模型的置信区间的以下注释: 要求回归系数或其他估计量的标准误差是一个很自然的问题。原则上,这种标准误差可以很容易地计算出来,例如使用引导程序。 尽管如此,该程序包还是故意不提供它们。这样做的原因是,标准误差对于严重偏差的估算(例如由惩罚估算方法产生的估算)不是很有意义。惩罚估计是一种通过引入实质性偏差来减少估计量方差的过程。因此,每个估计量的偏差都是其均方误差的主要组成部分,而其方差可能只占很小的一部分。 不幸的是,在惩罚回归的大多数应用中,不可能获得偏差的足够精确的估计。任何基于引导程序的计算都只能评估估计值的方差。仅当可获得可靠的无偏估计时,才可以使用偏差的可靠估计,而在使用罚分估计的情况下,情况通常并非如此。 因此,报告惩罚性估计的标准误差只能说明部分情况。它可能会给人以非常高的精度的错误印象,而完全忽略了由偏差引起的不准确性。做出仅基于估计方差评估的置信度声明,例如基于引导程序的置信区间,确实是一个错误。

2
选择LASSO变量后进行OLS有何意义?
最近,我发现在应用的计量经济学文献中,当处理特征选择问题时,通常会执行LASSO,然后使用所选变量进行OLS回归。 我想知道如何才能证明这种程序的有效性。会引起诸如变量遗漏之类的麻烦吗?有没有证据表明它更有效,或者结果更容易解释? 这里是一些相关的讨论: LASSO进行变量选择 使用套索/随机变量选择变量后使用树 如前所述,如果这样的程序总体上是不正确的,那么为什么还有如此多的研究呢?我可以说由于LASSO估算器的某些不可靠特性以及人们对OLS的偏爱,这只是一个经验法则,一个折衷的解决方案?

1
从该套索图得出的结论(glmnet)
以下是使用mtcarsR中设置的数据mpg作为DV以及其他变量作为预测变量的具有默认alpha(1,因此为lasso)的glmnet的图。 glmnet(as.matrix(mtcars[-1]), mtcars[,1]) 我们可以从这个图得出什么结论对于不同的变量,尤其是am,cyl和wt(红色,黑色和淡蓝色线)?我们将如何用输出表达要发布的报告中的内容? 我想到了以下几点: wt是的最重要的预测指标mpg。它对产品产生负面影响mpg。 cyl是的弱否定指标mpg。 am可能是的积极预测指标mpg。 其他变量不是的可靠预测指标mpg。 感谢您对此的想法。 (注意:cyl是黑线,直到非常接近它才达到0。) 编辑:以下是plot(mod,xvar ='lambda'),它按与上图相反的顺序显示x轴: (附言:如果您发现此问题有趣/重要,请对其进行投票;)

2
弹性/脊线/套索分析,然后呢?
我对预测器收缩/选择的弹性网程序真的很感兴趣。似乎非常强大。 但是从科学的角度来看,我不知道一旦获得系数该怎么办。我在回答什么问题?这些是对结果有最大影响的变量,并且是在验证过程中提供最佳方差/偏差比的系数吗? 与经典的p值/置信区间方法相比,这当然是一种非常具有描述性/预测性的方法。Tibshirani&Co.现在正在研究推论估计,但仍处于实验阶段。 某些人正在使用弹性网选择的变量来进行经典的推理分析,但这将消除该技术带来的方差限制。 另一个问题是,由于通过交叉验证选择了弹性网的lambda和alpha参数,因此它们具有随机可变性。因此,每次运行(例如)cv.glmnet()时,您将选择系数始终略有不同的预测变量子集。 我通过考虑将正确的lambda和alpha作为随机变量来解决此问题,然后重新运行交叉验证步骤n次以获取这些参数的分布。这样,对于每个预测变量,我将具有出现的次数,对于每个系数,我将具有结果的分布。这应该为我提供范围统计信息(如系数的sd)更通用的结果。观察以这种方式选择的lambda和alpha是否渐近地近似也很有趣,因为这将为进行推理测试开辟道路(但我不是统计学家,所以我不应该谈论我不喜欢的事情完全不了解)。 所以最后我的问题是:一旦从具有基于交叉验证的alpha和lambda的弹性网中获得了预测变量和系数,应该如何显示这些结果?您应该如何讨论它们?我们学到了什么?我们可以混淆哪个假设/概括?


1
套索,山脊或弹性净解路径是单调的条件是否明确?
从该套索图(glmnet)得出的结论问题说明了套索估计量的解决路径不是单调的。也就是说,一些系数在缩小之前就已经增长了绝对值。 我已将这些模型应用于几种不同类型的数据集,但从未见过这种“狂野”的行为,直到今天,他们一直认为它们总是单调的。 是否有一组明确的条件可确保求解路径是单调的?如果路径改变方向,是否会影响结果的解释?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.