到目前为止,我还没有找到专门支持此功能的Python包.我尝试过scikit-learn,尽管他们的线性回归模型示例仅显示y是一个数组(每个观察一个因变量)的情况,但它似乎能够处理多个y.但是,当我将这种“多变量”方法的输出与我通过手动循环每个因变量并相互独立地预测它们得到的结果进行比较时,结果完全相同.我不认为应该是这种情况,因为在一些因变量(> 0.5)之间存在强相关性.
代码看起来像这样,y是n x 1矩阵或n x m矩阵,x和newx矩阵各种大小(x == n中的行数).
ols = linear_model.linearRegression()ols.fit(x,y)ols.predict(newx)
此功能是否实际执行多元回归?
@R_502_6120@ 这是一个数学/统计问题,但无论如何我都会尝试回答它.你看到的结果绝对是预期的.像这样的线性模型不会考虑因变量之间的相关性.
如果您只有一个因变量,那么您的模型基本上由权重向量组成
w_0 w_1 ... w_n,
其中n是要素的数量.使用m因变量,您可以使用权重矩阵
w_10 w_11 ... w_1nw_20 w_21 ... w_2n.... ....w_m0 w_m1 ... w_mn
但是不同输出变量(1,…,m)的权重完全相互独立,并且由于误差平方和总和分成每个输出变量的误差平方和,所以最小化平方总损失是与为每个输出变量设置一个单变量线性模型并将它们的平方损失彼此独立地最小化完全相同.
总结以上是内存溢出为你收集整理的python – scikit-learn是否执行“真正的”多元回归(多个因变量)?全部内容,希望文章能够帮你解决python – scikit-learn是否执行“真正的”多元回归(多个因变量)?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)