快捷方式

torch.linalg.svdvals

torch.linalg.svdvals(A, *, driver=None, out=None) Tensor

計算矩陣的奇異值。

支援 float, double, cfloat 和 cdouble 資料型別的輸入。也支援矩陣批處理,如果 A 是矩陣批處理,則輸出具有相同的批處理維度。

奇異值按降序返回。

注意

此函式等同於 NumPy 的 linalg.svd(A, compute_uv=False)

注意

當輸入位於 CUDA 裝置上時,此函式會將該裝置與 CPU 同步。

另請參閱

torch.linalg.svd() 計算完整的奇異值分解。

引數

A (Tensor) – 形狀為 (*, m, n) 的 tensor,其中 * 是零個或多個批處理維度。

關鍵字引數
  • driver (str, 可選) – 要使用的 cuSOLVER 方法名稱。此關鍵字引數僅對 CUDA 輸入有效。可用選項為:Nonegesvdgesvdjgesvda。詳情請查閱 torch.linalg.svd()。預設值:None

  • out (Tensor, 可選) – 輸出 tensor。如果為 None 則忽略。預設值:None

返回值

一個實值 tensor,即使 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)

文件

查閱 PyTorch 的完整開發者文件

檢視文件

教程

獲取面向初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源