NeurIPS 2026

You CAN Teach an Old Model New Tricks Domain Adaptation via Complementary Subspace Expansion

  • Donghoon Han Dnotitia
  • SungHyun Moon Dnotitia
  • SeungJae Lee Dnotitia
arXiv coming soon Code coming soon
Preservation-constrained backward-compatibility frontier on four domains; CoSE is the best full-preservation point on each
Preservation-constrained BC frontier under a 5 pp budget. x: domain R@1 gain over the frozen model on a migration-compatible index; y: how many of {Flickr, COCO, ImageNet} stay within 5 pp of frozen. Circled: the best exact-BC method at 3/3 preservation β€” CoSE on all four domains. The red segment connects CoSE at Ξ± = 0.5 and at the val-tuned Ξ±*, both from one checkpoint.

Abstract

Production retrieval requires three properties jointly: domain adaptation, general-retrieval preservation, and backward compatibility with deployed indices. Existing methods achieve at most two: PEFT breaks the index and degrades general retrieval; BCT preserves the index only approximately; L2C preserves general retrieval but still modifies the deployed embedding. We introduce CoSE (Complementary Subspace Expansion), a side-branch LoRA whose frozen pathway is structurally untouched: legacy zold entries are never rewritten, and a jointly-trained znew channel is appended alongside them. At Ξ± = 1 the deployed score recovers the frozen ranking exactly; for Ξ± < 1, domain gains require computing znew per document but the legacy index stays valid throughout migration. A three-term joint loss converts the frozen+LoRA concatenation into Pareto-efficient retrieval. Across four domains (Korean broadcast, medical radiology, art paintings, remote sensing) and 3 seeds, CoSE at 6.4M trainable parameters stays within Β±0.048 of frozen on Flickr/COCO/ImageNet at Ξ± = 0.5 and is domain-competitive at val-tuned Ξ±* β€” the only configuration we evaluate that simultaneously delivers structural BC, general retention, and competitive domain quality from a single checkpoint.

Key numbers

Ξ± = 1
Exact frozen ranking
Β±0.048
General drift at Ξ± = 0.5
6.4M
Trainable params (0.30%)
4 / 4
Domains on the BC frontier

The problem: the index is the expensive part

In multimodal retrieval, the index built from a deployed embedding model is often the largest asset in the serving stack β€” re-embedding a billion-document corpus can take weeks of GPU time. Adapting that model to a new domain therefore carries a second cost beyond fine-tuning: index migration. Current methods force a trade-off.

Method Domain General Backward-compatible Params
Frozenβœ—βœ“βœ“βœ“0
LoRAβœ“βœ“βœ—βœ—6.4M
BCTβœ“βœ—β‰ˆ6.4M
L2C-matchedβ‰ˆβœ“βœ—6.4M
CoSEβœ“βœ“βœ“6.4M

Qualitative positioning at 6.4M trainable parameters (βœ“βœ“ strong, βœ“ acceptable, β‰ˆ partial, βœ— fails). CoSE is the only configuration whose score family contains an exact frozen-ranking endpoint while still moving toward domain quality.

1. Why expansion is necessary

Two short results bound the design space. First, exact compatibility within the deployed d-dimensional channel is trivial: if an adapted query encoder reproduces every score against a full-rank legacy index, it must equal the frozen encoder. Any non-trivial adaptation that keeps legacy scores exact has to expand the score channel.

Second, a direct-sum normal form: any expanded representation from which the frozen embedding can be read out by a fixed linear projection is, up to a change of coordinates, [ zold ; h(x) ]. CoSE's concatenation is therefore not an ad hoc trick β€” it is the canonical shape of auditable backward compatibility.

2. Side-branch LoRA architecture

CoSE architecture: a frozen pass produces z_old, a LoRA side branch produces z_new, and they are concatenated
Pass 1 (frozen) runs the unmodified base encoder and produces the preserved legacy embedding zold. Pass 2 is a trainable side branch with LoRA on the attention projections that consumes detached Pass-1 hidden states and produces the complementary znew. The retrieval embedding is zfinal = [zold β€– znew].

Because the first d coordinates are produced by a forward pass identical to the base encoder, every score against a legacy document is exactly the frozen-model score (index preservation by construction). On Qwen3-VL-Embedding-2B (L = 28, d = 2048, rank 16) the side branch has 6.4M trainable parameters, 0.30% of the base.

At inference, a single scalar blends the two channels:

s_Ξ±(q, d) = Ξ± Β· ⟨z_old(q), z_old(d)⟩ + (1 βˆ’ Ξ±) Β· ⟨z_new(q), z_new(d)⟩

For every Ξ± ∈ [0, 1] this is a positive-semidefinite kernel, so Ξ± indexes a family of valid retrieval kernels rather than a heuristic interpolation. Ξ± = 1 is the frozen model exactly; Ξ± = 0.5 is the unweighted concatenation and a zero-tune default; an operator can pick Ξ±* with a 1-D sweep on a small validation set β€” no retraining.

Training uses three terms, each anchoring one operating point: InfoNCE on zfinal (the Ξ± = 0.5 blend), InfoNCE on znew alone (the Ξ± = 0 endpoint), and a Matryoshka loss so znew can be truncated for cheaper storage. The Ξ± = 1 endpoint is anchored for free by the frozen pretraining.

3. Results across four domains

We adapt Qwen3-VL-Embedding-2B to Korean broadcast/cultural imagery (HAN extended), medical radiology (ROCO), art paintings (SemArt) and remote sensing (RSICD), and track general retrieval on Flickr30K, COCO and ImageNet zero-shot. All learned methods use 6.4M trainable parameters; numbers are 3-seed means on the test split.

