FBCIR: Balancing Cross-Modal Focuses in Composed Image Retrieval
Organizations: Department of Computer Science and Engineering, The Chinese University of Hong Kong · Tencent AI Data Department · School of Mathematical Sciences, Dalian University of Technology · School of Computer Science, Nanjing University
Abstract
Composed image retrieval (CIR) requires multi-modal models to jointly reason over visual content and semantic modifications presented in text-image input pairs. While current CIR models achieve strong performance on common benchmark cases, their accuracies often degrades in more challenging scenarios where negative candidates are semantically aligned with the query image or text. In this paper, we attribute this degradation to focus imbalances, where models disproportionately attend to one modality while neglecting the other. To validate this claim, we propose FBCIR, a multi-modal focus interpretation method that identifies the most crucial visual and textual input components to a model's retrieval decisions. Using FBCIR, we report that focus imbalances are prevalent in existing CIR models, especially under hard negative settings. Building on the analyses, we further propose a CIR data augmentation workflow that facilitates existing CIR datasets with curated hard negatives designed to encourage balanced cross-modal reasoning. Extensive experiments across multiple CIR models demonstrate that the proposed augmentation consistently improves performance in challenging cases, while maintaining their capabilities on standard benchmarks. Together, our interpretation method and data augmentation workflow provide a new perspective on CIR model diagnosis and robustness improvements.
Figures & tables
| Benchmark | Queries | Candidates | Candidates (Local) |
| CIRR | 4180 | 2265 | 5.97 |
| FashionIQ | 12032 | 6003 | N/A |
| GeneCIS | 3920 | 3030 | 15.0 |
| FBCIR-Data | 1000 | 3844 | 5.0 |
| Model | Average | FBCIR-Data | Focus |
| Rs@1 | Imbalance | ||
| CLIP-based Models | |||
| CLIP4CIR-RN50 | 24.9 | 33.4 | 0.53 |
| CLIP4CIR-RN50x4 | 26.0 | 31.2 | 0.65 |
| SEARLE-base | 23.6 | 29.3 | 0.27 |
| SEARLE-large | 24.7 | 30.2 | 0.70 |
| Metrics: CIRR R@1 / CIRR Rs@1 / FashionIQ R@10 / GeneCIS Rs@1 \ ||\ Average (Gain) \ ||\ FBCIR-Data Rs@1 (Gain) | ||||||
| Data / Rank | GME-2B | GME-7B | ||||
| Pretrained | 32.8 / 41.5 / 39.8 / 21.1 | 33.8 | 29.7 | 35.2 / 44.3 / 43.3 / 21.7 | 36.1 | 32.9 |
| 5K / 2 | 36.8 / 48.3 / 40.0 / 20.9 | 36.5 ( +2.7 ) | 37.6 ( +7.9 ) | 41.1 / 51.1 / 43.2 / 21.7 | 39.3 ( +3.1 ) | 42.2 ( +9.3 ) |
| 10K / 2 | 37.1 / 48.4 / 39.7 / 21.3 | 36.6 ( +2.8 ) | 37.7 ( +8.0 ) | 44.1 / 55.3 / 43.2 / 21.8 | 41.1 ( +5.0 ) | 42.7 ( +9.8 ) |
| 20K / 2 | 35.3 / 45.6 / 39.9 / 20.5 | 35.3 ( +1.5 ) | 36.6 ( +6.9 ) | 43.5 / 54.6 / 43.2 / 21.7 | 40.7 ( +4.6 ) | 44.2 ( +11.3 ) |
| 50K / 2 | 36.8 / 47.7 / 40.1 / 20.8 | 36.4 ( +2.6 ) | 37.9 ( +8.2 ) | 44.5 / 56.2 / 43.0 / 21.4 | 41.3 ( +5.1 ) | 46.6 ( +13.7 ) |
| Metrics: Focus Imbalance (Reduction) | ||||||||
| Data | 5K | 10K | 20K | 50K | 5K | 10K | 20K | 50K |
| Rank | GME-2B (Pretrained: 0.54) | GME-7B (Pretrained: 0.55) | ||||||
| 2 | 0.51 ( -0.03 ) | 0.58 ( +0.04 ) | 0.21 ( -0.33 ) | 0.28 ( -0.26 ) | 0.54 ( -0.01 ) | 0.54 ( -0.02 ) | 0.23 ( -0.33 ) | 0.13 ( -0.42 ) |
| 4 | 0.56 ( +0.02 ) | 0.40 ( -0.14 ) | 0.17 ( -0.38 ) | 0.32 ( -0.22 ) | 0.54 ( -0.01 ) | 0.54 ( -0.02 ) | 0.23 ( -0.33 ) | 0.13 ( -0.42 ) |
| Rank | RzenEmbed-7B (Pretrained: 0.43) | MM-Embed-7B (Pretrained: 0.60) | ||||||
| 2 | 0.44 ( +0.01 ) | 0.23 ( -0.21 ) | 0.10 ( -0.33 ) | 0.11 ( -0.32 ) | 0.56 ( -0.04 ) | 0.05 ( -0.55 ) | 0.06 ( -0.54 ) | 0.16 ( -0.44 ) |
| Metrics: FBCIR -CIRR Rs@1 (Gain) | ||||||||
| Data | 5K | 10K | 20K | 50K | 5K | 10K | 20K | 50K |
| Rank | GME-2B (Pretrained: 28.5) | GME-7B (Pretrained: 32.9) | ||||||
| 2 | 29.8 ( +1.3 ) | 29.6 ( +1.1 ) | 28.0 ( -0.5 ) | 30.2 ( +1.7 ) | 27.4 ( +2.4 ) | 27.7 ( +2.7 ) | 27.3 ( +2.3 ) | 29.0 ( +4.0 ) |
| 4 | 29.2 ( +0.7 ) | 28.7 ( +0.2 ) | 29.7 ( +1.2 ) | 30.0 ( +1.5 ) | 27.3 ( +2.3 ) | 28.7 ( +3.7 ) | 29.4 ( +4.4 ) | 30.1 ( +5.1 ) |
| Rank | RzenEmbed-7B (Pretrained: 30.1) | MM-Embed-7B (Pretrained: 26.7) | ||||||
| 2 | 30.5 ( +0.4 ) | 31.5 ( +1.4 ) | 30.4 ( +0.3 ) | 33.2 ( +3.1 ) | 29.4 ( +1.9 ) | 31.5 ( +4.0 ) | 29.5 ( +2.0 ) | 33.3 ( +5.8 ) |
| Metrics: Average (Gain) / FBCIR-Data Rs@1 (Gain) | ||||||||
| Neg | 5K | 10K | 20K | 50K | 5K | 10K | 20K | 50K |
| Ratio | GME-2B (Pretrained: 33.8 / 29.7) | GME-7B (Pretrained: 36.1 / 32.9) | ||||||
| 0% | 35.7 / 33.6 | 36.0 / 33.1 | 35.3 / 34.5 | 35.6 / 33.3 | 38.8 / 38.6 | 39.6 / 38.6 | 39.2 / 39.3 | 39.4 / 39.1 |
| 25% | 35.9 ( +0.2 ) | 36.2 ( +0.2 ) | 37.2 ( +1.8 ) | 36.2 ( +0.6 ) | 40.4 ( +1.6 ) | 39.3 ( -0.2 ) | 38.5 ( -0.7 ) | 39.6 ( +0.1 ) |
| 34.6 ( +1.0 ) | 36.2 ( +3.1 ) | 37.2 ( +2.7 ) | 37.8 ( +4.5 ) | 40.5 ( +1.9 ) | 41.5 ( +2.9 ) | 40.3 ( +1.0 ) | 41.1 ( +2.0 ) | |
| 50% | 36.5 ( +0.8 ) | 36.6 ( +0.6 ) | 35.3 (+0.0) | 36.4 ( +0.7 ) | 39.3 ( +0.5 ) | 41.1 ( +1.6 ) | 40.7 ( +1.6 ) | 41.3 ( +1.8 ) |
Appendix figures & tables10 assets
Supplementary material from the paper’s appendix.
Appendix
| Model | LoRA Ranks | Trainable Param Count (Proportion) | Trainable Param Range |
| CLIP-based Models | |||
| CLIP4CIR-RN50 | N/A | 75.5M (29.8%) | combiner.dynamic_scalar combiner.output_layer clip_model.logit_scale |
| CLIP4CIR-RN50x4 | N/A | 29.5M (12.4%) | |
| SEARLE-base | N/A | 1.0M (0.7%) | searle.layers.6 clip_model.logit_scale |
| SEARLE-large | N/A | 2.4M (0.5%) | |
| BGE-base | 2 | 0.2M (0.2%) | q_proj k_proj v_proj out_proj |
| Metrics: CIRR R@1 / CIRR Rs@1 / FashionIQ R@10 / GeneCIS Rs@1 \ ||\ Average (Gain) \ ||\ FBCIR-Data Rs@1 (Gain) | ||||||
| Data / Rank | GME-2B | GME-7B | ||||
| Pretrained | 32.8 / 41.5 / 39.8 / 21.1 | 33.8 | 29.7 | 35.2 / 44.3 / 43.3 / 21.7 | 36.1 | 32.9 |
| 5K / 2 | 36.8 / 48.3 / 40.0 / 20.9 | 36.5 ( +2.7 ) | 37.6 ( +7.9 ) | 41.1 / 51.1 / 43.2 / 21.7 | 39.3 ( +3.1 ) | 42.2 ( +9.3 ) |
| 10K / 2 | 37.1 / 48.4 / 39.7 / 21.3 | 36.6 ( +2.8 ) | 37.7 ( +8.0 ) | 44.1 / 55.3 / 43.2 / 21.8 | 41.1 ( +5.0 ) | 42.7 ( +9.8 ) |
| 20K / 2 | 35.3 / 45.6 / 39.9 / 20.5 | 35.3 ( +1.5 ) | 36.6 ( +6.9 ) | 43.5 / 54.6 / 43.2 / 21.7 | 40.7 ( +4.6 ) | 44.2 ( +11.3 ) |
| 50K / 2 | 36.8 / 47.7 / 40.1 / 20.8 | 36.4 ( +2.6 ) | 37.9 ( +8.2 ) | 44.5 / 56.2 / 43.0 / 21.4 | 41.3 ( +5.1 ) | 46.6 ( +13.7 ) |
| Metrics: Focus Imbalance (Reduction) | ||||||||
| Data | 5K | 10K | 20K | 50K | 5K | 10K | 20K | 50K |
| Rank | GME-2B (Pretrained: 0.54) | GME-7B (Pretrained: 0.55) | ||||||
| 2 | 0.51 ( -0.03 ) | 0.58 ( +0.04 ) | 0.21 ( -0.33 ) | 0.28 ( -0.26 ) | 0.54 ( -0.01 ) | 0.54 ( -0.02 ) | 0.23 ( -0.33 ) | 0.13 ( -0.42 ) |
| 4 | 0.56 ( +0.02 ) | 0.40 ( -0.14 ) | 0.17 ( -0.38 ) | 0.32 ( -0.22 ) | 0.54 ( -0.01 ) | 0.54 ( -0.02 ) | 0.23 ( -0.33 ) | 0.13 ( -0.42 ) |
| 8 | 0.58 ( +0.04 ) | 0.16 ( -0.38 ) | 0.20 ( -0.34 ) | 0.17 ( -0.37 ) | 0.53 ( -0.03 ) | 0.26 ( -0.29 ) | 0.27 ( -0.29 ) | 0.31 ( -0.24 ) |
| 16 | 0.56 ( +0.02 ) | 0.34 ( -0.20 ) | 0.32 ( -0.22 ) | 0.27 ( -0.27 ) | 0.56 (-0.00) | 0.22 ( -0.33 ) | 0.35 ( -0.21 ) | 0.28 ( -0.28 ) |
| Metrics: FBCIR -CIRR Rs@1 (Gain) | ||||||||
| Data | 5K | 10K | 20K | 50K | 5K | 10K | 20K | 50K |
| Rank | GME-2B (Pretrained: 28.5) | GME-7B (Pretrained: 25.0) | ||||||
| 2 | 29.8 ( +1.3 ) | 29.6 ( +1.1 ) | 28.0 ( -0.5 ) | 30.2 ( +1.7 ) | 27.4 ( +2.4 ) | 27.7 ( +2.7 ) | 27.3 ( +2.3 ) | 29.0 ( +4.0 ) |
| 4 | 29.2 ( +0.7 ) | 28.7 ( +0.2 ) | 29.7 ( +1.2 ) | 30.0 ( +1.5 ) | 27.3 ( +2.3 ) | 28.7 ( +3.7 ) | 29.4 ( +4.4 ) | 30.1 ( +5.1 ) |
| 8 | 28.8 ( +0.3 ) | 29.4 ( +0.9 ) | 30.3 ( +1.8 ) | 30.5 ( +2.0 ) | 29.0 ( +4.0 ) | 27.7 ( +2.7 ) | 28.7 ( +3.7 ) | 28.5 ( +3.5 ) |
| 16 | 29.3 ( +0.8 ) | 28.0 ( -0.5 ) | 29.3 ( +0.8 ) | 31.5 ( +3.0 ) | 27.7 ( +2.7 ) | 28.5 ( +3.5 ) | 28.9 ( +3.9 ) | 30.4 ( +5.4 ) |
| Metrics: Average (Gain) / FBCIR-Data Rs@1 (Gain) | ||||||||
| Data | 5K | 10K | 20K | 50K | 5K | 10K | 20K | 50K |
| Rank | CLIP4CIR-RN50 (Pretrained: 24.9 / 33.4) | CLIP4CIR-RN50x4 (Pretrained: 34.2 / 41.4) | ||||||
| N/A | 20.3 ( -4.6 ) | 20.2 ( -4.6 ) | 17.6 ( -7.3 ) | 19.1 ( -5.7 ) | 27.8 ( -6.4 ) | 26.5 ( -7.6 ) | 25.6 ( -8.6 ) | 25.4 ( -8.8 ) |
| 42.2 ( +8.8 ) | 47.0 ( +13.6 ) | 41.7 ( +8.3 ) | 48.4 ( +15.0 ) | 50.7 ( +9.3 ) | 51.0 ( +9.6 ) | 53.8 ( +12.4 ) | 51.4 ( +10.0 ) | |
| Rank | SEARLE-base (Pretrained: 23.6 / 29.3) | SEARLE-large (Pretrained: 24.7 / 30.2) | ||||||
| N/A | 23.0 ( -0.6 ) | 22.7 ( -0.9 ) | 22.9 ( -0.7 ) | 22.5 ( -1.0 ) | 24.7 (+0.0) | 24.4 ( -0.3 ) | 23.9 ( -0.7 ) | 23.3 ( -1.4 ) |
| Metrics: Focus Imbalance (Reduction) | ||||||||
| Neg | 5K | 10K | 20K | 50K | 5K | 10K | 20K | 50K |
| Ratio | GME-2B (Pretrained: 0.54) | GME-7B (Pretrained: 0.55) | ||||||
| 0% | 0.58 | 0.53 | 0.15 | 0.28 | 0.49 | 0.53 | 0.32 | 0.28 |
| 25% | 0.52 ( -0.05 ) | 0.37 ( -0.16 ) | 0.28 ( +0.13 ) | 0.20 ( -0.08 ) | 0.52 ( +0.03 ) | 0.55 ( +0.02 ) | 0.28 ( -0.04 ) | 0.12 ( -0.17 ) |
| 50% | 0.51 ( -0.07 ) | 0.58 ( +0.05 ) | 0.21 ( +0.06 ) | 0.28 ( +0.01 ) | 0.54 ( +0.05 ) | 0.54 ( +0.01 ) | 0.23 ( -0.09 ) | 0.13 ( -0.15 ) |
| 75% | 0.48 ( -0.10 ) | 0.30 ( -0.22 ) | 0.23 ( +0.08 ) | 0.25 ( -0.03 ) | 0.46 ( -0.03 ) | 0.36 ( -0.17 ) | 0.29 ( -0.02 ) | 0.26 ( -0.03 ) |
| Data / Rank | CIRR R@1 | CIRR Rs@1 | FashionIQ R@1 | GeneCIS Rs@1 |
| GME-2B | ||||
| Pretrained | 32.8 | 41.5 | 39.8 | 21.1 |
| 5K / 2 | 36.8 ( +4.0 ) | 48.3 ( +6.8 ) | 40.0 ( +0.2 ) | 20.9 ( -0.2 ) |
| 10K / 2 | 37.1 ( +4.4 ) | 48.4 ( +6.9 ) | 39.7 ( -0.1 ) | 21.3 ( +0.2 ) |
| 20K / 2 | 35.3 ( +2.5 ) | 45.6 ( +4.1 ) | 39.9 (+0.0) | 20.5 ( -0.6 ) |
| 50K / 2 | 36.8 ( +4.1 ) | 47.7 ( +6.3 ) | 40.1 ( +0.3 ) | 20.8 ( -0.3 ) |
| Data / Rank | CIRR R@1 | CIRR Rs@1 | FashionIQ R@1 | GeneCIS Rs@1 |
| RzenEmbed-7B | ||||
| Pretrained | 40.1 | 47.5 | 41.2 | 21.4 |
| 5K / 2 | 41.5 ( +1.3 ) | 49.8 ( +2.3 ) | 41.3 ( +0.1 ) | 22.1 ( +0.7 ) |
| 10K / 2 | 43.7 ( +3.5 ) | 53.5 ( +6.0 ) | 40.7 ( -0.5 ) | 23.6 ( +2.2 ) |
| 20K / 2 | 45.5 ( +5.3 ) | 55.9 ( +8.4 ) | 40.8 ( -0.4 ) | 23.0 ( +1.5 ) |
| 50K / 2 | 44.6 ( +4.5 ) | 54.8 ( +7.3 ) | 40.6 ( -0.6 ) | 22.9 ( +1.4 ) |
| Model | CLIP4CIR-RN50 | SEARLE-base | BGE-base | GME-2B | RzenEmbed-7B |
| Time / s | 0.24 | 0.23 | 0.05 | 0.53 | 0.90 |
| Model | CLIP4CIR-RN50x4 | SEARLE-large | BGE-large | GME-7B | MM-Embed-7B |
| Time / s | 0.25 | 0.29 | 0.06 | 0.89 | 1.29 |