我试图找到一种方法来拟合具有正系数的线性回归模型。
我找到的唯一方法是sklearn's Lasso model,它有正=真参数,但不建议使用alpha = 0(意味着没有其他权重约束)。
您知道其他模型/方法/方法吗?
由于
答案 0 :(得分:4)
IIUC,这是一个可以通过scipy.optimize.nnls
解决的问题,它可以做非负最小二乘法。
解决argmin_x || Ax - b || _2 for x> = 0。
在您的情况下, b 是 y , A 是 X , x 是β(系数),但是,它是相同的,不是吗?
答案 1 :(得分:1)
许多函数可以保持正系数的线性回归模型。
答案 2 :(得分:0)
从 0.24 版本开始,scikit-learn LinearRegression
包含一个类似的参数 positive
,它正是这样做的;来自docs:
positive : bool, default=False
当设置为 True
时,强制系数为正。此选项仅适用于密集数组。
0.24 版中的新功能。