Domain Method BC Domain R@1 Migration R@1 INet Top-1 COCO Flickr
HAN extendedLoRAβœ—0.4500.3900.5310.4150.776
BCT-canonicalβ‰ˆ0.4920.4240.5500.4790.858
CoSE Ξ± = 0.5βœ“0.4330.4330.6350.6830.881
CoSE Ξ±* β‰ˆ 0.12βœ“0.4650.4650.5310.5070.757
ROCOLoRAβœ—0.4570.2470.4980.4650.767
BCT-canonicalβ‰ˆ0.3650.2630.6020.5450.843
CoSE Ξ± = 0.5βœ“0.3530.3530.6380.6840.893
CoSE Ξ±* β‰ˆ 0.15βœ“0.3850.3850.5770.6330.845
SemArtLoRAβœ—0.5130.3410.6140.5190.846
BCT-canonicalβ‰ˆ0.4870.3880.6040.5310.844
CoSE Ξ± = 0.5βœ“0.4700.4700.6500.6850.889
CoSE Ξ±* β‰ˆ 0.32βœ“0.4920.4920.6300.6600.870
RSICDLoRAβœ—0.1570.1080.2810.3600.617
BCT-cosineβ‰ˆ0.1720.1130.5210.5290.831
CoSE Ξ± = 0.5βœ“0.1580.1580.5960.6750.865
CoSE Ξ±* β‰ˆ 0.33βœ“0.1600.1600.5410.6320.828
Frozenno adaptationβœ“0.319 / 0.141 / 0.203 / 0.0870.6440.6880.880

Domain R@1 is avg(i2t, t2i). Migration R@1 queries with the adapted encoder against a legacy frozen index (for CoSE, the expanded index, with Ξ± = 1 guaranteeing exact frozen recovery). General columns are ImageNet zero-shot top-1 and COCO/Flickr avg R@1. Selected baselines shown; the paper also reports BCT-cosine and a parameter-matched L2C on every domain.

CoSE is domain-competitive, not domain-SOTA: at Ξ±* it trails the per-domain leader by 0.012–0.027 on three domains (within noise) and by 0.072 on ROCO. What it buys is a distinct frontier point. LoRA's domain peaks cost up to 0.363 ImageNet top-1; CoSE at Ξ± = 0.5 stays within Β±0.048 of frozen on every general cell. And for shifted single-encoder baselines, querying a legacy index captures only 27–61% of their self-gain, because query and corpus encoders drift apart β€” CoSE's migration column equals its domain column by construction.

4. One checkpoint, a whole operating curve

Domain validation R@1 and ImageNet top-1 as a function of alpha on four domains
Sweeping α on a single CoSE checkpoint. Red: domain val i2t R@1 (left axis). Blue: ImageNet top-1 (right axis). α* sits consistently below 0.5 — domain signal dominates — with a val→test gap of at most 0.045.

LoRA, BCT and L2C each produce one point; CoSE exposes the full curve at deployment time. The same checkpoint also supports partial branching (sharing the first K layers cuts forward overhead from 2Γ— to about 1.5Γ— at K = L/2 for ≀ 0.04 R@1 on three of four domains) and Matryoshka truncation of znew for cheaper storage. The legacy zold slice is preserved in every variant.

5. Why train jointly?

A natural baseline is to ensemble the frozen model's score with a separately trained LoRA. It does not work as a substitute: the val-tuned ensemble weight collapses to Ξ± ≀ 0.05 on three of four domains, essentially recovering LoRA along with its general drift. A standard LoRA is a low-rank perturbation of the base (cos β‰ˆ 0.85), so the two branches make the same mistakes and averaging is redundant.

Alpha-swept Pareto curves of CoSE versus a Frozen+LoRA score ensemble on four domains
Ξ±-swept trade-off between domain R@1 and general R@1 for CoSE (red) and a Frozen+LoRA score ensemble (blue). Diamonds mark each method's val-selected Ξ±*.

The standalone InfoNCE on znew is what makes CoSE different. It forces the side channel to be retrieval-valid on its own, which emergently places znew at cos β‰ˆ 0.5 to zold β€” partially decorrelated, so blending behaves like an ensemble. Removing that term (HAN extended, seed 0) collapses Ξ± = 0.1 retrieval from 0.489 to 0.185 and zold/znew overlap@1 from 26.0% to 2.4%.

Takeaway

When existing indices are large and re-indexing is costly, CoSE offers a backward-compatible route to domain adaptation that keeps general retrieval intact. The base encoder is never modified, Ξ± = 1 recovers the legacy ranking exactly, and Ξ± < 1 adds a complementary domain score without rewriting old coordinates β€” so migration becomes a gradual Ξ±-sweep instead of a hard cutover.

Scope. CoSE does not eliminate re-embedding: for Ξ± < 1, znew must still be computed per document. Full branching costs 2Γ— forward compute and 2Γ— embedding width, reducible but not to zero. Each run specializes znew to one domain, and all experiments use Qwen3-VL-Embedding as the base encoder. Where latency, storage, or pure peak-domain accuracy dominate, single-embedding methods are cheaper.

Citation

@inproceedings{han2026cose,
  title     = {You CAN Teach an Old Model New Tricks: Domain Adaptation via Complementary Subspace Expansion},
  author    = {Han, Donghoon and Moon, SungHyun and Lee, SeungJae},
  booktitle = {Advances in Neural Information Processing Systems (NeurIPS)},
  year      = {2026},
  note      = {To appear}
}