TinyLoRA
Learning to Reason in 13 Parameters
John X. Morris, Niloofar Mireshghallah, Mark Ibrahim, Saeed Mahloujifar
5
Concepts
7
Formulas
5
Demos
Paper Overview
How many parameters does it take to teach a language model to reason? The conventional answer has been millions — but TinyLoRA challenges this assumption dramatically.
Standard LoRA fine-tuning of a 7B model at rank r=8 introduces roughly 40M trainable parameters — low-rank matrices A∈Rd×r and B∈Rr×k across every attention and MLP projection. Even LoRA-XS, which trains only r×r matrices within the SVD of frozen weights, still needs thousands of parameters. TinyLoRA pushes this to the extreme: it replaces the per-module trainable matrix R with a single shared vector v∈Ru projected through fixed random tensors Pi, achieving what the authors call "rank below one" adaptation.
The key result: a Qwen2.5-7B model (hidden dim d=4096, 80 transformer blocks, 560 adapted modules) achieves 91% accuracy on GSM8K with only 13 trained parameters — stored in just 26 bytes of bf16. These 13 values are shared across all 560 module positions via weight tying, and each position produces a unique weight update because the fixed random projection matrices Pi and the module-specific SVD factors U,Σ,V are different at every position.
The paper reveals a surprising asymmetry: reinforcement learning (GRPO) is dramatically more parameter-efficient than supervised fine-tuning for reasoning tasks. While SFT at 13 parameters achieves only 83% (5% above the 78% base model baseline), RL achieves 91% — a 13-point gain. At 120 parameters, the gap widens further: RL reaches 95% while SFT remains at 84%. The explanation is rooted in signal density: SFT provides a dense loss signal over every token in a chain-of-thought solution (formatting, intermediate steps, final answer), overwhelming a 13-parameter budget. RL's binary reward (correct/incorrect final answer) correlates cleanly with the few features the tiny adapter can control.
An additional scaling law emerges: larger pretrained models require fewer TinyLoRA parameters to reach the same fraction of peak performance. To reach 95% of peak GSM8K accuracy, Qwen2.5-3B needs ~350 parameters, Qwen2.5-7B needs ~120, and Qwen2.5-14B needs even fewer. This suggests that reasoning capability is increasingly latent in larger models, waiting to be activated with a minimal nudge. If 13 parameters can unlock mathematical reasoning in a 7B model, what capabilities are already present in trillion-parameter models?
Chapter Roadmap
Click any topic to jump in
TinyLoRA Update
Projects a 13-dim vector through fixed random bases and frozen SVD factors to construct per-module weight updates.
Rank Below One
Weight tying across 560 modules drops effective per-module rank to 0.023 — below any classical bound.
RL vs SFT
Binary RL reward is a 1-D signal that maps cleanly to tiny capacity; SFT's ~200-D token loss overwhelms it.
GRPO Training
Group-relative policy optimization uses the group mean as baseline, no value network, producing a clean gradient.
Scaling Law
Larger pretrained models need fewer adaptation parameters — reasoning is latent, adapter just activates it.
Concept by concept
5 sections, in reading order.
TinyLoRA extends parameter-efficient fine-tuning to extreme compression by projecting a tiny trainable vector through fixed random matrices, reducing the trainable parameter count from millions to as few as 13 while maintaining strong task performance.
The Problem
Standard LoRA decomposes weight updates into low-rank matrices ΔW=BA where B∈Rd×r and A∈Rr×k. For a Qwen2.5-7B model with hidden dimension d=k=4096, even at the minimum rank r=1, each adapted module requires d+k=8,192 parameters. At rank r=8 (a common default), that's r(d+k)=65,536 parameters per module — and with 560 modules across 80 transformer blocks (7 modules each: Q, K, V, O projections + 3 MLP matrices), the total reaches 36.7 million trainable parameters. This is efficient compared to full fine-tuning (∼7B), but still represents enormous capacity.
LoRA-XS improves this by computing the truncated SVD of frozen weights W=UΣV⊤ at rank r, then training only a small r×r matrix R in the middle: ΔW=UΣRV⊤. At rank r=2, this requires only r2=4 trainable parameters per module — a massive reduction to 4×560=2,240 total parameters.
The fundamental limitation remains: both methods need at least one trainable parameter per module. The minimum total is proportional to nm, the number of adapted modules. With 560 modules, even one parameter per module means 560 parameters — and each module's adapter is independent, preventing information sharing across the model. This architectural constraint makes sub-thousand parameter adaptation seem impossible.
The Solution
TinyLoRA replaces the per-module trainable matrix R with a globally shared low-dimensional vector v∈Ru projected through fixed random tensors:
W′=W+UΣ(∑i=1uviPi)V⊤
Where:
- W∈Rd×k is the frozen pretrained weight matrix (e.g., 4096×4096 for attention projections)
- U∈Rd×r, Σ∈Rr×r, V∈Rk×r come from the truncated SVD of W at rank r=2
- Pi∈Rr×r are fixed random matrices drawn once at initialization and never trained — each module gets its own unique set of Pi
- v∈Ru is the only trainable component — as few as u=13 values shared across all 560 modules
The mechanism works in three stages. First, the vector v is combined with the fixed random matrices to form a module-specific update matrix: Rm=∑i=1uviPi(m) where each module m has its own unique random bases Pi(m). Second, this r×r matrix is sandwiched between the frozen SVD factors to produce the full-rank update: ΔWm=UmΣmRmVm⊤. Third, the update is added to the frozen weights.
The random projections Pi act as a fixed basis for the space of possible r×r weight update matrices. Training only needs to find the right linear combination coefficients vi. This is justified by the Johnson-Lindenstrauss lemma: random projections from Ru into Rr×r approximately preserve pairwise distances with high probability, so the essential structure of the update space is maintained even at extreme compression. The SVD factors U,Σ,V further constrain updates to lie in the principal subspace of the original weights, ensuring alignment with the model's learned representations.
Parameter comparison at d=k=4096, 560 modules:
| Method | Params per module | Total params |
|---|---|---|
| Full fine-tuning | d×k=16.8M | ∼7B |
| LoRA (r=8) | r(d+k)=65,536 | 36.7M |
| LoRA (r=1) | d+k=8,192 | 4.6M |
| LoRA-XS (r=2) | r2=4 | 2,240 |
| TinyLoRA (u=13, full tying) | shared | 13 |
Key Points
- 1
Replaces per-module trainable matrix R∈Rr×r with a single shared vector v∈Ru projected through unique fixed random matrices Pi(m) at each module
- 2
Random projections preserve the structure of the update space (Johnson-Lindenstrauss lemma) — distances in the u-dimensional space map to distances in the r×r matrix space
- 3
Frozen SVD factors U,Σ,V constrain updates to lie in the principal subspace of the original weights, ensuring structural alignment with pretrained representations
- 4
Parameters reduced from O(r2⋅nm) (LoRA-XS) to O(u) total — a 172x reduction from LoRA-XS's 2,240 to TinyLoRA's 13
- 5
Each module produces a unique ΔW despite sharing the same v, because the random Pi and SVD factors differ per module — analogous to how DNA produces different proteins in different cellular contexts
- 6
Truncated SVD at rank r=2 works best — diminishing returns beyond r=2 because higher-rank components capture less variance in pretrained weights
Mathematical Formulation
TinyLoRA Weight Update
Wm′=Wm+UmΣm(∑i=1uviPi(m))Vm⊤
The weight update at module m is constructed by linearly combining that module's fixed random matrices P_i with the shared trainable coefficients v_i, then projecting through that module's frozen SVD factors. Each module gets a unique ΔW from the same v.
Parameter Count
Total params=ntieu⋅nm
u is the vector dimension (13), n_m is the number of adapted modules (560), and n_tie is the weight-tying factor. With full tying (n_tie = n_m = 560): total = u = 13. With no tying (n_tie = 1): total = u × n_m = 7,280.
Storage Requirement
Storage=u×bformat=13×2=26 bytes (bf16)
The entire model adaptation — all weight updates across 560 modules in a 7B model — is encoded in 26 bytes. This fits in a single CPU cache line (64 bytes).
Mathematical Intuition
The Johnson–Lindenstrauss lemma guarantees that random linear projections from Ru into Rr×r approximately preserve pairwise distances. This means a tiny u-dim vector retains the essential geometry of the full update space — training just finds the right linear combination of fixed random bases.
TinyLoRA breaks the rank-1 barrier by sharing a single parameter vector across all modules in the model — achieving an effective per-module rank of 13/560 = 0.023, far below the minimum rank of 1 that any prior method required.
The Problem
In standard LoRA, each module (Q, K, V, O attention projections plus MLP up/down/gate matrices) gets its own independent adapter with rank r≥1. For a model with nm modules, the minimum parameter count is:
Min params (LoRA)=nm⋅(d+k)⋅r≥nm⋅(d+k)
For Qwen2.5-7B with d=k=4096, 80 transformer layers, and 7 modules per layer, nm=560. At rank r=1, the minimum is 560×8,192=4.59M parameters. LoRA-XS reduces this to r2 per module via SVD, but at r=2 that's still 4×560=2,240 parameters.
The constraint is architectural: each module needs its own independent adapter matrix, and the minimum size of that matrix is r×r=4 (at r=2). Even if each adapter is tiny, the total scales linearly with nm. With 560 modules, the parameter floor is in the thousands.
The concept of "rank" itself imposes this limit. A rank-r update modifies the weight matrix along r independent directions. Rank 1 means one direction per module — 560 directions total. But what if the task requires far fewer independent directions of modification across the entire model?
The Solution
TinyLoRA introduces weight tying across modules. Instead of separate adapters, all nm=560 module positions share the same trainable vector v∈Ru:
- Full weight tying (ntie=nm=560): All 560 positions use the identical vector → total parameters =u
- With u=13: The entire model adaptation is controlled by 13 numbers
- The effective per-module rank is u/nm=13/560≈0.023 — far below the rank-1 floor of any prior method
Each position still produces a different weight update ΔWm because:
- The fixed random matrices Pi(m) are drawn independently for each module m, so Rm=∑viPi(m) differs at every position
- The SVD factors Um,Σm,Vm are computed from each module's unique frozen weight matrix Wm
- The final update ΔWm=UmΣmRmVm⊤ is therefore unique even though v is shared
The shared vector v acts as a global "style knob" — 13 continuous dials that are interpreted differently by each module's fixed projections. Turning dial v3 might increase attention to certain token patterns in the Q-projection of layer 12 while simultaneously adjusting the MLP gating behavior in layer 45, because those two modules have completely different random bases P3(Q12) and P3(MLP45).
Tying granularity ablation reveals a smooth tradeoff:
| Tying level | Total params | GSM8K (RL) |
|---|---|---|
| No tying (ntie=1) | u×560 | Higher (more capacity) |
| Per-layer (ntie=7) | u×80 | Slightly higher |
| Full tying (ntie=560) | u=13 | 91% (sufficient for GSM8K) |
The result challenges the assumption that model adaptation requires proportional capacity: 13 well-placed parameters suffice because the pretrained model already "knows" how to reason — it just needs a minimal directional nudge.
Key Points
- 1
Full weight tying: the same vector v∈R13 is shared across all 560 module positions — effective per-module rank of 0.023
- 2
Different updates per module: unique random Pi(m) and SVD factors (Um,Σm,Vm) create 560 distinct ΔWm matrices from the shared v
- 3
13 parameters in bf16 = 26 bytes total — the entire adaptation fits in a single CPU cache line (64 bytes), smaller than a typical HTTP cookie
- 4
Frozen SVD truncation rank r=2 works best — diminishing returns beyond r=2 because higher components capture diminishing variance in pretrained weights
- 5
Tying granularity is smoothly adjustable: no tying (u×560 params), per-layer tying (u×80), or full tying (u params), allowing a capacity-efficiency tradeoff
- 6
The 13 values function as global directional controls: each dial simultaneously affects all 560 modules differently through their unique projection bases
Mathematical Intuition
Weight tying gives an effective per-module rank of u/nm=13/560≈0.023 — below any classical rank bound. Uniqueness is preserved because each module has distinct random bases Pi(m) and distinct SVD factors Um,Σm,Vm, so the same v maps to nm distinct updates.
The paper's most surprising finding: reinforcement learning is dramatically more parameter-efficient than supervised fine-tuning for reasoning — RL achieves in 13 parameters what SFT cannot achieve in 1,000, revealing a fundamental difference in how these training signals interact with ultra-low-capacity adapters.
The Problem
A natural question arises: can any training method achieve strong performance with 13 parameters, or does the training paradigm matter?
The base Qwen2.5-7B model scores 78% on GSM8K without any fine-tuning (using chain-of-thought prompting). Testing with supervised fine-tuning (SFT) on the same task reveals a stark gap:
| Parameters | SFT Accuracy | Gain over base |
|---|---|---|
| 13 | 83% | +5% |
| 120 | 84% | +6% |
| 1,000 | ~85% | +7% |
SFT saturates quickly — adding 10x more parameters (13 → 120) yields only 1% improvement. The problem is fundamental to how SFT's loss function interacts with tiny capacity:
SFT computes cross-entropy loss on every token in the chain-of-thought solution. A typical GSM8K solution is 150-300 tokens containing: (1) problem restatement, (2) step-by-step reasoning with arithmetic, (3) intermediate variable assignments, (4) formatting tokens (newlines, "Step 1:", etc.), and (5) the final numerical answer. The 13-parameter adapter must simultaneously adjust its values to improve predictions across all these token positions. Since formatting tokens outnumber reasoning-critical tokens by roughly 3:1, the gradient signal is dominated by superficial pattern matching rather than mathematical correctness.
Furthermore, SFT requires the model to produce one specific chain-of-thought — but there are many valid reasoning paths to the correct answer. The 13 parameters cannot encode the specific surface form of any single path.
The Solution
RL (GRPO) at 13 parameters achieves 91% — a 13-point gain over the 78% baseline, compared to SFT's 5-point gain. The performance gap is even starker at higher parameter counts:
| Parameters | SFT | RL (GRPO) | RL advantage |
|---|---|---|---|
| 13 | 83% | 91% | +8% |
| 120 | 84% | 95% | +11% |
| 1,000 | ~85% | ~96% | +11% |
The key insight is about signal density and dimensionality:
SFT provides a high-dimensional signal: each of the ~200 tokens in a solution contributes a gradient direction. With 13 trainable parameters, these ~200 gradient directions must be compressed into 13 dimensions — the resulting update is an average that washes out task-relevant signal. The adapter learns to make tiny improvements to the model's next-token prediction averaged over formatting, reasoning, and answer tokens — but cannot specialize.
RL provides a low-dimensional signal: only the final answer's correctness matters, producing a single scalar reward r∈{0,1}. This binary signal has a clear interpretation: "this direction in the 13-dimensional parameter space produces more correct answers." The gradient from GRPO's advantage-weighted policy update points directly along the useful direction without dilution from irrelevant token positions.
The resampling mechanism amplifies this further: GRPO samples K=4 solutions per problem. Across these samples, the correct reasoning patterns (appropriate arithmetic operations, correct variable tracking) remain consistent in solutions that earn reward, while irrelevant variation (exact wording, step ordering, formatting choices) differs randomly between samples. The group-relative advantage computation Ai=(ri−rˉ)/σr effectively performs a noise-cancellation operation — averaging out solution-specific artifacts and isolating the reward-correlated signal.
The authors frame this through an information-theoretic lens: RL's reward signal has low intrinsic dimensionality (essentially 1D: correct vs incorrect), which can be faithfully captured by a 13-dimensional parameter space. SFT's token-level signal has high intrinsic dimensionality (~200D), which cannot be compressed into 13 dimensions without catastrophic information loss.
Key Points
- 1
RL achieves 91% at 13 params vs SFT's 83% — RL extracts 100-1000x more performance per parameter on reasoning tasks
- 2
SFT's dense token-level loss creates ~200-dimensional gradients that overwhelm a 13-dimensional parameter space, washing out task-relevant signal
- 3
RL's binary reward produces a 1-dimensional signal (correct/incorrect) that maps cleanly onto the low-dimensional adapter space
- 4
GRPO's multi-sample comparison (K=4 solutions per problem) performs implicit noise cancellation — averaging out formatting variation and isolating reasoning-relevant features
- 5
SFT saturates early: 13 → 120 params yields only +1% (83% → 84%), while RL gains +4% (91% → 95%) — SFT's high-dimensional signal cannot leverage additional capacity efficiently
- 6
Implication: the choice of training paradigm matters more than parameter count in the ultra-low-capacity regime — a finding with broad implications for PEFT research
Mathematical Intuition
The intrinsic dimensionality of the learning signal must match the parameter space capacity. SFT's ~200-token-dimensional loss cannot be compressed into 13 parameters without information loss, while RL's 1-D binary reward maps cleanly — capacity must equal signal rank, not dataset size.
Comparison
Before / Traditional
Supervised Fine-Tuning (SFT)
- Dense token-level loss (~200 tokens per solution)
- 83% at 13 params, 84% at 120 params
- High-dimensional gradient overwhelms tiny capacity
- Must simultaneously learn formatting + reasoning + answer
- Saturates early — diminishing returns with more params
After / This Paper
Reinforcement Learning (GRPO)
- Sparse binary reward (correct/incorrect final answer)
- 91% at 13 params, 95% at 120 params
- 1D reward signal maps cleanly to low-dim parameter space
- Focuses capacity on reasoning correctness only
- Multi-sample comparison cancels formatting noise
Group Relative Policy Optimization provides the sparse, low-dimensional reward signal that enables learning with 13 parameters — avoiding the value network overhead of PPO and the dense supervision of SFT through group-relative advantage estimation.
The Problem
Standard policy gradient methods like PPO require a separate value (critic) network to estimate the baseline for advantage computation. This value network typically has millions of parameters of its own — an absurd overhead when the policy adapter has only 13. Moreover, the value network must be trained concurrently, introducing additional optimization instability.
When the entire trainable adapter is a 13-dimensional vector v∈R13, the optimization landscape is a 13-dimensional surface. This is simultaneously a blessing (low-dimensional = few local minima, smooth gradients) and a curse (extremely limited expressiveness, so the gradient must point in exactly the right direction).
The credit assignment problem is severe. Math reasoning requires generating long chains of thought — a typical GSM8K solution spans 150-300 tokens of arithmetic steps — where only the final numerical answer determines correctness. The reward is delayed by hundreds of autoregressive steps: which of the 13 parameters should be adjusted, and by how much, based on whether a 200-token reasoning chain produced the right number? Standard REINFORCE would produce extremely high-variance gradients in this setting.
The Solution
GRPO (Group Relative Policy Optimization), introduced by DeepSeek, addresses all these challenges with an elegant design:
Algorithm:
- Sample K=4 solutions per problem from the current policy πθ
- Score each with exact-match reward on the final numerical answer: ri∈{0,1}
- Compute group advantage: Ai=σr+ϵri−rˉ where rˉ and σr are the mean and standard deviation within the group of K solutions for that specific problem
- Update policy using the clipped advantage-weighted log probability gradient (similar to PPO's clipped objective, but without a value network)
Why GRPO works for TinyLoRA:
The group-relative advantage is the key innovation. By comparing solutions to the same problem, GRPO eliminates problem difficulty as a confound: a correct solution to an easy problem (where 3 out of 4 samples are correct) receives a smaller advantage than a correct solution to a hard problem (where only 1 out of 4 is correct). This normalizes the reward signal across problems of different difficulty.
For TinyLoRA's 13-dimensional parameter space, this produces an exceptionally clean gradient. Consider what happens within one group of K=4 solutions to the same problem:
- Solutions that get the right answer share certain characteristics (correct arithmetic operations, proper variable tracking)
- Solutions that fail differ in specific ways (wrong multiplication, lost intermediate values)
- The advantage weighting amplifies the parameter directions that correlate with correctness
- Across many such groups, the noise from problem-specific variation averages out
No value network needed: GRPO uses the group mean rˉ as the baseline instead of a learned value function. This eliminates millions of extra parameters and the instability of concurrent critic training.
Training configuration:
- Dataset: GSM8K training set (7,473 problems)
- Epochs: 3 complete passes over the dataset
- Batch size: 64 problems per batch (×K=4 samples each = 256 generations per batch)
- Max sequence length: 4,096 tokens per generation
- Learning rate: swept from 10−7 to 2×10−4 (optimal varies by parameter count)
- KL penalty: standard coefficient to prevent the adapter from pushing the policy too far from the base model
- Optimizer: AdamW applied to the 13-dimensional vector v
- Total training cost: approximately 2-3 GPU-hours on a single A100 (the adapter is so small that the dominant cost is generation, not gradient computation)
Key Points
- 1
Sample K=4 solutions per problem, score with exact-match binary reward on the final numerical answer
- 2
Group-relative advantage Ai=(ri−rˉ)/σr normalizes away problem difficulty — correct answers on hard problems receive larger advantage
- 3
No value network required — the group mean rˉ serves as the baseline, eliminating millions of extra parameters and concurrent critic training
- 4
Training: 3 epochs on GSM8K (7,473 problems), batch size 64, K=4 samples, LR sweep 10−7 to 2×10−4
- 5
Total training cost: ~2-3 GPU-hours on a single A100 — generation dominates, gradient computation on 13 params is negligible
- 6
The 13-dimensional optimization landscape is smooth and low-dimensional, enabling reliable convergence despite the extremely sparse reward signal
Mathematical Formulation
Group Advantage
Ai=σr+ϵri−rˉ,rˉ=K1∑j=1Krj,ri∈{0,1}
Each solution's advantage is computed relative to other solutions for the same problem. With K=4 samples, if 1 out of 4 is correct: the correct one gets A = +1.73, the incorrect ones get A = -0.58. This normalizes away problem difficulty.
GRPO Policy Gradient
∇vJ=E(x,{yi})[∑i=1KAi⋅∇vlogπθ(yi∣x)]
The gradient with respect to the 13 trainable parameters v is the advantage-weighted sum of log-probability gradients. Since v influences all 560 modules simultaneously, each gradient step adjusts the global adapter direction.
Mathematical Intuition
GRPO replaces the learned value baseline with the group mean rˉ, converting the advantage into a within-problem z-score. This is unbiased (since E[rˉ]=V(x)) and eliminates the critic's parameters — crucial when the policy adapter has only 13 of its own.
Larger pretrained models require fewer TinyLoRA parameters to unlock reasoning — revealing an inverse scaling law that suggests reasoning capability is increasingly latent in larger models, requiring only a minimal directional nudge to activate.
The Problem
A critical question for practical deployment: does TinyLoRA's extreme efficiency scale to different model sizes? If it only works for Qwen2.5-7B, the finding is interesting but limited in scope.
Several concerns arise:
- Smaller models might lack the latent reasoning capability that TinyLoRA activates — if mathematical reasoning isn't encoded in the pretrained weights, no 13-parameter adapter can create it from nothing
- Larger models have more modules to adapt (nm grows with depth and width), so they might need proportionally more parameters to modify all relevant modules
- The base model accuracy varies significantly: Qwen2.5-3B scores ~65% on GSM8K, 7B scores ~78%, and 14B scores ~84% without any fine-tuning. If TinyLoRA just provides a small multiplicative boost, the gains would be bounded by the base model's starting point
The scaling behavior of parameter-efficient methods has broad implications: if the minimum parameter count for effective adaptation decreases with model scale, this would fundamentally change how we think about customizing and deploying foundation models.
The Solution
The paper reveals a clear inverse scaling law: larger models need fewer TinyLoRA parameters to reach the same fraction of their peak performance.
Parameters needed to reach 95% of peak GSM8K accuracy (with GRPO):
| Model | Base accuracy | Peak (full RL) | Params for 95% of peak | Effective rank |
|---|---|---|---|---|
| Qwen2.5-3B | ~65% | ~88% | ~350 | ~0.63 |
| Qwen2.5-7B | ~78% | ~96% | ~120 | ~0.21 |
| Qwen2.5-14B | ~84% | ~97% | <80 | <0.08 |
The trend is clear: the minimum parameter count decreases as model size increases, even though larger models have more modules. This strongly suggests that larger models have more latent reasoning capability already encoded in their pretrained weights. TinyLoRA's role is not to teach reasoning from scratch but to activate existing capabilities with a minimal directional nudge — and the larger the model, the smaller the nudge needed.
Interpretation — the "activation" hypothesis: The pretrained model already contains the circuits for mathematical reasoning, developed during pretraining on vast corpora. These circuits are not perfectly aligned for GSM8K-style problems — they need a small adjustment to their activation patterns. The 13 TinyLoRA parameters shift the model's behavior in the relevant direction, and this shift is more effective in larger models because their pretrained circuits are more complete and robust.
Bit-constrained regime: An additional finding reveals that when comparing formats at constant byte budget, fp32 outperforms bf16 byte-for-byte:
- 26 bytes of bf16 = 13 parameters → 91% accuracy
- 26 bytes of fp32 = ~6.5 parameters → slightly better accuracy than 13 bf16 parameters
- 52 bytes of fp32 = 13 parameters → 93% accuracy (higher than 13 bf16)
This is because each fp32 value has 23 mantissa bits vs bf16's 7, providing 3.3x more precision per parameter. In the ultra-low-dimensional regime, the optimizer needs to find a precise direction in parameter space — having fewer parameters with higher precision outperforms having more parameters with lower precision. The optimal direction matters more than the number of dimensions.
Extrapolation: If the scaling trend continues, models in the hundreds-of-billions parameter range might need only single-digit parameters for task adaptation — perhaps even a single fp64 parameter (8 bytes) encoding a direction in a 1-dimensional subspace projected through random matrices across thousands of modules. The adapter would literally be a single number.
Key Points
- 1
Inverse scaling law: Qwen2.5-3B needs ~350 params, 7B needs ~120, 14B needs <80 to reach 95% of peak GSM8K accuracy — larger models require exponentially fewer parameters
- 2
The 'activation hypothesis': TinyLoRA does not teach reasoning from scratch — it activates latent capabilities already encoded in pretrained weights, requiring smaller nudges in larger models
- 3
In the bit-constrained regime, fp32 outperforms bf16 byte-for-byte — precision per parameter matters more than the number of parameters when capacity is extremely limited
- 4
26 bytes of bf16 (13 params) vs 26 bytes of fp32 (6.5 params): fp32 wins because the optimizer needs precise directional control in ultra-low-dimensional spaces
- 5
Implication for deployment: trillion-parameter models may need only a handful of parameters for task adaptation — adapters smaller than a URL, transmissible in a single network packet
- 6
Combined with full weight tying, this suggests a future where model customization requires storing only a few floating-point numbers per task
Mathematical Formulation
Inverse Scaling Relationship
u95%∝N−γ,γ>0
The number of TinyLoRA parameters needed for 95% of peak performance decreases as a power law with model size N. The exponent gamma > 0 means larger models need exponentially fewer adaptation parameters.
Bit-Budget Tradeoff
Performance(u,b)∝u⋅b(precision > quantity)
At constant byte budget, fewer parameters with higher precision (fp32) outperform more parameters with lower precision (bf16). The relationship is not linear — directional precision in parameter space has superlinear value.
Mathematical Intuition
The inverse scaling law u95%∝N−γ reveals that larger models already encode task capabilities in their pretrained weights — adaptation becomes "activation" rather than learning. The adapter's role shrinks to finding a direction, not building circuitry.
Keep reading
Related Papers
Go deeper