Spec-Zone.ru › PyTorch 2.14

torch.linalg.slogdet

torch.linalg.slogdet(A, *, out=None) [исходный код]

Вычисляет знак и натуральный логарифм абсолютного значения определителя квадратной матрицы.

Для комплексных A функция возвращает знак и натуральный логарифм модуля определителя, то есть логарифмическое полярное разложение определителя.

Определитель можно восстановить как sign * exp(logabsdet). Если определитель матрицы равен нулю, функция возвращает (0, -inf).

Поддерживаются типы данных float, double, cfloat и cdouble. Также поддерживаются пакеты матриц; если A представляет собой пакет матриц, выходные данные имеют те же размерности пакета.

См. также

torch.linalg.det() вычисляет определитель квадратных матриц.

Параметры:

A (Tensor) – тензор формы (*, n, n), где * — ноль или несколько размерностей пакета.

Именованные аргументы:

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

Возвращает:

Именованный кортеж (sign, logabsdet).

sign будет иметь тот же тип данных, что и A.

logabsdet всегда будет действительным числом, даже если A — комплексное число.

Примеры:

>>> A = torch.randn(3, 3)
>>> A
tensor([[ 0.0032, -0.2239, -1.1219],
        [-0.6690,  0.1161,  0.4053],
        [-1.6218, -0.9273, -0.0082]])
>>> torch.linalg.det(A)
tensor(-0.7576)
>>> torch.logdet(A)
tensor(nan)
>>> torch.linalg.slogdet(A)
torch.return_types.linalg_slogdet(sign=tensor(-1.), logabsdet=tensor(-0.2776))

© 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.slogdet.html

Spec-Zone.ru

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