用法:
dask.array.linalg.svd_compressed(a, k, iterator='power', n_power_iter=0, n_oversamples=10, seed=None, compute=False, coerce_signs=True)
隨機壓縮rank-k薄奇異值分解。
這計算了一個大數組的近似奇異值分解。該算法通常比普通算法快,但不能提供準確的結果。可以通過輸入參數在性能和準確性之間取得平衡(見下文)。
- a: Array:
輸入數組
- k: int:
所需的薄 SVD 分解的等級。
- iterator: {‘power’, ‘QR’}, default=’power’:
定義用於迭代的技術,以應對平坦的奇異譜或輸入矩陣非常大的情況。
- n_power_iter: int, default=0:
冪迭代次數,當奇異值衰減緩慢時很有用。隨著
n_power_iter
的增加,誤差呈 index 下降。在實踐中,設置n_power_iter
- n_oversamples: int, default=10:
用於生成采樣矩陣的過采樣數。這個值增加了計算的子空間的大小,以效率為代價更準確。結果很少對這種選擇敏感,實際上,10 的值通常足夠高。
- compute:bool
是否在每次使用時計算數據。在執行多次傳遞時重新計算輸入可以減少內存壓力,但這意味著我們必須多次計算輸入。如果數據大於內存並且重新創建成本低廉,這是一個不錯的選擇。
- coerce_signs:bool
是否對奇異向量應用符號強製以保持確定性結果,默認為 True。
- u:數組,單一/正交
- s:數組,降序奇異值(最大在前)
- v:數組,單一/正交
參數:
返回:
參考:
N. Halko、P. G. Martinsson 和 J. A. Tropp。尋找具有隨機性的結構:構造近似矩陣分解的概率算法。 SIAM Rev.,調查和審查部分,卷。 53,編號。 2,第 217-288 頁,2011 年 6 月 https://arxiv.org/abs/0909.4061
例子:
>>> u, s, v = svd_compressed(x, 20)
相關用法
- Python dask.array.linalg.svd用法及代碼示例
- Python dask.array.linalg.norm用法及代碼示例
- Python dask.array.linalg.lu用法及代碼示例
- Python dask.array.linalg.qr用法及代碼示例
- Python dask.array.lib.stride_tricks.sliding_window_view用法及代碼示例
- Python dask.array.less用法及代碼示例
- Python dask.array.logical_or用法及代碼示例
- Python dask.array.log1p用法及代碼示例
- Python dask.array.ldexp用法及代碼示例
- Python dask.array.log2用法及代碼示例
- Python dask.array.logical_and用法及代碼示例
- Python dask.array.logical_not用法及代碼示例
- Python dask.array.log10用法及代碼示例
- Python dask.array.logaddexp2用法及代碼示例
- Python dask.array.logical_xor用法及代碼示例
- Python dask.array.log用法及代碼示例
- Python dask.array.logaddexp用法及代碼示例
- Python dask.array.stats.ttest_ind用法及代碼示例
- Python dask.array.ma.masked_values用法及代碼示例
- Python dask.array.divmod用法及代碼示例
注:本文由純淨天空篩選整理自dask.org大神的英文原創作品 dask.array.linalg.svd_compressed。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。