• 文档 >
  • torch >
  • torch.lu_unpack
快捷键

torch.lu_unpack

torch.lu_unpack(LU_data, LU_pivots, unpack_data=True, unpack_pivots=True, *, out=None)

将由 lu_factor() 返回的 LU 分解解包到 P、L、U 矩阵中。

参见

lu() 返回 LU 分解的矩阵。其梯度公式比先执行 lu_factor() 再执行 lu_unpack() 的效率更高。

参数:
  • LU_data(张量)- 压缩的 LU 分解数据

  • LU_pivots(张量)- 压缩的 LU 分解的置换

  • unpack_data(布尔值)- 标志表示是否应该解包数据。如果 False ,则返回的 LU 为空张量。默认: True

  • unpack_pivots(布尔值)- 标志表示是否应该将置换解包到置换矩阵 P 中。如果 False ,则返回的 P 为空张量。默认: True

关键字参数:

out (元组,可选) – 三个张量的输出元组。如果为 None,则忽略。

返回值:

namedtuple (P, L, U)

示例:

>>> A = torch.randn(2, 3, 3)
>>> LU, pivots = torch.linalg.lu_factor(A)
>>> P, L, U = torch.lu_unpack(LU, pivots)
>>> # We can recover A from the factorization
>>> A_ = P @ L @ U
>>> torch.allclose(A, A_)
True

>>> # LU factorization of a rectangular matrix:
>>> A = torch.randn(2, 3, 2)
>>> LU, pivots = torch.linalg.lu_factor(A)
>>> P, L, U = torch.lu_unpack(LU, pivots)
>>> # P, L, U are the same as returned by linalg.lu
>>> P_, L_, U_ = torch.linalg.lu(A)
>>> torch.allclose(P, P_) and torch.allclose(L, L_) and torch.allclose(U, U_)
True

© 版权所有 PyTorch 贡献者。

使用 Sphinx 构建,并使用 Read the Docs 提供的主题。

文档

PyTorch 的全面开发者文档

查看文档

教程

深入了解初学者和高级开发者的教程

查看教程

资源

查找开发资源并获得您的疑问解答

查看资源