我正在寻找一种实现,它使用确定性而不是随机方法在 O(N^2 k) 步骤中计算密集 NxN 矩阵的截断奇异值分解 (SVD)。(这里,0<k<=N 是保留的模式数。)Python 函数sklearn.decomposition.TruncatedSVD可以在 O(N^2 log k) 步骤中计算近似截断的 SVD,但随机化引入了我试图避免的错误。其他实现,例如 ARPACK,进行完整的 SVD 分解并采取 O(N^3) 步。根据 Halko 等人的说法。(2011) [https://dx.doi.org/10.1137/090771806] 存在用于确定性近似 SVD的算法,需要 O(N^2 k) 步,但我无法找到任何语言的实现。谢谢你。
非随机截断 SVD 的 O(N^2 k) 实现
计算科学
svd
2021-12-21 21:57:23
0个回答
没有发现任何回复~
其它你可能感兴趣的问题