Skip to main content
QUICK REVIEW

[论文解读] Comparison of Accuracy and Scalability of Gauss-Newton and Alternating Least Squares for CP Decomposition

Navjot Singh, Linjian Ma|arXiv (Cornell University)|Oct 27, 2019
Tensor decomposition and applications参考文献 45被引用 6
一句话总结

该论文首次实现了基于张量收缩的隐式矩阵-向量乘积的并行高斯-牛顿法用于CP张量分解,通过隐式求解线性系统实现可扩展的高精度分解。结果表明,采用自适应正则化的高斯-牛顿法在ALS方法无法收敛或收敛缓慢的场景下,能持续收敛至精确的CP分解,且在高秩量子化学张量上实现高达2.4倍的残差降低和2倍的加速效果。

ABSTRACT

Alternating least squares is the most widely used algorithm for CP tensor decomposition. However, alternating least squares may exhibit slow or no convergence, especially when high accuracy is required. An alternative approach is to regard CP decomposition as a nonlinear least squares problem and employ Newton-like methods. Direct solution of linear systems involving an approximated Hessian is generally expensive. However, recent advancements have shown that use of an implicit representation of the linear system makes these methods competitive with alternating least squares. We provide the first parallel implementation of a Gauss-Newton method for CP decomposition, which iteratively solves linear least squares problems at each Gauss-Newton step. In particular, we leverage a formulation that employs tensor contractions for implicit matrix-vector products within the conjugate gradient method. The use of tensor contractions enables us to employ the Cyclops library for distributed-memory tensor computations to parallelize the Gauss-Newton approach with a high-level Python implementation. In addition, we propose a regularization scheme for Gauss-Newton method to improve convergence properties without any additional cost. We study the convergence of variants of the Gauss-Newton method relative to ALS for finding exact CP decompositions as well as approximate decompositions of real-world tensors. We evaluate the performance of sequential and parallel versions of both approaches, and study the parallel scalability on the Stampede2 supercomputer.

研究动机与目标

  • 为解决高精度CP分解中,尤其在高秩情形下,交替最小二乘法(ALS)收敛缓慢或无法收敛的问题。
  • 开发一种基于隐式线性系统求解的高斯-牛顿法CP分解的可扩展、高性能实现。
  • 评估高斯-牛顿法相对于ALS在合成张量与真实世界张量上的收敛性、精度与可扩展性。
  • 提出并验证一种正则化方案,可在不增加计算成本的前提下提升收敛性。

提出的方法

  • 通过张量收缩形式化高斯-牛顿法,隐式计算共轭梯度(CG)求解器中的矩阵-向量乘积,避免显式构造Hessian矩阵。
  • 利用Cyclops张量框架实现分布式内存并行化,支持基于Python的高层实现,兼容NumPy与Cyclops后端。
  • 提出一种新型正则化方案,可在优化过程中动态调整正则化参数,以提升收敛稳定性和精度。
  • 通过张量收缩隐式应用Hessian近似,将每次CG迭代的计算成本降低至O(N²sR²)。
  • 采用预处理共轭梯度法加速收敛,系统方程通过迭代求解,无需构建稠密矩阵。
  • 实现支持串行与并行执行,可在Stampede2超级计算机上进行强可扩展性与弱可扩展性分析。

实验结果

研究问题

  • RQ1在高秩张量上,采用隐式CG的高斯-牛顿法是否在精度与可扩展性上优于ALS?
  • RQ2能否设计一种适用于高斯-牛顿法的正则化方案,以提升收敛性而不增加计算成本?
  • RQ3在真实世界量子化学张量上,高斯-牛顿法与ALS在收敛速度与残差降低方面表现如何?
  • RQ4所提出的高斯-牛顿实现方案在分布式内存系统(如Stampede2)上的并行可扩展性如何?
  • RQ5在ALS因‘沼泽’现象而失效的合成张量上,高斯-牛顿法能否实现精确的CP分解?

主要发现

  • 对于大小为2000×2000×2000、秩为2000的高斯张量,高斯-牛顿法在300秒内收敛至精确解,而ALS在相同时间内未能收敛。
  • 在大小为4520×280×280、秩为2000的40个水分子量子化学张量上,高斯-牛顿法在5,000秒内达到0.952的拟合度,优于ALS的0.94,且耗时减半。
  • 采用自适应正则化的高斯-牛顿法在相同张量上实现2.4倍的残差降低,同时运行速度比ALS快0.6倍。
  • 在Stampede2上,该方法展现出良好的弱可扩展性,性能提升随问题规模与核心数增加而有效扩展。
  • 所提出的正则化方案实现了稳定收敛与高精度,避免了固定正则化参数(如λ=10⁻⁵或λ=10⁻³)带来的问题。
  • 在高秩场景(R ≥ s)下,高斯-牛顿法在收敛行为与最终残差上均持续优于ALS,表现出对‘沼泽’效应的强鲁棒性。

更好的研究,从现在开始

从阅读论文到最终审阅,大幅缩短您的研究时间。

无需绑定信用卡

本解读由 AI 生成,并经人工编辑审核。