scikit-learn 支持/计划哪些非负线性模型?

3 投票
1 回答
2361 浏览
提问于 2025-04-17 13:13

Scikit-learn提供了很多有用的线性模型。不过,我现在在处理一个线性问题,要求解出来的变量不能是负数,也就是说,结果必须是非负的。

我想用scikit-learn,但我看到的唯一一个支持非负约束的函数是Lasso(),需要通过设置'positive=true'这个选项来实现。LassoCV()和lasso_path()这两个函数则不支持非负约束。

在scikit-learn中还有其他非负线性模型吗?近期有没有计划添加这些功能?

1 个回答

3

目前稳定版本的scikit-learn支持在LassoCVlasso_path中使用positive这个参数(虽然在文档说明中似乎没有提到后者)。这里有一个关于如何使用非负lasso_path的例子:https://github.com/scikit-learn/scikit-learn/blob/master/examples/linear_model/plot_lasso_coordinate_descent_path.py

ElasticNet及其相关的交叉验证版本也支持非负选项。

撰写回答