torch.geqrf¶
- torch.geqrf(input, *, out=None)¶
这是一个用于直接调用 LAPACK 的 geqrf 的底层函数。此函数返回一个 namedtuple (a, tau),如 LAPACK 文档 geqrf 中所定义。
计算
input
的 QR 分解。 Q 和 R 矩阵都存储在同一个输出张量 a 中。R 的元素存储在对角线之上和对角线上。基本反射器(或 Householder 向量)隐式定义矩阵 Q 存储在对角线下方。此函数的结果可以与torch.linalg.householder_product()
一起使用以获得 Q 矩阵,或与torch.ormqr()
一起使用,后者使用 Q 矩阵的隐式表示,以实现高效的矩阵-矩阵乘法。有关更多详细信息,请参阅 LAPACK 文档 geqrf。
注意
另请参阅
torch.linalg.qr()
,它计算 Q 和 R 矩阵,以及torch.linalg.lstsq()
,其中driver="gels"
选项用于可以使用 QR 分解求解矩阵方程的函数。