a-Tucker:面向 CPU 与 GPU 上稠密张量的输入自适应且无矩阵化 Tucker 分解
分布式、并行与集群计算
2020-10-21 v1 人工智能
摘要
Tucker 分解是分析和压缩大规模张量数据最流行的模型之一。现有的 Tucker 分解算法通常依赖单一求解器来计算因子矩阵和核张量,不足以灵活适应输入数据与硬件的多样性。此外,为利用高效的 GEMM 核,大多数 Tucker 分解实现采用显式矩阵化,这可能引入数据转换和内存使用方面的额外开销。本文中,我们提出 a-Tucker,一种用于稠密张量输入自适应且无矩阵化 Tucker 分解的新框架。我们提出一种按模灵活的 Tucker 分解算法,可切换因子矩阵与核张量的不同求解器,并应用机器学习自适应求解器选择器来自动应对输入数据与硬件的变化。为进一步提升性能并增强内存效率,我们以完全无矩阵化的方式实现 a-Tucker,在张量与矩阵间无任何转换。使用多种合成与真实世界张量的实验表明,a-Tucker 在 CPU 和 GPU 上均能大幅超越现有工作。
引用
@article{arxiv.2010.10131,
title = {a-Tucker: Input-Adaptive and Matricization-Free Tucker Decomposition for Dense Tensors on CPUs and GPUs},
author = {Min Li and Chuanfu Xiao and Chao Yang},
journal= {arXiv preprint arXiv:2010.10131},
year = {2020}
}
备注
10pages