Tolerance-controlled adaptive low-rank layers
Implementation & benchmark of arXiv:2607.06758 — Adaptive, Matrix-Free Low-Rank Approximation
Source paper: Adaptive, Matrix-Free Low-Rank Approximation arXiv:2607.06758 ⓘ · analyzed Aug 30, 2026
AI-generated research hypothesis, automatically tested. Not peer-reviewed.
Idea description
Replace selected dense neural-network operators by low-rank factors whose rank is selected by a randomized residual test at a user-specified tolerance. Construct candidate bases in large blocks for efficient matrix operations, then prune the block to the smallest rank that passes the residual criterion instead of treating the block size as the final rank.
Formulas
Mathematical statement
The paper formulates fixed-tolerance approximation as finding an orthonormal matrix \(\mathbf Q\in\mathbb R^{m\times k}\) and coefficient matrix \(\mathbf B\in\mathbb R^{k\times n}\) satisfying \(\|\mathbf A-\mathbf Q\mathbf B\|\leq\tau\), where \(\mathbf A\) is the linear operator being compressed, \(k\) is an unknown rank, and \(\tau\) is either an absolute tolerance \(\varepsilon\) or a relative tolerance \(\varepsilon\|\mathbf A\|\). The paper targets both Frobenius and spectral norms and estimates the residual directly from randomized probes. For an implementable Frobenius estimator, let \(\mathbf R=\mathbf A-\mathbf Q\mathbf B\), let \(\mathbf z_i\in\{-1,+1\}^n\) have independent Rademacher entries, and define \(\widehat e_F^2=\frac1s\sum_{i=1}^s\|\mathbf R\mathbf z_i\|_2^2\); then \(\mathbb E[\widehat e_F^2]=\|\mathbf R\|_F^2\). For a spectral check, use normalized power iteration on \(\mathbf R\): \(\mathbf v_{t+1}=\mathbf R^T\mathbf R\mathbf v_t/\|\mathbf R^T\mathbf R\mathbf v_t\|_2\), with estimate \(\widehat e_2=\|\mathbf R\mathbf v_T\|_2\). The neural adaptation applies these tests to a weight matrix or matrix-free linear operator and stops when \(\widehat e\leq\tau/\gamma\), where \(\gamma>1\) is a safety factor controlling underestimation risk. Rank pruning uses an oversized candidate block of width \(b\), computes \(\mathbf B=\mathbf Q^T\mathbf A\), and retains only the smallest prefix of basis directions whose measured residual satisfies the tolerance.
Implementation notes
Integrate this at the inference-compression or checkpoint-compression stage for dense MLP matrices and attention projections, not inside every ordinary training step initially. For a weight matrix \(\mathbf W\in\mathbb R^{d_{out}\times d_{in}}\), use an oversized block size \(b\), for example 64 or 128, and incrementally build an orthonormal basis \(\mathbf Q\) from randomized range samples \(\mathbf Y=\mathbf W\mathbf\Omega\), where \(\mathbf\Omega\in\mathbb R^{d_{in}\times b}\) is Gaussian or Rademacher. Orthogonalize \(\mathbf Y\), set \(\mathbf B=\mathbf Q^T\mathbf W\), and evaluate the residual on fresh probes. Compact pseudocode is: Q=[]; while True: Omega=random(din,b); Y=W@Omega; Y=Y-Q@(Q.T@Y); Q=orth(Y); B=Q.T@W; RZ=W@Z-Q@(B@Z); e=sqrt(mean(sum(RZ**2,axis=0))); if e <= tau/gamma: break. Here Z contains \(s\) fresh Rademacher probes, \(e\) is the estimated Frobenius residual, and tau=epsilon*||W||_F for relative compression. After each block, test every prefix \(\mathbf Q_k\) or compute a small SVD of \(\mathbf B\) to prune the oversized block; retain the smallest prefix passing the same test. The paper supplies the tolerance principle and randomized residual construction; the implementation estimates \(\|W\|_F\) with the same probe estimator and chooses \(s\) empirically, starting at 16 or 32. For a matrix-free operator, replace W@x by its forward matvec; use the power-iteration formula only when adjoint products are available, and otherwise use the Frobenius test. First test on a 2-layer MLP or a single Transformer feed-forward projection on CIFAR-10 or WikiText-2, comparing dense inference, fixed-rank SVD, and this adaptive method at equal output-error tolerances. Measure retained rank, parameter count, latency, and validation loss. A successful result is substantially smaller rank than the block size, near-SVD validation loss, and lower inference time or memory at the same tolerance.
Verification
Stage 1 · Toy mechanism gate: Passed ✓
Stage 2 · Mechanism transferred to benchmark: Confirmed ✓
Stage 2 · Practical benchmark result: Inconclusive
Methodology: 8 paired seeds, permutation test (p<0.05) against a learning-rate-tuned baseline. How verification works
Stage 1 — Mechanism check agent confidence 9/10
Built a randomized blocked QB compressor with fresh Rademacher residual tests, safety-factor stopping, coefficient-space prefix pruning, and reproducible sanity and MLP experiments. The mechanism manifested: estimator bias stayed below 0.36%, observed variance times s varied by only 15%, and adaptive ranks increased with tighter tolerance while staying within 0–3 ranks of optimal SVD rank and largely independent of block width. It did not produce a practical tiny-MLP win: factor parameters exceeded dense parameters and latency was about 10–12 times slower, so this is a mathematical mechanism success but not an inference-performance win at this scale.
- Agent confidence
- 9/10
- Baseline
- Dense MLP: 1,104 parameters, output MSE 0.000423, latency 0.329–0.361 ms.
- Idea
- Adaptive factors: 1,309–1,513 parameters; output MSE 0.000423 at relative tolerance 0.05, 0.00416 at 0.10, and 0.0195 at 0.20; latency 3.70–3.97 ms. SVD-optimal ranks for tolerances 0.35, 0.20, 0.10, 0.05 were 9, 13, 19, 24; adaptive ranks were within 0–3 ranks of these values.
Limitations: Only explicit dense NumPy matrices and a synthetic two-layer MLP were tested. No CIFAR/WikiText model, GPU path, matrix-free operator, spectral estimator, training-quality evaluation, or large-scale latency and memory benchmark was tested.
How to run: python3 adaptive_lowrank.py && /home/maxwelhelp/main/bin/python3 summarize.py
Stage 2 — Benchmark vs. tuned baseline (arXiv:2607.06758)
No significant difference vs. the tuned baseline (+2.8%, p=0.3261, wins 4 / 8 paired seeds).
- Benchmark
- Sequence modeling
- Model
- transformer_tiny
- Paired seeds
- 8
- Baseline mean
- 0.5925
- Idea mean
- 0.6094
- Effect (Δ)
- 0.0169 (+2.8%; negative = idea better)
- Wins
- 4 / 8 paired seeds
- p-value
- 0.3261 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±6.1%
- Mechanism
- Confirmed ✓
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 3 configs
Only the registered sequence track was tested, using 400 training samples, 200 test samples, and 6 epochs. No other built-in track, large-scale latency test, fused low-rank kernel, or production checkpoint benchmark was run.
How to run: python3 bench_lowrank.py
Verdict computed by deterministic test code from paired-seed statistics — not by the language model.
Stage 2 — Benchmark latest Failed ✗
Agent confidence: 9/10
The full registered sequence benchmark completed on transformer_tiny with 8 paired seeds and a tuned baseline sweep. The adaptive method confirmed its tolerance-scale perturbation mechanism, but the best idea had higher test MSE than baseline and no significant win, so worked=false.
- Baseline
- Best baseline lr=0.001, 6 epochs: mean test MSE 0.5925300121 over 8 seeds; baseline sweep means were 0.5752262026 (lr=0.001), 0.7490916699 (lr=0.003), and 1.0712552518 (lr=0.006).
- Idea
- Best adaptive configuration lr=0.001, tolerance=0.1, 6 epochs: mean test MSE 0.6094126552 over 8 seeds; paired delta +0.0168826431 and permutation p=0.32615. Mean relative output perturbation versus independently trained dense systems was 0.0447200295, confirming the mechanism signature, but compressed models used about 89k parameters versus 71k dense.
Benchmark result
No significant difference vs. the tuned baseline (+2.8%, p=0.3261, wins 4 / 8 paired seeds).
- Benchmark
- Sequence modeling
- Model
- transformer_tiny
- Paired seeds
- 8
- Baseline mean
- 0.5925
- Idea mean
- 0.6094
- Effect (Δ)
- 0.0169 (+2.8%; negative = idea better)
- Wins
- 4 / 8 paired seeds
- p-value
- 0.3261 (permutation test, 20 000 shuffles)
- Smallest detectable effect
- ±6.1%
- Mechanism
- Confirmed ✓
- Practical effect
- Inconclusive
- Baseline tuning
- swept over 3 configs
Only the registered sequence track was tested, using 400 training samples, 200 test samples, and 6 epochs. No other built-in track, large-scale latency test, fused low-rank kernel, or production checkpoint benchmark was run.
How to run: python3 bench_lowrank.py
Artifacts
- adaptive_lowrank.py 5.7 KB View Raw
- bench_lowrank.py 6.3 KB View Raw
- bench_report.json 5.2 KB View Raw
- patch_lowrank.py 1.5 KB View Raw
- report.md 1.7 KB View
- report_bench_2026-08-30T212732.md 5.4 KB View
- results.json 3.5 KB View Raw
- summarize.py 1.5 KB View Raw
- summary.json 4.0 KB View Raw