用法:
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。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。