BLIP: Bootstrapping Language-Image Pre-training for Unified Vision-Language Understanding and Generation
Junnan Li, Dongxu Li, Caiming Xiong, Steven Hoi
Code Available — Be the first to reproduce this paper.
ReproduceCode
- github.com/salesforce/lavisOfficialpytorch★ 11,193
- github.com/huggingface/transformerspytorch★ 158,292
- github.com/salesforce/blipIn paperpytorch★ 5,696
- github.com/towhee-io/towheepytorch★ 3,459
- github.com/ninatu/howtocaptionpytorch★ 58
- github.com/pwc-1/Paper-8/tree/main/blipmindspore★ 0
- github.com/2023-MindSpore-4/Code12/tree/main/MindFormers/blip2mindspore★ 0
- github.com/alibaba/EasyNLP/tree/master/examples/blip_retrievaljax★ 0
- github.com/2024-MindSpore-1/Code2/tree/main/model-1/blipmindspore★ 0
Abstract
Vision-Language Pre-training (VLP) has advanced the performance for many vision-language tasks. However, most existing pre-trained models only excel in either understanding-based tasks or generation-based tasks. Furthermore, performance improvement has been largely achieved by scaling up the dataset with noisy image-text pairs collected from the web, which is a suboptimal source of supervision. In this paper, we propose BLIP, a new VLP framework which transfers flexibly to both vision-language understanding and generation tasks. BLIP effectively utilizes the noisy web data by bootstrapping the captions, where a captioner generates synthetic captions and a filter removes the noisy ones. We achieve state-of-the-art results on a wide range of vision-language tasks, such as image-text retrieval (+2.7% in average recall@1), image captioning (+2.8% in CIDEr), and VQA (+1.6% in VQA score). BLIP also demonstrates strong generalization ability when directly transferred to video-language tasks in a zero-shot manner. Code, models, and datasets are released at https://github.com/salesforce/BLIP.
Tasks
Benchmark Results
| Dataset | Model | Metric | Claimed | Verified | Status |
|---|---|---|---|---|---|
| nocaps-val-in-domain | BLIP_ViT-L | CIDEr | 114.9 | — | Unverified |
| nocaps-val-in-domain | BLIP_CapFilt-L | CIDEr | 111.8 | — | Unverified |
| nocaps-val-near-domain | BLIP_CapFilt-L | CIDEr | 108.6 | — | Unverified |
| nocaps-val-near-domain | BLIP_ViT-L | CIDEr | 112.1 | — | Unverified |
| nocaps-val-out-domain | BLIP_CapFilt-L | CIDEr | 111.5 | — | Unverified |
| nocaps-val-out-domain | BLIP_ViT-L | CIDEr | 115.3 | — | Unverified |
| nocaps-val-overall | BLIP_ViT-L | CIDEr | 113.2 | — | Unverified |
| nocaps-val-overall | BLIP_CapFilt-L | CIDEr | 109.6 | — | Unverified |