为什么多模态大模型中使用Q-Former的工作变少了?附Q-Former结构简介

面试中遇到的问题,自己在实践中注意到了却没有深究原因,没有回答好,特此记录和探讨这个问题。

多模态大模型中需要一个输入投影模块,将视觉特征投射到LLM能理解的语言特征维度,这里就可以选择各种不同的模块。LLaVA最初用了简单的线性投射,然而作者提到这么做是为了做实验更快一点,使用复杂的模块可能会有更好的效果。

后来就有用MLP的,代表工作有LLaVA后续系列、Intern-VL。
还有用Q-Former的,这个是BLIP2提出的,代表工作还有Qwen-VL。

用Q-Former的越来越少,肯定是它不如MLP好用,实验得来的,笔者这么答,但显然面试官不满意。认识来自实践,实践也要反过来作用于认识嘛。

目前网上的讨论有以下原因:

观点一:Q-Former导致视觉token的有损压缩。

Q-Former使用query token来压缩视觉信息,不能保证是无损的,压缩越多导致的幻觉越多。以BLIP2为例,Q-Former会把任意长度的 visual token 序列转译成 32 个token。
Q-Former只是在计算资源和数据有限的情况下的低效压缩器。
而且文章:DeCo: Decoupling Token Compression from Semantic Abstraction in Multimodal Large Language Models。中论证了,简单的average pooling表现就比Q-former更好、训练收敛也更快。

观点二:相比于MLP参数量更大,收敛更慢,也没有明显性能优势。

来自知乎用户Weiyun​。

首先是针对以上观点,Qwen-VL在类似的结构上将448分辨率的图像转译成 256 个token,同样算有损压缩。而InternVL-1.2 通过MLP+PixelShuffle的方案得到的 visual token 数量也是 256 个token。而两个模型的性能都不错,也差距不大。所以所谓有损压缩不一定会导致性能下降。
那么为什么都转向选择MLP?
作者认为“MLP和Q-Former的竞争其实就是LLaVA系列和BLIP系列的竞争,大家选择了MLP其实主要是选择了 follow LLaVA的工作”。
选择LLaVA的原因如下:

  1. LLaVA代码依托HuggingFace构建,HuggingFace提供了很多开源LLM,用起来更方便,而BLIP是自己的codebase。
  2. LLaVA和BLIP2其实可以看成同期工作,但LLaVA的后续工作1.5仍然能架构不变取得SOTA,BLIP2的后续工InstructBLIP改变了架构后,无法推广至多轮对话。
  3. Q-Former参数量更大,收敛更慢,小数据量不如MLP,大数据量(如Qwen-VL)对比MLP也没有优势。

下面是关于 Q-former结构的介绍,不了解的可以先看一下:
在这里插入图片描述
可以看到,其核心就是预设一组可学习的query tokens,通过cross attn,把image encoder输出的image tokens融合进来。query tokens的数量是一个超参,一般设置得比image tokens少。
背后的思想其实就是在做image token的语义提取。提取到的token是稀疏的,只包含有限的视觉concepts,还会丢失图片的空间信息。
而LLaVA本身证明了,经过多模态训练的LLM具备image token的理解能力,完全不需要一个Q-Former去做语义预提取。
而Avg Pooling训练很快,还能保留图像空间信息。

当然,Q-Former在视频理解中还是很重要的,视频中的视觉tokens太多了。

参考:
https://www.zhihu.com/question/626796690/answer/3524920516
DeCo: Decoupling Token Compression from Semantic Abstraction in Multimodal Large Language Models

  • 10
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值