论文标题

同时进行多个规范多核分解的同时交替的最小二乘

Concurrent Alternating Least Squares for multiple simultaneous Canonical Polyadic Decompositions

论文作者

Psarras, Christos, Karlsson, Lars, Bro, Rasmus, Bientinesi, Paolo

论文摘要

张量分解(例如CandeComp/Parafac(CP))广泛用于多种应用中,例如化学计量学,信号处理和机器学习。计算此类分解的一种广泛使用的方法依赖于交替的最小二乘(ALS)算法。当组件的数量很少,无论其实施如何,ALS都表现出低算术强度,从而严重阻碍其性能并使GPU卸载无效。我们观察到,在实践中,专家通常必须计算同一张量的多个分解,每个分解都有少量的组件(通常少于20个),以最终找到最适合用于该应用程序的组件。在本文中,我们说明了如何将同一张量的多个分解在算法水平上融合在一起以增加算术强度。因此,有可能有效利用GPU来进一步加速。同时,该技术与ALS中通常使用的许多增强功能兼容,例如线路搜索,外推和非阴性约束。我们介绍了并发的ALS算法和库,该算法为MATLAB提供了一个接口,以及一种有效处理分解在不同时间完成的问题的机制。人工和真实数据集的实验结果表明,由于算术强度的增加,完成的时间较短。

Tensor decompositions, such as CANDECOMP/PARAFAC (CP), are widely used in a variety of applications, such as chemometrics, signal processing, and machine learning. A broadly used method for computing such decompositions relies on the Alternating Least Squares (ALS) algorithm. When the number of components is small, regardless of its implementation, ALS exhibits low arithmetic intensity, which severely hinders its performance and makes GPU offloading ineffective. We observe that, in practice, experts often have to compute multiple decompositions of the same tensor, each with a small number of components (typically fewer than 20), to ultimately find the best ones to use for the application at hand. In this paper, we illustrate how multiple decompositions of the same tensor can be fused together at the algorithmic level to increase the arithmetic intensity. Therefore, it becomes possible to make efficient use of GPUs for further speedups; at the same time the technique is compatible with many enhancements typically used in ALS, such as line search, extrapolation, and non-negativity constraints. We introduce the Concurrent ALS algorithm and library, which offers an interface to Matlab, and a mechanism to effectively deal with the issue that decompositions complete at different times. Experimental results on artificial and real datasets demonstrate a shorter time to completion due to increased arithmetic intensity.

扫码加入交流群

加入微信交流群

微信交流群二维码

扫码加入学术交流群,获取更多资源