With the emergence of Artificial Intelligence, numerical algorithms are moving towards more approximate approaches. For methods such as PCA or diffusion maps, it is necessary to compute eigenvalues of a large matrix, which may also be dense depending on the kernel. A global method, i.e. a method that requires all data points simultaneously, scales with the data dimension N and not with the intrinsic dimension d; the complexity for an exact dense eigendecomposition leads to $\mathcal{O}(N^{3})$. We have combined the two frameworks, $\mathsf{datafold}$ and $\mathsf{GOFMM}$. The first framework computes diffusion maps, where the computational bottleneck is the eigendecomposition while with the second framework we compute the eigendecomposition approximately within the iterative Lanczos method. A hierarchical approximation approach scales roughly with a runtime complexity of $\mathcal{O}(Nlog(N))$ vs. $\mathcal{O}(N^{3})$ for a classic approach. We evaluate the approach on two benchmark datasets -- scurve and MNIST -- with strong and weak scaling using OpenMP and MPI on dense matrices with maximum size of $100k\times100k$.
翻译:随着人工智能的兴起,数值算法正趋向于采用更近似的策略。对于主成分分析或扩散映射等方法,需要计算大型矩阵的特征值——这些矩阵根据核函数的不同,也可能是稠密的。全局方法(即同时需要所有数据点的方法)的规模取决于数据维度N,而非内在维度d;精确稠密特征分解的计算复杂度为$\mathcal{O}(N^{3})$。我们结合了$\mathsf{datafold}$和$\mathsf{GOFMM}$两个框架:前者用于计算扩散映射,其计算瓶颈在于特征分解;后者则通过迭代Lanczos方法近似计算特征分解。分层近似方法的运行复杂度约为$\mathcal{O}(Nlog(N))$,而传统方法为$\mathcal{O}(N^{3})$。我们在两个基准数据集——scurve和MNIST——上,利用OpenMP和MPI对最大规模为$100k\times100k$的稠密矩阵进行强可扩展性与弱可扩展性评估。