多模态大模型调研

多模态+大语言模型

1. 将跨模态编码器等其它结构与LLM进行有机结合

他山之石:腾讯博客综述

他山之石:博客

本文整理了近两年来基于LLM做vision-lanuage任务的一些工作,并将其划分为4个类别:

  1. 利用LLM作为理解中枢调用多模态模型,例如VisualChatGPT(2023), MM-REACT(2023);
  2. 将视觉转化为文本,作为LLM的输入,例如PICA(2022),PromptCap(2022),ScienceQA(2022);
  3. 利用视觉模态影响LLM的解码,例如ZeroCap,MAGIC;
  4. 冻住LLM,训练视觉编码器等额外结构以适配LLM,例如Frozen,BLIP2,Flamingo,PaLM-E;

Multimodal Few-Shot Learning with Frozen Language Models

https://arxiv.org/pdf/2106.13884.pdf

DeepMind,2021

固定llm的参数,把图片信息encode后当prefix与text拼接,论文中说llm的规模是7B

image

Flamingo

https://arxiv.org/pdf/2204.14198.pdf

固定llm,vision-encoder参数,额外添加两个可训练的部分:

(1)在Visual Encoder后加入了Perceiver Resampler模块,用于加强视觉表征;

(2)在LLM的每层之前加入了Gated xattn-dense模块用于加强跨模态信息交互。

image

Perceiver Resampler:用特定长度的Query抽取图片信息(降低图片的表示长度)

image

BLIP-2

https://arxiv.org/pdf/2301.12597.pdf

固定llm,vision-encoder参数,添加了Q-former来将图片信息对齐到文本

训练分两阶段

阶段一:Q-former用bert-base参数初始化,设置三个训练目标联合训练

image

阶段二:vision-to-language generative

image

LLM使用OPT(2.7B,6.7B),FlanT5(XL,XXL)

MiniGPT-4

https://arxiv.org/pdf/2304.10592.pdf

主要强调高效,省钱

基于的LLM为Vicuna,vit和Q-former来自BLIP-2,能训的只有新加的一个线形层,4张A100训10小时

image

训练分两阶段:

  • 第一阶段预训练:pretraining

    • 使用Conceptual Caption、SBU和 LAION等几个数据集进行第一阶段的训练,batch size=256训练了2万步,大概覆盖了500万个image-text pairs,使用4张A100-80GB的GPU训练了10个小时
    • 经过第一阶段的pretrain,作者发现了一些模型很难产生连贯的语言输出的例子,而且会输出一些重复的单词或句子、支离破碎的句子或无关的内容;
  • 第二阶段微调:finetuning

    • finetune的prompts模板: ###$Human: < Img></ Img> \(###\)Assistant:$
    • 使用3500条高质量的数据集去finetune模型,使得模型的输出有更好的连贯性,更加符合对话场景;在单张A100-80GB的GPU上训练了7分钟

LLaVA

https://arxiv.org/pdf/2304.08485.pdf

CLIP+一层FFN 与 LLaMA 拼接
首次尝试将 instruction-tuning 扩展到多模态空间

image

LLaMA-Adapter: Efficient Fine-tuning of Language Models with Zero-init Attention

https://arxiv.org/pdf/2303.16199.pdf

LLaMA-Adapter是高效微调llama的一种方式,给transformer的后L层 layer 前面加可学习的 adapter,并在初始化的时候将对adapter的attention初始化为零,这样在早期训练不会收到adapter的影响。加入可学习的门控因子。通过零向量初始化,门控可以首先保留 LLaMA 中的原始知识,并在训练过程中逐步引入指令信号

image

拓展到图文任务,把图文信息用encoder(CLIP)拼到adapter

image

LLaMA-Adapter V2: Parameter-Efficient Visual Instruction Model

https://arxiv.org/pdf/2304.15010.pdf

  • 加入了更多可学习参数:线性层的偏差调整
    image

  • 使用不相交的参数来联合训练模型

    • 图文对数据多,文本指令数据少。如果直接混合,学习,会严重损害 LLaMA-Adapter 的指令跟随能力
    • 将可学习的参数分成不相交的两组,各自学习一个任务,两组学习同时进行。
    • 好处:不需要多模态的指令数据,只需要文本指令数据+图文对数据
  • 视觉知识的早期融合

    • 为了避免视觉和语言微调之间的干扰,将vision token拼在较早的层,将adapter拼在较晚的层(与llama-adapter一致)
    • (llama-adapter v1 是将adapter拼在较晚的层,在拓展到多模态场景时,将vision token也一同拼在较晚的层)

2. 直接利用图像和文本信息训练得到的多模态大模型

Language Is Not All You Need: Aligning Perception with Language Models(KOSMOS-1)

https://arxiv.org/pdf/2302.14045.pdf

KOSMOS-1 1.6B 用微软的Magneto1.3B初始化LLM,视觉encoder是CLIP的ViT-L(fix最后一层以外的其他层),也使用了Flamingo的Perceiver Resampler来降低图片embedding的长度
训练数据分三类:Text Corpora,Image-Caption Pairs,Interleaved Image-Text Data(图文穿插)

image-20230822171139999

用special token标出文本中的图片特征

image

3. 其他思路

IMAGEBIND: One Embedding Space To Bind Them All

https://arxiv.org/pdf/2305.05665.pdf

将多种模态的信息编码到统一的一个表示空间,每个模态一个encoder,让image与每个模态都进行对比学习,6种模态靠image连接起来

posted @ 2023-08-22 19:21  shiiiilong  阅读(335)  评论(0编辑  收藏  举报