问题标签 [lasso-regression]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
random - glmmLasso 中随机效应的结构
我想在一组 360 个观察值中在 ~150 个固定效应和 7 个随机效应变量中执行模型选择。我决定将 Lasso 程序与 glmmLasso 一起用于混合模型。我进行了大量研究,以找到一些可比较模型的示例,但没有成功。这是我的数据示例:
响应变量是计数 (RHI_counts_12)。
我的问题是关于模型中随机效应变量的结构。我有 2 个分类随机效应变量(“站点”和“位置”;“位置”嵌套在“站点”中)和 5 个数值随机效应变量。我已经像这样构建了我的模型(仅使用固定效应变量的样本):
如果我有这两个分类嵌套随机效应,我根本不相信构建随机效应的正确方法。我想有一个位置嵌套在站点中的模型,我认为这不是我得到的。这是我的随机效果输出(在此输出中,“Loc”代表位置,“siteName”代表站点):
你认为这是对的吗?我无法使用嵌套在“站点”中的“位置”构建此模型(并且所有其他随机因素也将嵌套在“站点”中。)我尝试了许多不同的方法但没有成功。
我已经非常感谢您阅读我的内容以及对 glmmLasso 中随机效应结构的任何建议!:-)
托马斯
r - 具有 1L 惩罚和 10 倍交叉验证的逻辑回归
我正在尝试在训练集上应用带有 L1 惩罚的逻辑回归。我需要使用 10 折交叉验证来找到惩罚参数的最佳值。谁能告诉我为什么 x1-x3 的模型与 x1-x14 的模型得到相同的结果?
数据:
对于 x1-x3
对于 x1-x14
现在尝试了另一种方式,但最终对于 x1-x3 和 x1-x14 仍然得到相同的值:
python - Python - Lasso / LassoCV 中的交互术语?
我正在寻找在 scikit-learn 的 Lasso / LassoCV 中添加交互项。如果是两个连续变量之间或者两个分类变量之间的交互,我可以在交互中添加对应于每个元素相乘的列。但是当我们有分类变量和连续变量之间的交互时,我不能将它们相乘。
python - 如何在 sklearn 中为 LASSO 方法绘制 ROC 曲线?
我想将 lasso 与 sklearn 中的其他分类器进行比较。我有一个二元结果向量 y。我通常计算一个向量概率,其中包含每个输入点的预测概率为 1 作为表型,然后从这两个向量生成 ROC 曲线。但是如何计算 lasso 分类器的概率呢?没有方法 predict_proba。
对于其他分类器,此代码有效:
dfphenotypes=pd.DataFrame(y) dfpredicted=pd.DataFrame(probas)
python - 如何在python中执行逻辑套索?
scikit-learn 包提供了函数Lasso()
,LassoCV()
但没有选项可以拟合逻辑函数而不是线性函数...如何在 python 中执行逻辑套索?
scikit-learn - sklearn 中的 SparsePCA 无法正常工作?
首先让我澄清一下,这里的“稀疏 PCA”是指具有 L1 惩罚和稀疏负载的 PCA,而不是稀疏矩阵上的 PCA。
我已经阅读了 Zou 和 Hastie 的关于稀疏 PCA 的论文,我已经阅读了关于 sklearn.decomposition.SparsePCA 的文档,并且我知道如何使用 PCA,但我似乎无法从 SparsePCA 获得正确的结果。
也就是说,当 L1 惩罚为 0 时,SparsePCA 的结果应该与 PCA 一致,但负载差异很大。为了确保我没有弄乱任何超参数,我在 R 中使用了相同的超参数(收敛容差、最大迭代次数、岭惩罚、套索惩罚……)和来自“elasticnet”的“spca”,R 给了我正确的结果。如果有人有使用此功能的经验并且可以让我知道我是否犯了任何错误,我宁愿不必通过 SparsePCA 的源代码。
以下是我生成数据集的方式。这有点令人费解,因为我想要一个特定的马尔可夫决策过程来测试一些强化学习算法。只需将其视为一些非稀疏数据集。
现在我运行 PCA 和 SparsePCA。当 lasso 惩罚 'alpha' 为 0 时,SparsePCA 应该给出与 PCA 相同的结果,但事实并非如此。其他超参数使用 R 中 elasticnet 的默认值设置。如果我使用 SparsePCA 的默认值,结果仍然不正确。
当 lasso 惩罚大于 0 时,SparsePCA 的结果仍然与 R 给我的结果有很大不同,后者基于人工检查和我从原始论文中学到的东西是正确的。那么,是 SparsePCA 坏了,还是我错过了什么?
r - 我应该如何获得套索模型的系数?
这是我的代码:
与线性模型不同,我无法从摘要(套索)中找到套索回归模型的系数。我该怎么做?或者也许我可以使用 glmnet?
r - 如何从 R 中的 glmnet 获取 coefs 名称?
我glmnet
在 R 中做套索。我有套索系数out$beta
输入:
如何提取变量的名称?
期望的输出:
x1, x2,x3
我试过的
$
as.data.frame
as.matrix
但它们都没有将 转换coefs
为 2 行列矩阵。它们仍然是一个向量,x1 0.5744207722
。
我无法手动完成。我有 1000 多个变量和更多模型要运行。而且我不会不把它写在我的磁盘上,然后再读回来。
python - Python LASSO最大非零系数数
我有一个相当大的数据集,其中包括 100 多个系数和数千个条目。因此,我想使用 Lasso 方法进行模型训练。
我目前正在研究 sci-kit 文档:
尽管实现看起来很简单,但我找不到允许限制非零系数的最大数量的输入参数,例如 10。
更清楚地说,在 Lasso 的 MatLab 实现中,参数 'DFMax' 允许上述情况。
在任何 Python 实现中都有这样的选项吗?
r - 所有 lambda 的 glmmLasso 尝试错误
我一直在尝试使用 glmmLasso 为混合模型进行变量选择,但我似乎无法让模型工作。我已经将我的模型设置为与此处找到的演示类似。我正在使用使用 BIC 选择 lambda 的简单方法。
这是我一直在运行的代码。
我不确定的一件事是 Delta.start。我正在关注演示,我假设被重复的 0 的数量是变量的数量,或者如果它是一个因子,你在 0 中添加 1 比因子中的水平数少。
运行此代码,所有 BIC 分数仍然是Inf
. 而且,看着 glm1 我发现了这个错误
有没有人对如何解决这个问题有任何想法?我不确定这是否会导致问题,但在火车数据集中,ID 大约有 7,500 个级别。
不幸的是,我无法包含任何数据以使其可重现。我希望其他人过去曾遇到过这个问题并且知道发生了什么。我正在尝试生成一些也存在此问题的数据。
编辑
现在看起来它与start=Delta.start
控制有关。当我删除模型适合时。我仍然不确定 Delta.start 到底是怎么回事。