Spec-Zone.ru › PyTorch 2.14

torch.lu_unpack

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

Распаковывает LU-разложение, возвращённое функцией lu_factor(), в матрицы P, L, U.

См. также

lu() возвращает матрицы из LU-разложения. Формула вычисления градиента этой функции эффективнее, чем у последовательного вызова lu_factor() и lu_unpack().

Параметры:
  • LU_data (Tensor) – упакованные данные LU-факторизации
  • LU_pivots (Tensor) – упакованные опорные элементы LU-факторизации
  • unpack_data (bool) – флаг, указывающий, следует ли распаковать данные. Если False, возвращаемые L и U являются пустыми тензорами. Значение по умолчанию: True
  • unpack_pivots (bool) – флаг, указывающий, следует ли распаковать опорные элементы в матрицу перестановки P. Если False, возвращаемый P является пустым тензором. Значение по умолчанию: True
Именованные аргументы:

out (tuple, необязательный) – выходной кортеж из трёх тензоров. Игнорируется, если None.

Возвращает:

именованный кортеж (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

© 2026, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://docs.pytorch.org/docs/2.14/generated/torch.lu_unpack.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API