Black-Box Tuning of Vision-Language Models with Effective Gradient Approximation

Zixian Guo, Yuxiang Wei, Ming Liu, Zhilong Ji, Jinfeng Bai +2 more
12/26/2023
cs.CV

Official code: guozix/cbbt (5 stars, MIT, last commit 2024-11-26).

Abstract

Parameter-efficient fine-tuning (PEFT) methods have provided an effective way for adapting large vision-language models to specific tasks or scenarios. Typically, they learn a very small scale of parameters for pre-trained models in a white-box formulation, which assumes model architectures to be known and parameters to be accessible. However, large models are often not open-source due to considerations of preventing abuse or commercial factors, hence posing a barrier to the deployment of white-box PEFT methods. To alleviate the dependence on model accessibility, we introduce collaborative black-box tuning (CBBT) for both textual prompt optimization and output feature adaptation for black-box models. Specifically, considering that the backpropagation gradients are blocked, we approximate the gradients of textual prompts by analyzing the predictions with perturbed prompts. Secondly, a lightweight adapter is deployed over the output feature of the inaccessible model, further facilitating the model adaptation process. Empowered with these designs, our CBBT is extensively evaluated on eleven downstream benchmarks and achieves remarkable improvements compared to existing black-box VL adaptation methods. Code is released at https://github.com/guozix/cbbt.

View on arXivView PDF

Code Implementations(1)

guozix/cbbtOfficial100%
MIT

Implementation of the paper "Black-Box Tuning of Vision-Language Models with Effective Gradient Approximation" (EMNLP2023 Findings)

52Shell, PythonDec 26, 20231 years agoMIT

Cite this paper

@article{guo2023blackbox,
  title  = {Black-Box Tuning of Vision-Language Models with Effective Gradient Approximation},
  author = {Zixian Guo and Yuxiang Wei and Ming Liu and Zhilong Ji and Jinfeng Bai and Yiwen Guo and Wangmeng Zuo},
  year   = {2023},
  eprint = {2312.15901},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2312.15901v1}
}

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/2312.15901.svg)](https://codeofpaper.com/paper/2312.15901)

Discussion