论文标题
分布式高/瘦数据的单数值分解方法的调查
A Survey of Singular Value Decomposition Methods for Distributed Tall/Skinny Data
论文作者
论文摘要
奇异值分解(SVD)是最重要的矩阵因素之一,在众多应用领域中享有各种应用。在统计和数据分析中,SVD的常见应用,例如主组件分析(PCA)和线性回归。通常,这些应用程序出现在比列的行更大的数据上,即所谓的“高/瘦”矩阵。在大数据分析环境中,这可能采用仅数百列的数亿到数十亿至数十亿的形式。因此,需要快速,准确,可扩展的高高/瘦SVD实现,可以充分利用现代计算资源。为此,我们介绍了三种不同的算法,用于使用MPI进行通信计算此类高/瘦数据布局的SVD。我们使用常见的大数据分析技术(主要是PCA)将它们与之相关。最后,我们介绍了峰会超级计算机的CPU和GPU时序结果,并讨论了可能的替代方法。
The Singular Value Decomposition (SVD) is one of the most important matrix factorizations, enjoying a wide variety of applications across numerous application domains. In statistics and data analysis, the common applications of SVD such as Principal Components Analysis (PCA) and linear regression. Usually these applications arise on data that has far more rows than columns, so-called "tall/skinny" matrices. In the big data analytics context, this may take the form of hundreds of millions to billions of rows with only a few hundred columns. There is a need, therefore, for fast, accurate, and scalable tall/skinny SVD implementations which can fully utilize modern computing resources. To that end, we present a survey of three different algorithms for computing the SVD for these kinds of tall/skinny data layouts using MPI for communication. We contextualize these with common big data analytics techniques, principally PCA. Finally, we present both CPU and GPU timing results from the Summit supercomputer, and discuss possible alternative approaches.