【发布时间】:2021-08-12 16:43:59
【问题描述】:
我有表格的数据
n = number of samples
features: n x 1 matrix
data: n x m matrix
我想使用相同的features 执行多个泊松回归,其中输出值因数据列而异。目前,我使用sklearn 一次做一个泊松回归,例如我的 Python 代码看起来像
from sklearn import linear_model
clf = linear_model.PoissonRegressor(fit_intercept=True,alpha=0)
for col in range(m):
clf.fit(features,data[:,col])
但是,我必须进行许多这些泊松回归,而且单独完成它们太慢了。所以我的问题是:有没有一种方法(在 Python 中)可以同时进行所有这些泊松回归?
如果我改为进行线性回归,那么我可以使用很好的矩阵技巧同时进行这些操作。然而,这里的关键区别在于泊松回归涉及使用优化算法来最大化似然函数。所以本质上,我想一次解决多个优化问题。
我尝试过的一件事是使用scipy.optimize 来最大化每个泊松回归的(对数)似然之和。然而,这对初始化非常敏感并且没有收敛。
因此我希望有一个:
- 一个更好的 Python 优化包,我可以使用它来最大化泊松回归目标函数(似然之和),或者
- 一个 Python 包,可让您同时进行泊松回归。
有人有什么想法吗?任何帮助将不胜感激非常。谢谢!
【问题讨论】:
标签: python regression mathematical-optimization poisson