The Hard Positive Truth About Vision-Language Compositionality

Amita Kamath, Cheng-Yu Hsieh, Kai-Wei Chang, Ranjay Krishna
2/14/2026

No official code found. Best implementation: amitakamath/hard_positives (7 stars, last commit 2024-07-21).

Abstract

Several benchmarks have concluded that our best vision-language models (e.g., CLIP) are lacking in compositionality. Given an image, these benchmarks probe a model's ability to identify its associated caption amongst a set of compositional distractors. In response, a surge of recent proposals show improvements by finetuning CLIP with distractors as hard negatives. Our investigations reveal that these improvements have, in fact, been significantly overstated -- because existing benchmarks do not probe whether finetuned vision-language models remain invariant to hard positives. By curating an evaluation dataset with 112,382 hard negatives and hard positives, we uncover that including hard positives decreases CLIP's performance by 12.9%, while humans perform effortlessly at 99%. CLIP finetuned with hard negatives results in an even larger decrease, up to 38.7%. With this finding, we then produce a 1,775,259 image-text training set with both hard negative and hard positive captions. By training with both, we see improvements on existing benchmarks while simultaneously improving performance on hard positives, indicating a more robust improvement in compositionality. Our work suggests the need for future research to rigorously test and improve CLIP's understanding of semantic relationships between related"positive"concepts.

View on arXivView PDF

Code Implementations(1)

Code and datasets for "The Hard Positive Truth about Vision-Language Compositionality" at ECCV 2024.

70Shell, PythonJul 15, 20242 years ago

Similar Papers

Cite this paper

@article{kamath2026hard,
  title  = {The Hard Positive Truth About Vision-Language Compositionality},
  author = {Amita Kamath and Cheng-Yu Hsieh and Kai-Wei Chang and Ranjay Krishna},
  year   = {2026},
  eprint = {2409.17958},
  archivePrefix = {arXiv},
  url    = {https://arxiv.org/abs/2409.17958},
  journal = {ECCV 2024 2024}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2409.17958.svg)](https://codeofpaper.com/paper/2409.17958)

Discussion