SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2411.05195 · 2024

Exploring How Generative MLLMs Perceive More Than CLIP with the Same Vision Encoder

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 11 functions out of this paper's own repositories and ran 3 of them in a sandbox. "Ran" means the function executed on a synthesized input and returned a value. It is not a reproduction of the paper's results.

RepositoryRoleRan
lst627/CLIP-Embeds canonical 3 of 11
FunctionStatusWhere it lives
convert_to_custom_text_state_dict Ran lst627/CLIP-Embeds/open_clip/src/open_clip/model.py
pointer only (licence: NONE) · get_code("f19962ebb134b3d7")
get_cast_dtype Ran lst627/CLIP-Embeds/open_clip/src/open_clip/model.py
pointer only (licence: NONE) · get_code("dcd422d66b0581d8")
get_input_dtype Ran lst627/CLIP-Embeds/open_clip/src/open_clip/model.py
pointer only (licence: NONE) · get_code("b476c8cfbf0f1f47")
gather_features Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/loss.py
pointer only (licence: NONE) · get_code("ddcbd45e940484ee")
gather_features_diffsize Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/loss.py
pointer only (licence: NONE) · get_code("3ac9687e14b1d321")
get_model_config Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/factory.py
pointer only (licence: NONE) · get_code("86068b594e794f47")
load_state_dict Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/factory.py
pointer only (licence: NONE) · get_code("ef8f5bfd8696abff")
neighbour_exchange Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/loss.py
pointer only (licence: NONE) · get_code("3abc5a1959acd6c7")
parse_model_name Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/factory.py
pointer only (licence: NONE) · get_code("898cc6c8249c06a0")
prepare_inputs_for_generation Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/coca_model.py
pointer only (licence: NONE) · get_code("fb651d0a97fd4d3f")
register_pooler Not yet run lst627/CLIP-Embeds/open_clip/src/open_clip/hf_model.py
pointer only (licence: NONE) · get_code("2a377da4a76a2d44")

Repositories linked to this paper

Some links come from the archived Papers with Code dataset (CC BY-SA 4.0): attribution and licence.

Abstract

Recent research has shown that CLIP models struggle with visual reasoning tasks that require grounding compositionality, understanding spatial relationships, or capturing fine-grained details. One natural hypothesis is that the CLIP vision encoder does not embed essential information for these tasks. However, we find that this is not always the case: The encoder gathers query-relevant visual information, while CLIP fails to extract it. In particular, we show that another branch of Vision-Language Models (VLMs), Generative Multimodal Large Language Models (MLLMs), achieve significantly higher accuracy than CLIP in many of these tasks using the same vision encoder and weights, indicating that these Generative MLLMs perceive more -- as they extract and utilize visual information more effectively. We conduct a series of controlled experiments and reveal that their success is attributed to multiple key design choices, including patch tokens, position embeddings, and prompt-based weighting. On the other hand, enhancing the training data alone or applying a stronger text encoder does not suffice to solve the task, and additional text tokens offer little benefit. Interestingly, we find that fine-grained visual reasoning is not exclusive to generative models trained by an autoregressive loss: When converted into CLIP-like encoders by contrastive finetuning, these MLLMs still outperform CLIP under the same cosine similarity-based evaluation protocol. Our study highlights the importance of VLM architectural choices and suggests directions for improving the performance of CLIP-like contrastive VLMs.

For agents

The same record, over MCP at https://syntology.ai/mcp:

get_harvested_code_for_paper("2411.05195")
get_code_for_paper("2411.05195")
have("2411.05195")

Connect an agent — have() is free.