Efficient 1-bit tensor approximations

Abstract

We present a spatially efficient decomposition of matrices and arbitrary-order tensors as linear combinations of tensor products of \-1, 1\-valued vectors. For any matrix A ∈ Rm × n, A - Rw = Sw Cw Tw = Σj=1w cj · sj tj is a w-width signed cut decomposition of A. Here Cw = "diag"(cw) for some cw ∈ Rw, and Sw, Tw, and the vectors sj, tj are \-1, 1\-valued. To store (Sw, Tw, Cw), we may pack w · (m + n) bits, and require only w floating point numbers. As a function of w, \|Rw\|F exhibits exponential decay when applied to #f32 matrices with i.i.d. N (0, 1) entries. Choosing w so that (Sw, Tw, Cw) has the same memory footprint as a f16 or bf16 matrix, the relative error is comparable. Our algorithm yields efficient signed cut decompositions in 20 lines of pseudocode. It reflects a simple modification from a celebrated 1999 paper [1] of Frieze and Kannan. As a first application, we approximate the weight matrices in the open Mistral-7B-v0.1 Large Language Model to a 50\% spatial compression. Remarkably, all 226 remainder matrices have a relative error <6\% and the expanded model closely matches Mistral-7B-v0.1 on the huggingface leaderboard [2]. Benchmark performance degrades slowly as we reduce the spatial compression from 50\% to 25\%. We optimize our open source rust implementation [3] with simd instructions on avx2 and avx512 architectures. We also extend our algorithm from matrices to tensors of arbitrary order and use it to compress a picture of the first author's cat Angus.

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…