Take Only What You Need:
Rank Minimization as an Implicit Forgetting Regularizer in Continual Learning

1University of New South Wales, 2CSIRO
* Corresponding author.

Abstract

The central tension in continual learning (CL) is the trade-off between plasticity (acquiring new knowledge) and stability (retaining prior knowledge). We study how a pre-trained backbone can be continually updated to absorb new knowledge while preserving existing capabilities, via capacity control: regulating the effective rank of each parameter update, a per-step quantity directly controllable inside a LoRA update.

A controlled probe of LoRA rank and placement across modules and tasks reveals a consistent trade-off, with a moderate-rank sweet spot that varies by placement and task, leaving no universally optimal fixed rank; a formal bound links forgetting to update rank.

Building on these findings, we propose Continual Dynamic Rank-Selective LoRA (CoDyRA), which jointly trains each LoRA update with rank minimization via sparsity-promoting regularization on per-component importance weights. The supervised objective drives plasticity; rank minimization regularizes forgetting. We show that rank minimization serves as an implicit forgetting regularizer in the CL regime, protecting general capability and prior-task knowledge simultaneously by controlling forgetting against the current model state. Across MTIL, X-TAIL, and TRACE (CLIP, LLaMA, Gemma), CoDyRA outperforms prior CL methods on new-knowledge learning and forgetting, achieving a strong plasticity–stability balance.

Strict CL regime

No past data, task IDs, or per-task modules — only the current task and the current model state.

No inference overhead

Rank-pruned updates merge into the backbone after each task — architecture and parameter count unchanged.

One criterion, three goals

A single rank-based criterion drives current-task learning while protecting general capability and prior-task knowledge.

Rank is the capacity lever for the plasticity–stability trade-off

Before proposing a method, we run a controlled probe: train CLIP with LoRA at different placements and ranks, and measure both new-task adaptation (plasticity) and retention of pre-trained capability (stability). Rank and placement turn out to be the knobs that trade one against the other. Each takeaway below is stacked with its evidence.

Bar charts: effect of removing the trained LoRA from each vision- and text-encoder module on Aircraft adaptation and ImageNet-1k retention.
Fig. 3. Removing per-module LoRA — some modules barely affect adaptation yet, once removed, restore retention.

Takeaway 1 · Placement

LoRA placement is a plasticitystability lever: no single placement or rank simultaneously optimizes both across tasks.

Scatter: downstream adaptation vs pre-trained retention across LoRA placements (shape/color) and ranks (marker size), tracing a plasticity-stability frontier with a moderate-rank sweet spot.
Fig. 2. Marker size = rank. Higher rank buys adaptation but costs retention; a moderate rank sits at the sweet spot.

Takeaway 2 · Rank

Rank governs the balance: higher rank favors plasticity, lower rank favors stability. For a given level of adaptation, forgetting is minimized at a moderate-rank sweet spot.

Heatmap of activated ranks across transformer modules (rows) and layers (columns) for CoDyRA on Aircraft; activation is heterogeneous.
Activated ranks per module & layer (CoDyRA, Aircraft). The allocation is heterogeneous, not one fixed rank.

Takeaway 3 · No universal rank

The sweet-spot rank is not universal: its location varies systematically by module and by downstream task — so the right method must allocate rank adaptively.

Method

CoDyRA is a capacity-controlled method: it makes the per-location rank a learnable, task-adaptive quantity and shrinks it with a sparsity penalty — distinct from model complementation (freeze the backbone, add external modules) and reference-constrained methods (constrain each update with stored data or prior-task projections).

Overview of CoDyRA: per weight matrix a dynamic-rank LoRA is trained on the current task and merged into the backbone after the task, so inference cost is unchanged across Task 1..t.
Figure 4. Overview of CoDyRA. A dynamic rank-selection LoRA keeps only the ranks each weight matrix needs for the current task; after each task the pruned update merges into the backbone (as with standard LoRA), incurring no inference overhead.

Rank-weighted LoRA update

For module m at task t, the update is a sum of rank-1 components, each scaled by a learnable importance weight wi; the number of non-zero weights upper-bounds the effective rank:

\[ \Delta\mathbf{W}^{t,m}=\sum_{i=1}^{r} \mathbf{w}_{i}^{t,m}\,\mathbf{B}_{:,i}^{t,m}\mathbf{A}_{i,:}^{t,m}, \qquad \rho \;\le\; \lVert \mathbf{w}^{t,m} \rVert_{0}. \]

