Algorithm 1026: Concurrent Alternating Least Squares for Multiple Simultaneous Canonical Polyadic Decompositions
ACM Transactions on Mathematical Software, vol. 48, pp. 1–20
Abstract
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 article, 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.
Authors 4
-
Christos Psarras Aachen
Affiliation as printed
RWTH Aachen University, Aachen, North Rhine-Westphalia, Germany
-
Affiliation as printed
Umeå Universitet, MIT-huset, Umeå, Sweden
-
Affiliation as printed
University of Copenhagen, Rolighedsvej, Copenhagen, Frederiksberg C, Denmark
-
Affiliation as printed
Umeå Universitet, MIT-huset, Umeå, Sweden
Cited by 6 stored of 6
6 results
No patents citing this paper on Lens.org (checked 2026-10-06).
References 51
-
W3105254673details pending0citations
-
W2952198983details pending0citations
-
W3102869303details pending0citations
-
W4287254515details pending0citations