如何在 python 中执行逻辑套索?

新手上路,请多包涵

scikit-learn 包提供了函数 Lasso()LassoCV() 但没有适合逻辑函数而不是线性函数的选项……如何在 python 中执行逻辑套索?

原文由 Fringant 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 420
2 个回答

Lasso 使用 L1 惩罚优化最小二乘问题。根据定义,您无法使用套索优化逻辑函数。

如果要优化具有 L1 惩罚的逻辑函数,可以使用 LogisticRegression 具有 L1 惩罚的估计器:

 from sklearn.linear_model import LogisticRegression
from sklearn.datasets import load_iris
X, y = load_iris(return_X_y=True)
log = LogisticRegression(penalty='l1', solver='liblinear')
log.fit(X, y)

请注意,只有 LIBLINEAR 和 SAGA(在 v0.19 中添加)求解器处理 L1 惩罚。

原文由 TomDLT 发布,翻译遵循 CC BY-SA 3.0 许可协议

您可以在 Python 中使用 glment。 Glmnet 使用热启动和活动集收敛,因此非常高效。这些技术使 glment 比其他套索实现更快。您可以从 https://web.stanford.edu/~hastie/glmnet_python/ 下载

原文由 Penning Yu 发布,翻译遵循 CC BY-SA 4.0 许可协议

推荐问题