arXivDaily arXiv每日学术速递 周一至周五更新
arXiv 2110.03423cs.LGcs.PF
收藏

随机SVD的高效GPU实现及其应用

Efficient GPU implementation of randomized SVD and its applications

Jagiellonian University(雅盖隆大学);Faculty of Mathematics and Computer Science(数学与计算机科学学院);NVIDIA Corp.(英伟达公司);AGH University of Science and Technology(AGH科技大学);Faculty of Applied Mathematics(应用数学学院)

Łukasz Struski, Paweł Morkisz, Przemysław Spurek, Samuel Rodriguez Bernabeu, Tomasz Trzciński

AI总结:

针对矩阵分解多项式复杂度高、计算开销大的问题,研究提出以BLAS-3快速矩阵乘法为基础重构随机SVD公式,结合快速随机数生成器充分利用GPU并行能力,经评估性能优于同类方法并纳入官方CUDA实现。

摘要:

矩阵分解在机器学习中无处不在,应用场景包括降维、数据压缩和深度学习算法。典型的矩阵分解解决方案具有多项式复杂度,这会显著提升其计算成本与耗时。在本研究中,我们利用可在现代图形处理单元(GPU,深度学习等领域的主流计算架构)上并行运行的高效处理操作,来降低矩阵分解计算的计算负担。更具体地说,我们重新构建了随机分解问题的公式,将快速矩阵乘法运算(BLAS-3)作为基础构建模块。我们表明,这种公式结合快速随机数生成器,能够充分挖掘GPU中并行处理的潜力。我们的大量评估证实了该方法优于其他同类方法,我们还将本研究的成果作为官方CUDA实现的一部分发布(https://docs.nvidia.com/cuda/cusolver/index.html)。

英文摘要:

Matrix decompositions are ubiquitous in machine learning, including applications in dimensionality reduction, data compression and deep learning algorithms. Typical solutions for matrix decompositions have polynomial complexity which significantly increases their computational cost and time. In this work, we leverage efficient processing operations that can be run in parallel on modern Graphical Processing Units (GPUs), predominant computing architecture used e.g. in deep learning, to reduce the computational burden of computing matrix decompositions. More specifically, we reformulate the randomized decomposition problem to incorporate fast matrix multiplication operations (BLAS-3) as building blocks. We show that this formulation, combined with fast random number generators, allows to fully exploit the potential of parallel processing implemented in GPUs. Our extensive evaluation confirms the superiority of this approach over the competing methods and we release the results of this research as a part of the official CUDA implementation (https://docs.nvidia.com/cuda/cusolver/index.html).

机构、总结、中文摘要均由AI分析而来,可能存在错误,请以论文正文为准。

↑