torch.linalg.svdvals
-
torch.linalg.svdvals(A, *, driver=None, out=None) → Tensor -
Вычисляет сингулярные значения матрицы.
Поддерживает входные типы float, double, cfloat и cdouble. Также поддерживает пакеты матриц, и если
Aпредставляет собой пакет матриц, то выходной пакет имеет те же размерности.Сингулярные значения возвращаются в порядке убывания.
Примечание
Эта функция эквивалентна NumPy’s
linalg.svd(A, compute_uv=False).Примечание
При вводе на устройстве CUDA эта функция синхронизирует это устройство с процессором.
См. также
torch.linalg.svd()вычисляет полное сингулярное разложение.- Параметры
-
A (Тензор) – тензор формы
(*, m, n), где*- это ноль или более размерностей пакета. - Ключевые аргументы
-
-
driver (str, необязательно) – имя метода cuSOLVER, который будет использоваться. Этот ключевой аргумент работает только с входными данными CUDA. Доступные варианты:
None,gesvd,gesvdj, иgesvda. Подробности см. вtorch.linalg.svd(). По умолчанию:None. -
out (Тензор, необязательно) – выходной тензор. Игнорируется, если
None. По умолчанию:None.
-
driver (str, необязательно) – имя метода cuSOLVER, который будет использоваться. Этот ключевой аргумент работает только с входными данными CUDA. Доступные варианты:
- Возвращает
-
Вещественный тензор, даже когда
Aкомплексный.
Примеры:
>>> A = torch.randn(5, 3) >>> S = torch.linalg.svdvals(A) >>> S tensor([2.5139, 2.1087, 1.1066]) >>> torch.dist(S, torch.linalg.svd(A, full_matrices=False).S) tensor(2.4576e-07)
© 2024, PyTorch Contributors
PyTorch has a BSD-style license, as found in the LICENSE file.
https://pytorch.org/docs/2.1/generated/torch.linalg.svdvals.html