Rank minimization as the regularizer

The objective adds an \(\ell_1\) penalty on the importance weights — the supervised term drives plasticity, the sparsity term minimizes rank and regularizes forgetting:

\[ \mathcal{L}_{\text{train}}^{t} \;:=\; {\color{#7c3aed}{\mathcal{L}_{\text{sup}}^{t}}} \;+\; {\color{#15803d}{\lambda \sum_{m=1}^{M} \lVert \mathbf{w}^{t,m} \rVert_{1}}}. \]

Because \(\ell_1\) is non-smooth, weights take a proximal (soft-thresholding) step after each gradient step, with a threshold \(\kappa_t\) ramping from zero to \(\kappa_{\max}=0.005\):

\[ \hat{\mathbf{w}}_{t}^{m} := \mathbf{w}_{t}^{m} - \eta_t \nabla_{\mathbf{w}^{m}}\mathcal{L}_{\text{sup}}, \qquad \mathbf{w}_{t+1}^{m} \leftarrow \mathcal{T}_{\kappa_t}\!\big(\hat{\mathbf{w}}_{t}^{m}\big), \quad \mathcal{T}_{\kappa}(x)=\mathbb{1}(|x|>\kappa)\cdot\big(x-\operatorname{sign}(x)\,\kappa\big). \]

Why lower rank means less forgetting

A first-order bound on forgetting \(F(\theta_t)\) grows with the update size, itself bounded by its rank \(\rho\) (Prop. 1):

\[ F(\theta_t) \;\le\; \lVert \nabla \ell(\theta_{t-1}) \rVert_F\,\lVert \Delta\mathbf{W} \rVert_F + \tfrac{L}{2}\lVert \Delta\mathbf{W} \rVert_F^2, \qquad \lVert \Delta\mathbf{W} \rVert_F \;\le\; \sqrt{\rho}\,\lVert \mathbf{B} \rVert_2 \lVert \mathbf{A} \rVert_2. \]

Both terms shrink as \(\rho\) decreases, and \(\Delta\mathbf{W}\) occupies a subspace of dimension at most \(\rho\). So rank minimization behaves as an implicit forgetting regularizer — tightening the bound along both magnitude and subspace dimension, protecting pre-trained and prior-task knowledge alike.

The bound in practice: bounded parameter shift

This is not just theory. By minimizing rank, CoDyRA directly minimizes the update magnitude \(\lVert\Delta\mathbf{W}\rVert_F\): per task it produces the smallest update — below even rank-1 LoRA — despite a moderate effective rank, and over the stream the cumulative drift \(\lVert\theta_t-\theta_0\rVert_F\) stays low while fixed-rank LoRA blows up near-linearly. A smaller parameter shift is exactly the mechanism the bound predicts for less forgetting — direct evidence that rank minimization acts as the regularizer.

Cumulative parameter shift ‖θt−θ0F

010203040501246810task t50.117.51LoRA (r=16)CoDyRA

Table 5 — drift over the 10-task stream.

Per-task update magnitude ‖ΔW‖F

02468‖ΔW‖F4.21LoRAr=1ρ=15.37LoRAr=4ρ=46.25LoRAr=8ρ=87.44LoRAr=16ρ=163.22CoDyRAρ=8.3

Table 6 — magnitude vs. effective rank ρ.

Experiments

5-shot MTIL — CLIP continual learning

Per-domain Transfer / Average / Last accuracy (%), grouped by method family. CoDyRA (capacity-controlled) is the only method that surpasses the zero-shot Transfer ceiling (70.1) while also leading on Last (78.0).

MethodAircraftCaltechCIFAR100DTDEuroSATFlowersFoodMNISTOxPetCarsSUN397Avg
Transfer
CLIP zero-shot reference
Zero-shot88.468.244.654.971.088.559.489.064.765.269.4
Model complementation
MoE-Adapter†87.968.244.148.164.788.869.089.164.565.168.9
RAIL-Primal†88.468.244.654.971.088.559.489.064.765.269.4
Model continually learned
reference-constrained
LwF72.149.235.944.541.166.650.569.019.051.750.0
LwF-VR82.262.540.140.156.380.060.977.640.560.860.1
WiSE-FT77.660.041.339.453.076.658.175.537.358.257.7
ZSCL84.068.144.846.863.684.961.481.455.562.265.3
capacity-controlled (ours)
CoDyRA92.468.445.854.569.687.465.288.564.264.570.1
Average
Model complementation
MoE-Adapter†30.089.673.958.769.379.388.176.589.165.365.871.4
RAIL-Primal†32.994.569.958.171.884.488.570.489.066.165.771.9
Model continually learned
reference-constrained
LwF23.577.443.541.743.552.254.663.468.021.352.649.2
LwF-VR24.989.164.253.454.370.879.266.579.244.161.662.5
WiSE-FT32.087.761.055.868.169.376.871.577.642.059.363.7
ZSCL28.288.666.553.556.373.483.156.482.457.562.964.4
capacity-controlled (ours)
CoDyRA34.695.873.960.077.181.386.675.989.966.165.373.3
Last
Model complementation
MoE-Adapter†30.189.374.964.082.389.487.189.089.169.572.576.1
RAIL-Primal†32.995.170.363.281.595.688.589.789.072.571.077.2
Model continually learned
reference-constrained
LwF22.158.217.932.128.166.746.084.364.131.560.146.5
LwF-VR22.989.859.357.157.679.278.377.783.660.169.866.9
WiSE-FT30.888.959.660.380.981.777.194.983.262.870.071.9
ZSCL26.888.563.755.760.282.182.658.685.966.770.467.4
capacity-controlled (ours)
CoDyRA31.695.572.863.585.089.785.094.793.273.673.078.0

X-TAIL — cross-domain, task-agnostic CLIP CL

Transfer / Average / Last accuracy (%) on the 10-domain X-TAIL benchmark (per-domain tables in the paper).

MethodTransferAverageLast
Model complementation
MoE-Adapter56.063.070.5
RAIL-Primal62.470.779.1
Model continually learned
reference-constrained
ZSCL59.060.063.4
iCaRL61.761.064.0
naive LoRA
LoRA (r=16)61.860.559.4
capacity-controlled (ours)
CoDyRA63.271.379.2

TRACE — LLM continual learning

Overall Performance (OP, ↑) and Forgetting (Fgt, ↓) over 8 sequential tasks (mean of 3 runs; ±std in the paper). Across all three backbones CoDyRA gives the highest OP and the lowest forgetting.

MethodLLaMA-2-7B-ChatGemma-2B-itLLaMA-3-1B-Instruct
OP ↑Fgt ↓OP ↑Fgt ↓OP ↑Fgt ↓
no training
FIX (ICL)38.9432.3031.16
Model complementation
auxiliary modules
L2P36.238.2531.1415.7729.3813.57
DualPrompt37.698.0332.4214.2530.7611.34
Model continually learned
reference-constrained
HiDeLoRA41.607.1233.2513.6633.7312.36
O-LoRA42.787.1633.7312.3632.9412.89
TreeLoRA43.523.4633.418.5036.147.36
OGD42.098.0632.8512.2730.1215.20
EWC42.365.9728.3516.9631.9611.62
GEM40.086.7726.4818.2532.1910.74
naive LoRA
SeqLoRA34.3018.5031.8915.2829.7317.03
capacity-controlled (ours)
CoDyRA43.823.2533.967.9437.465.11

Efficiency & forgetting

CoDyRA trains the fewest parameters and, because the pruned update merges into the backbone, adds no inference-time parameters or memory — while attaining the lowest Forgetting on X-TAIL.

MethodTrain. paramsAdd. inf. params
LwF129.6MNone
ZSCL129.6MNone
MoE-Adapters59.8M13.35M
RAILN/A24.18M / 9.01M
CoDyRA4.4MNone

Computation cost on CLIP CL (Table 3).

MethodForgetting ↓
ZSCL8.78
MoE-Adapter5.43
InfLoRA3.12
LoRA (r=4)13.94
LoRA (r=16)14.86
CoDyRA1.87

Forgetting on X-TAIL (Table 4); lower is better.

BibTeX

@inproceedings{lu2026take,
  title     = {{Take Only What You Need: Rank Minimization as an Implicit Forgetting Regularizer in Continual Learning}},
  author    = {{Lu, Haodong and Zhao, Chongyang and Xue, Minhui and Yao, Lina and Moore, Kristen and Gong, Dong}},
  booktitle = {{Findings of the Association for Computational Linguistics: EMNLP 2026}},
  year      = {{2026}},
  url       = {{https://openreview.net/forum?id=TmGgXWnedq}}
}