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$.
翻译:随着人工智能的兴起,数值算法正朝着更近似的方法发展。对于PCA或扩散映射等方法,需要计算大型矩阵的特征值,该矩阵也可能因核函数而变得稠密。全局方法(即需要同时处理所有数据点的方法)的规模取决于数据维度N,而非内在维度d;精确稠密特征分解的计算复杂度为$\mathcal{O}(N^{3})$。我们结合了$\mathsf{datafold}$和$\mathsf{GOFMM}$两个框架。第一个框架用于计算扩散映射,其计算瓶颈为特征分解,而第二个框架通过迭代Lanczos方法近似计算特征分解。层次近似方法的运行时复杂度大致为$\mathcal{O}(Nlog(N))$,而经典方法为$\mathcal{O}(N^{3})$。我们使用OpenMP和MPI对两个基准数据集(scurve和MNIST)进行了强扩展与弱扩展评估,测试的对象为最大规模为$100k\times100k$的稠密矩阵。