torch.linalg.matrix_sqrth
-
torch.linalg.matrix_sqrth(A) → Tensor[исходный код] -
Вычисляет главный квадратный корень симметричной (или эрмитовой) положительно определённой матрицы.
Пусть равно или . Для симметричной (или эрмитовой) положительно определённой матрицы эта функция возвращает единственную симметричную (или эрмитову) положительно определённую матрицу , такую что
Поддерживаются входные данные типов float, double, cfloat и cdouble. Также поддерживаются пакеты матриц; если
Aявляется пакетом матриц, выходные данные имеют те же размерности пакета.Примечание
При вычислении используется только нижняя треугольная часть
A, и предполагается, чтоAявляется симметричной (или эрмитовой). См.torch.linalg.eigh().См. также
torch.linalg.cholesky()вычисляет другое разложение симметричной (или эрмитовой) положительно определённой матрицы.- Параметры:
-
A (Tensor) – тензор формы
(*, n, n), где*— ноль или более пакетных размерностей, содержащих симметричные (или эрмитовы) положительно определённые матрицы.
Примеры:
>>> A = torch.tensor([[2., 0.], [0., 9.]]) >>> torch.linalg.matrix_sqrth(A) tensor([[1.4142, 0.0000], [0.0000, 3.0000]]) >>> A = torch.randn(2, 3, 3) >>> A = A @ A.mT + 3 * torch.eye(3) # batch of symmetric positive-definite matrices >>> X = torch.linalg.matrix_sqrth(A) >>> torch.allclose(X @ X, A, atol=1e-5) 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.linalg.matrix_sqrth.html