dask.array.linalg.svd

dask.array.linalg.svd

dask.array.linalg.svd(a, coerce_signs=True)[源代码]

计算矩阵的奇异值分解。

参数
a(M, N) 数组
强制符号布尔

是否对奇异向量应用符号强制,以通过默认的 True 来保持确定性结果。

返回
u(M, K) 数组, 酉 / 正交

a 的左奇异向量(按列排列),形状为 (M, K),其中 K = min(M, N)。

s(K,) 数组,按降序排列的奇异值(最大的在前)

a 的奇异值。

v(K, N) 数组, 酉 / 正交

a 的右奇异向量(按行排列),形状为 (K, N),其中 K = min(M, N)。

警告

SVD 仅支持在一维上进行分块的数组。这要求所有输入要么包含单列分块(高瘦型),要么包含单行分块(矮胖型)。对于在两个维度上进行分块的数组,请参见 da.linalg.svd_compressed。

参见

np.linalg.svd

等效的 NumPy 操作

da.linalg.svd_compressed

完全分块数组的随机SVD

dask.array.linalg.tsqr

QR 分解用于高瘦数组

dask.array.utils.svd_flip

奇异向量的符号归一化

示例

>>> u, s, v = da.linalg.svd(x)