SYNTOLOGY HomeExplorerAtlasCodeMethodologyAboutDevelopersFeedPricing
Paper · 2409.15657 · EMNLP · 2024

M 2 PT: Multimodal Prompt Tuning for Zero-shot Instruction Learning

Zenglin Xu, Shaoliang Nie, James Liang, Dongfang Liu, Qifan Wang, Jiahao Liu, Yuning Mao, Yiming Cui, Fuli Feng, Cheng Han, Lifu Huang, Yiyang Liu, and 2 more

arXiv · PDF · Open in the Atlas

Code that ran

We lifted 26 functions out of this paper's own repositories and ran 16 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
william-wang618/mmpt-emnlp2024 canonical 5 of 5
william-wang618/m2pt — 11 of 21
FunctionStatusWhere it lives
CLIPAttention Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("2fac88833404a422")
CLIPMLP Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("4ea5ab8d39e37583")
CLIPOutput Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("295ac6633a3d6e3f")
CLIPTextEmbeddings Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("2200675ee7e0f4c5")
CLIPTextModelOutput Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("1aa764d481521c7c")
CLIPVisionEmbeddings Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("17e8f9a17c97b609")
CLIPVisionModel Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("7a4d14a0c2a66b91")
CLIPVisionModelOutput Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("bae888fcd5c5473f")
_expand_mask Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("0bac4ffb06162f12")
clip_loss Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("017dd63ed48e15f1")
collate_fn Ran william-wang618/mmpt-emnlp2024/M2PT/eval/model_vqa_loader_PT_mme.py
pointer only (licence: NONE) · get_code("20e4f665698a3d18")
contrastive_loss Ran william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("35caa662e2a8cf43")
get_chunk Ran william-wang618/mmpt-emnlp2024/M2PT/eval/model_vqa.py
pointer only (licence: NONE) · get_code("42a46570620cd9fa")
load_image_from_base64 Ran william-wang618/mmpt-emnlp2024/M2PT/mm_utils.py
pointer only (licence: NONE) · get_code("c3ee9d07c900dd55")
process_images Ran william-wang618/mmpt-emnlp2024/M2PT/mm_utils.py
pointer only (licence: NONE) · get_code("1df990c375318896")
split_list Ran william-wang618/mmpt-emnlp2024/M2PT/eval/model_vqa.py
pointer only (licence: NONE) · get_code("076c252c52cbb161")
CLIPEncoder Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("934679f6a65cc3f3")
CLIPEncoderLayer Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("5e590d2924823b50")
CLIPModel Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("88581d28cc6e056a")
CLIPTextModelWithProjection Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("6299098931d7cfdb")
CLIPTextTransformer Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("0ee6d16d12c11f15")
CLIPVisionModelWithProjection Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("129981f351dd0e2c")
CLIPVisionTower Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("f08131025c9de6a1")
CLIPVisionTransformer Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("d942bd5ff461ea13")
LlavaMetaModel Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("959e688412f8624f")
build_vision_tower Not yet run william-wang618/m2pt/M2PT/model/llava_archPT.py
pointer only (licence: NONE) · get_code("a11dbce7f6abb48d")

Repositories linked to this paper

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

Abstract

Multimodal Large Language Models (MLLMs) demonstrate remarkable performance across a wide range of domains, with increasing emphasis on enhancing their zero-shot generalization capabilities for unseen tasks across various modalities. Instruction tuning has emerged as an effective strategy for achieving zeroshot generalization by finetuning pretrained models on diverse multimodal tasks. As the scale of MLLMs continues to grow, parameterefficient finetuning becomes increasingly critical. However, most existing parameter-efficient approaches focus only on single modalities and often overlook the multimodal characteristics during finetuning. In this work, we introduce a novel Multimodal Prompt Tuning (M 2 PT) approach for efficient instruction tuning of MLLMs. M 2 PT effectively integrates visual and textual prompts into the vision encoder and language processor respectively during finetuning, facilitating the extraction and alignment of features across modalities. Empirical results on various multimodal evaluation datasets demonstrate the superior performance of our approach compared to several state-of-the-art baselines. A comprehensive set of ablation studies validates the effectiveness of our prompt design and the efficiency of our approach.

For agents

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

get_harvested_code_for_paper("2409.15657")
get_code_for_paper("2409.15657")
have("2409.15657")

Connect an agent — have() is free.