系数非负的线性回归的python实现

  统计/机器学习 回归分析 Python    浏览次数:2208        分享
0

我现在需要做一个线性回归,但是考虑到实际意义,要求所有的回归系数都是非负的。回归是采用最小二乘的方法。

请问这类回归在python中有什么实现的方法吗?

多谢多谢!

 

TheTheThe   2018-05-10 09:40



   2个回答 
3

这个叫非负最小二乘回归。sklearn.linear_model.Lasso里可以设置positive=True来使得系数都为正。如果你不需要正则化的话就把alpha设成0或者很小的数。

from sklearn.linear_model import Lasso
model = Lasso(alpha=0.00001, positive=True)
model.fit(X,y)


SofaSofa数据科学社区DS面试题库 DS面经

木子周   2018-05-12 21:53

2

这是带不等式条件的二次规划(Quadratic Programming)

$argmin_{w}{|Xw-y|^2} s.t. w>0$,

可以用http://cvxopt.org/examples/tutorial/qp.html

https://scaron.info/blog/quadratic-programming-in-python.html

SofaSofa数据科学社区DS面试题库 DS面经

Zealing   2018-05-11 05:08



  相关主题

用uci的crimes做了一个线性回归,test很差   2回答

python中如何实现保序回归算法?   1回答

python里怎么做分位数回归(quantile regression)?   1回答

最小二乘线性回归的推导   2回答

线性回归需要满足哪些基本前提假设   1回答

怎么处理真值大部分为0的回归问题   3回答

常用的回归模型中,哪些具有较好的鲁棒性(robustness)?   2回答

怎么理解分位数回归quantile regression的目标函数?   1回答

在线性回归模型中存在epoch的说法吗?   2回答

如果迫使一个线性回归模型的截距为0,会有什么坏处吗?   2回答

泊松回归的公式是什么?   2回答

逻辑回归模型中变量的系数怎么理解?   4回答



回答问题时需要注意什么?

我们谢绝在回答前讲“生动”的故事。

我们谢绝“这么简单,你自己想”、“书上有的,你认真看”这类的回答;如果你认为对方的提问方式或者内容不妥,你可以直接忽略该问题,不用进行任何作答,甚至可以对该问题投反对票。

我们谢绝答非所问。

我们谢绝自己不会、硬要回答。

我们感激每一个用户在编写答案时的努力与付出!