Numpy / Scipy:使用相同的设计矩阵求解几个最小二乘法

问题描述 投票:0回答:3

我面临一个通过scipy.linalg.lstsq(M,b)解决的最小二乘问题,其中:

  • [M具有形状(n,n)] >>
  • [b具有形状(n,)] >>
  • 问题是我不得不为不同的b解决很多时间。我该如何做些更有效的事情?我猜想lstsq会独立于b的值执行很多操作。

    想法?

我面临一个最小平方的问题,我通过scipy.linalg.lstsq(M,b)解决,其中:M的形状为(n,n)b的形状为(n,)。问题是我必须解决它a一堆不同b的时间。我怎么能...

numpy scipy least-squares
3个回答
0
投票

您的问题尚不清楚,但我想您是要为不同的数组(Mx=b)计算方程scipy.linalg.lstsq(M,b)b0, b1, b2..。如果是这种情况,您可以将进程与concurrent.futures.ProcessPoolExecutor并行进行。此文档非常简单,可以帮助python一次运行多个scipy求解器。

希望这会有所帮助。


0
投票

您可以将M分解为QR或SVD产品,并手动找到lsq解决方案。


0
投票

如果您的线性系统是确定的,我将存储M LU分解并将其用于所有b

© www.soinside.com 2019 - 2024. All rights reserved.