
摘要
图像描述(Image Captioning)是视觉-语言理解中的基础任务,其目标是为给定的输入图像生成具有信息量的文本描述。本文提出一种简洁有效的解决方案。我们通过一个简单的映射网络,将CLIP模型的图像编码作为图像描述的前缀,随后对语言模型进行微调,以生成图像描述。近期提出的CLIP模型蕴含丰富的语义特征,并在大规模文本上下文数据上进行训练,因此在视觉-语言感知任务中表现优异。本文的核心思想是:结合预训练的语言模型(如GPT-2),模型能够同时掌握视觉与文本数据的广泛语义理解。因此,我们的方法仅需较短时间的训练即可获得性能出色的图像描述生成模型。该方法无需额外标注数据或额外预训练,在大规模且多样化的数据集上能够高效生成语义合理的图像描述。令人惊讶的是,即使仅训练映射网络,而保持CLIP模型与语言模型冻结不变,该方法仍能取得良好效果,从而实现参数更少、结构更轻量的模型架构。通过定量评估,我们证明该模型在具有挑战性的Conceptual Captions和nocaps数据集上,性能可与当前最先进方法相媲美,同时具备结构更简单、训练更快、模型更轻量的优势。相关代码已开源,地址为:https://github.com/rmokady/CLIP_prefix_caption。
代码仓库
MS-P3/code7/tree/main/x_clip
mindspore
Japanese-Image-Captioning/ClipCap-for-Japanese
pytorch
GitHub 中提及
rmokady/clip_prefix_caption
官方
pytorch
GitHub 中提及
sithu31296/image-captioning
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| image-captioning-on-coco-captions | ClipCap (Transformer) | BLEU-4: 33.53 CIDER: 113.08 METEOR: 27.45 SPICE: 21.05 |
| image-captioning-on-coco-captions | ClipCap (MLP + GPT2 tuning) | BLEU-4: 32.15 CIDER: 108.35 METEOR: 27.1 SPICE: 20.12 |
| image-captioning-on-conceptual-captions | ClipCap (Transformer) | CIDEr: 71.82 ROUGE-L: 25.12 SPICE: 16.07 |
| image-captioning-on-conceptual-captions | ClipCap (MLP + GPT2 tuning) | CIDEr: 87.26 ROUGE-L: 26.71 SPICE: 18.5 |
| image-captioning-on-nocaps-entire | ClipCap (Transformer) | CIDEr: 65.83 SPICE: 10.86 |
| image-captioning-on-nocaps-entire | ClipCap (MLP + GPT2 tuning) | CIDEr: 65.7 SPICE: 11.1 |
| image-captioning-on-nocaps-in-domain | ClipCap (Transformer) | CIDEr: 84.85 SPICE: 12.14 |
| image-captioning-on-nocaps-in-domain | ClipCap (MLP + GPT2 tuning) | CIDEr: 79.73 SPICE: 12.2 |
| image-captioning-on-nocaps-near-domain | ClipCap (Transformer) | CIDEr: 66.82 SPICE: 10.92 |
| image-captioning-on-nocaps-near-domain | ClipCap (MLP + GPT2 tuning) | CIDEr: 67.69 SPICE: 11.26 |
| image-captioning-on-nocaps-out-of-domain | ClipCap (Transformer) | CIDEr: 49.14 SPICE: 9.57 |
| image-captioning-on-nocaps-out-of-domain | ClipCap (MLP + GPT2 tuning) | CIDEr: 49.35 SPICE: 9.7 |