CoLA: Compute-Efficient Pre-Training of LLMs via Low-Rank Activation

Ziyue Liu, Ruijie Zhang, Zhengyang Wang, Mingsong Yan, Zi Yang +5 more
2/16/2025
cs.LGcs.AI

No official code found. Best implementation: alvin-zyl/CoLA (25 stars, last commit 2025-02-18).

Abstract

The full-size MLPs and the projection layers in attention introduce tremendous model sizes of large language models (LLMs), consuming extensive computational resources in pre-training. We empirically observe that the activations of pre-trained LLMs exhibit low-rank property. Motivated by such observations, we propose CoLA and its memory-efficient implementation, CoLA-M, to replace these full-size layers with compute-efficient auto-encoders that naturally enforce low-rank activations throughout training. This fundamental architectural change eliminates the activation redundancy and significantly boosts model capacity and training efficiency. Experiments on LLaMA models with 60 million to 7 billion parameters show that CoLA reduces the computing cost by $\bf 2\pmb{\times}$ and improves training throughput by $\bf 1.86\pmb{\times}$ while maintaining full-rank level performance. CoLA-M further squeezes memory cost without sacrificing throughput, offering a pre-training approach with collectively superior parameter, computing, and memory efficiency. The LLMs produced are also $\bf 2\pmb{\times}$ smaller, enabling faster inference with lower memory cost on resource-constrained platforms.

View on arXivView PDF

Code Implementations(1)

alvin-zyl/CoLACommunity100%

Implementation of CoLA: Compute-Efficient Pre-Training of LLMs via Low-Rank Activation

252Shell, PythonFeb 14, 20251 years ago

Similar Papers

Cite this paper

@article{liu2025cola,
  title  = {CoLA: Compute-Efficient Pre-Training of LLMs via Low-Rank Activation},
  author = {Ziyue Liu and Ruijie Zhang and Zhengyang Wang and Mingsong Yan and Zi Yang and Paul Hovland and Bogdan Nicolae and Franck Cappello and Sui Tang and Zheng Zhang},
  year   = {2025},
  eprint = {2502.10940},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2502.10940v3}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2502.10940.svg)](https://codeofpaper.com/paper/2502.10940)

Discussion