AdaLoRA: how does adaptive rank allocation across layers work?
Same topic, related formats. Practice these next.
Same topic, related formats. Practice these next.
AdaLoRA (Zhang et al. 2023) allocates LoRA rank differently across layers instead of using a uniform r everywhere. How does it parameterise the update, how does it decide which layers get more rank, and why is uniform rank wasteful in the first place?
AdaLoRA reparameterises the LoRA update as an SVD-style P·Λ·Q, then prunes low-importance singular values so a fixed rank budget flows to the layers that need it most.
Imagine you have a fixed budget of paint to touch up a house, and a plain rule says give every wall the same number of coats. But some walls barely need paint and others are badly scuffed, so equal coats waste paint on good walls and starve the bad ones. AdaLoRA instead watches how much each patch actually improves the wall as it works. Patches that make almost no difference get their paint taken back, and that freed paint goes to patches that clearly help. The total amount of paint stays the same, but it ends up concentrated where it matters. In a model, the 'patches' are tiny correction directions inside each layer, and AdaLoRA keeps the useful ones while quietly retiring the useless ones.
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example. Click to expand.
Everything you need to truly understand this topic: intuition, mechanics, step by step explanation, code, formulas, and worked example.
Everything important, quickly.
5 min: why a product hides importance + SVD reparameterisation + diagonal as importance score + sensitivity-based pruning under a global budget + orthogonality regulariser + why uniform rank is wasteful + when the complexity pays off.
| Aspect | LoRA | AdaLoRA |
|---|---|---|
| Update form | B·A product | SVD-style P·Λ·Q triple |
| Rank per layer | Uniform, fixed up front | Adaptive, learned under a budget |
| Importance signal | None; rank is a hyperparameter | Diagonal Λ scored by sensitivity |
| Extra regularisation | None required | Orthogonality penalty on P and Q |
| Training complexity | Simple, robust | Heavier loop, pruning schedule |
Real products, models, and research that use this idea.
What an interviewer would ask next. Try answering before peeking at the approach.
Red flags and common mistakes that signal junior thinking. Click to expand.
Describing AdaLoRA as just LoRA with a bigger rank. The point is the opposite: a fixed budget redistributed by pruning low-importance singular values, not more parameters everywhere.
The night-before-the-interview bullets. Scan these on the way to the call.
Primary sources. Skim if you want the original framing.