Interpolative and CUR decompositions involve "natural bases" of row and column subsets, or skeletons, of a given matrix that approximately span its row and column spaces. These low-rank decompositions preserve properties such as sparsity or non-negativity, and are easily interpretable in the context of the original data. For large-scale problems, randomized sketching to sample the row or column spaces with a random matrix can serve as an effective initial step in skeleton selection to reduce computational cost. A by now well-established approach has been to extract a randomized sketch, followed by column-pivoted QR CPQR) on the sketch matrix. This manuscript describes an alternative approach where CPQR is replaced by LU with partial pivoting (LUPP). While LUPP by itself is not rank-revealing, it is demonstrated that when used in a randomized setting, LUPP not only reveals the numerical rank, but also allows the estimation of the residual error as the factorization is built. The resulting algorithm is both adaptive and parallelizable, and attains much higher practical speed due to the lower communication requirements of LUPP over CPQR. The method has been implemented for both CPUs and GPUs, and the resulting software has been made publicly available.
翻译:插值分解和CUR分解涉及矩阵中近似张成其行空间与列空间的行列子集(即骨架)的"自然基"。这类低秩分解能保持稀疏性或非负性等性质,且在原始数据背景下易于解释。对于大规模问题,采用随机矩阵进行行空间或列空间采样的随机草图化方法,可作为骨架选择的有效初始步骤以降低计算成本。当前成熟的方法是先提取随机草图,再对草图矩阵进行列主元QR分解(CPQR)。本文描述了一种替代方案——将CPQR替换为部分主元LU分解(LUPP)。尽管LUPP本身不具备秩揭示性,但实验证明在随机化场景中,LUPP不仅能揭示数值秩,还可在分解构建过程中估计残差误差。由此生成的算法兼具自适应性与可并行化特性,且因LUPP相较于CPQR的更低通信需求,实现了更高的实际运算速度。该方法已在CPU和GPU上实现,相关软件已公开发布。