python 中的最小二乘 GELS LAPACK 例程 - 它存在吗?

Least squares GELS LAPACK routine in python - does it exist?

我一直在查看函数 numpy.linalg.lstsq,它包含 LAPACK 提供的所有类型的求解器,除了基于 QR 分解的 GLES 例程(事实上,使用Q 是浪费计算时间)。问题是这个 GLES 例程有实现吗?

此外,我在网上看到的所有基于QR的最小二乘的实现,都是在QR分解中计算Q,然后使用它,但需要低效,因为计算Q是一种浪费,并且我们只需要反射器。

解释最小二乘求解器类型的 LAPCAK 网站: https://www.netlib.org/lapack/lug/node27.html 如您所见,numpy.linalg.lstsq 仅支持 4 个中的 3 个。

如果您找不到所需的 LAPACK 例程的 high-level 副本,总有 scipy.linalg.lapack,其中包含 LAPACK 例程的 low-level 包装器。看起来所有 GELS 变体都在那里,除了 GELSX 兼容性变体 - 有 dgelssgels