摘要
多模态大语言模型 (MLLMs) 通过整合视觉感知接口,在扩展大语言模型 (LLMs) 的能力方面取得了显著进展。 尽管出现了令人兴奋的应用和各种指令调优数据,但现有方法通常依赖于CLIP或其变体作为视觉分支,并且仅仅提取深层特征。 然而,这些方法缺乏对MLLMs中视觉编码器的全面分析。 在本文中,我们对MLLMs中不同视觉编码器的有效性进行了广泛的研究。 我们的研究结果表明,CLIP的浅层特征对于细粒度任务(例如接地和区域理解)具有特别的优势。 令人惊讶的是,未经文本图像对齐预训练的纯视觉模型DINO,作为MLLMs中的视觉分支表现出了令人鼓舞的性能。 仅仅通过为其配备一个用于对齐的多层感知器 (MLP) 层,DINO 在细粒度相关感知任务上超越了 CLIP。 基于这些观察结果,我们提出了一种简单而有效的特征融合策略,命名为COMM,它将CLIP 和 DINO 与Multi-level 特征Merging 集成,以增强大型多模态语言模型 (MLLMs) 的视觉能力。 我们通过在广泛的基准测试中进行综合实验来评估COMM,这些基准测试包括图像字幕、视觉问答、视觉定位和物体幻觉。 实验结果证明了COMM与现有方法相比具有优越的性能,展示了其在MLLMs中增强的视觉能力。
1引言
大型语言模型 (LLMs) [31, 32, 42, 43, 39, 10]在语言理解和生成领域取得了显著进展,最近取得了令人瞩目的进步。 通过指令调整 [45,44] ,现有的LLMS证明了它们作为能够处理各种任务的通用模型的多功能性。 此功能释放了它们的零样本学习能力,使它们能够通过指令进行无缝的任务切换。 基于 LLMs 的良好性能,研究人员现在致力于通过将视觉信号作为输入来增强其能力。 此扩展允许生成与视觉内容密切相关的文本输出,为视觉语言理解领域开辟了令人兴奋的可能性。
为此,Flamingo [1] 和 BLIP2 [19] 将强大的 LLMs 与冻结的视觉编码器对齐,以理解视觉输入并执行各种视觉语言任务。 一系列后续工作,LLaVA [23]、InstructBLIP [11]、MiniGPT-4 [53] 和 mPLUG-OWL [46] 通过构建多模态指令遵循数据集进行训练,进一步提高了遵循人类指令的能力。 然而,这些方法建立在图像级对齐的基础上,图像级对齐存在细粒度理解(例如区域描述[25]和推理[49])有限以及严重的物体幻觉问题[21]。 为此,GPT4ROI [51] 提出对感兴趣区域进行指令调优,并释放区域级多模态能力。 Kosmos-2 [34] 和 Shikra [8] 进一步将定位能力集成到 LLMs 中,并解锁对话中的指称能力,即,使用户能够指向对象或区域作为输入,模型以边界框的空间坐标作为响应。 这种定位能力可以完成许多视觉语言任务,这是 MLLMs 的巨大进步。
尽管存在各种令人兴奋的方法和应用,但大多数现有的多模态大型语言模型都采用CLIP [36]或其变体[38]作为视觉分支,其中来自深层(例如倒数第二层)的特征通常用作语言解码器的输入。 然而,它仍然缺乏以下方面的分析: 使用原始CLIP特征作为视觉编码器是否是多模态大型语言模型 (MLLMs) 的最佳方法? 虽然CLIP的视觉编码器通过图像-文本对比学习明显与词嵌入空间对齐,但由于图像标题的全局监督,它未能学习更详细的像素级信息,如颜色和位置,这可能会阻碍MLLMs中细粒度的感知能力。 此外,现有的MLLMs的视觉和语言编码器相当不平衡(例如,ViT-Large-300M与Vicuna-7B/13B)。 由于语言模型已经成功地通过逐步增强语言能力来扩展模型规模,因此MLLMs的“木桶效应”的短板在于视觉模型,视觉模型未能展现出涌现能力,并且受到领域差异和有限零样本能力的困扰。 因此,增强视觉能力对于提升MLLMs至关重要。
本文对MLLMs的不同视觉编码器进行了广泛的研究。 我们考虑了四种典型的视觉基础模型,即,图像-文本对比学习CLIP、仅图像对比学习DINOv2 [33]、掩码图像建模MAE [14]和监督学习DeiT [40]。 我们在常用的视觉语言任务上评估了性能,包括视觉定位、物体幻觉、视觉问答、图像字幕和MME基准测试。 我们的分析表明,不同层次的特征对局部和全局模式表现出不同的偏差。 包含低级详细信息的浅层特征证明有利于细粒度感知任务,例如定位能力,而深层特征在全局理解方面更胜一筹。 为了增强表示,我们提出了一种多级特征融合策略,该策略结合了低级和高级特征。 令人惊讶的是,当配备用于对齐的MLP层时,仅视觉模型DINOv2作为MLLMs的视觉分支显示出前景。 我们将其归因于DINOv2捕获的细粒度定位信息。 相反,MAE和DeiT作为MLLMs的视觉分支表现较差。 MAE学习到的语义信息有限,而DeiT强大的监督训练使其与文本空间的对齐具有挑战性。 基于上述观察,我们提出了一种融合策略,该策略将CLIP和DINO与Multi-level features Merging(多层特征融合)相集成,称为COMM,用于增强MLLM的视觉分支。 实验结果表明,该模型相较于现有方法具有明显的优势,并突出了COMM带来的增强的视觉能力。 简而言之,本文的贡献总结如下:
-
我们首次广泛研究了不同视觉编码器对MLLM的有效性。 基于浅层特征包含有助于细粒度任务的低级细节信息的分析,我们提出了一种多层特征融合策略,以结合低级和高级特征来改进表示。
-
我们的分析表明,仅使用MLP层进行对齐的视觉专用DINOv2在MLLM中取得了令人满意的结果。 考虑到DINOv2中的细粒度像素信息和CLIP中的全局语义信息,我们提出COMM来融合这两个模型的视觉嵌入,以增强视觉能力,从而提升MLLM。
-
在包括视觉定位、指称表达式生成、物体幻觉、视觉问答和图像字幕在内的广泛任务上的大量实验表明,COMM优于现有工作。
2相关工作
多模态大型语言模型。 由于其卓越的理解和生成能力,LLM [12, 5]已在学术界和工业界获得了广泛关注。 LLM的成功促使研究人员探索将视觉融入这些模型,从而导致了强大的多模态LLM(MLLM)的开发。 Flamingo [1]采用交叉注意力模块来提取视觉上下文,这些上下文与文本符元连接作为LLM的输入。 LLaVA [24]和FROMAGe [16]利用CLIP的视觉编码器提取视觉特征,这些特征使用单个线性层与文本特征对齐,然后输入到LLM。 BLIP-2 [20]、mPLUG-OWL [46]、MiniGPT-4 [53]和InstructBLIP [11]等模型采用Q-former提取与文本对齐的视觉特征用于LLM。 最近,一些有趣的工作将大型语言模型 (LLM) 扩展到图像检索[16]、视频理解[50]、音频[37]、生物医学分析[18]和控制系统[13]。
近期研究显示,人们越来越关注将多模态大型语言模型 (MLLM) 扩展到区域级图像文本对齐,以提高其细粒度理解能力。 Kosmos-2 [34] 通过构建大规模的基于区域的图像文本对数据集来解决这个问题,从而将 grounding 能力集成到大型语言模型中。 GPT4RoI [51] 将边界框重新定义为空间指令格式,并基于感兴趣区域提取视觉特征,从而促进区域级多模态理解。 Shikra [8] 提出了一个统一模型,该模型处理空间坐标,并在对话环境中具备指称能力。 Ferret [47] 和 ViP-LLaVA [7] 进一步扩展了指称的自由形状范围,包括点、框、草图和涂鸦。 此外,Qwen [3] 展示了一组在各种任务中表现出色的多模态大型语言模型。 然而,以前的工作主要集中于仅从 CLIP 模型的最后几层提取视觉特征,导致对全局图像属性的强调。 在这项研究中,我们关注到从较浅层提取的特征更侧重于局部属性,我们认为这在理解物体位置和图像细节方面可能更有效。 此外,虽然 CLIP 主要学习全局对齐的特征,但像 DINOv2 这样的高级视觉模型擅长捕捉更细粒度的视觉特征。 我们认为,利用这些细粒度的视觉特征可以有效地增强多模态大型语言模型的能力,正如我们的分析所示。 为进一步推进这一研究方向,我们引入了一种新颖的融合模块,该模块扩展和增强了视觉分支,从而旨在显著提高多模态大型语言模型的性能。
大型视觉基础模型。 最近,利用大规模图像数据训练视觉基础模型的进展集中在对比学习、掩码图像建模和监督学习上。 一方面,对比学习可以在仅图像或图像文本的方式下进行。 DINOv2 [33] 在大型精选图像数据上预训练图像编码器,这在跨图像领域的物体部件和场景几何理解方面表现出优越性。 诸如 CLIP[36] 和 EVA-CLIP[38] 等图像文本对比学习方法利用自然语言作为弱监督来指导视觉特征的学习。 另一方面,BEiT[4] 基于预训练的图像分词器预测离散符元,而 iBOT[52] 则提出了一种在线图像分词器。 MAE[14] 提出了一种用于重建图像像素的掩码自动编码器。 此外,DeiT III[41] 提出了一种训练方法,以实现有前景的性能。 最近的多模态大语言模型 (MLLMs) 使用 CLIP/EVA-CLIP 的视觉编码器,而没有考虑特定视觉模型的特性。 在本文中,我们首次重新审视了现有视觉模型在多模态大语言模型中的有效性,并提出了一种简单而有效的融合策略来增强视觉能力。
3多模态大语言模型中视觉分支的分析
先前的多模态大语言模型[23, 22, 53, 11, 46, 34, 8, 3, 47] 通常使用 CLIP 的视觉编码器作为其视觉分支。 通常,这些模型从最后几层(例如倒数第二层)提取特征,然后将其馈送到对齐网络。 随后,将对齐的特征与文本符元连接起来,作为大语言模型的输入。 虽然 CLIP 的图像文本预训练与语言模型很好地对齐,但它主要学习图像级特征,而由于指导性标题中细粒度信息有限的限制,忽略了更丰富的像素级特征。 此外,深层特征主要关注全局图像属性,并且不足够探索局部对象部件的复杂细节。 如图1所示,从 CLIP 浅层提取的视觉特征和从仅视觉模型 DINOv2 获得的深层视觉特征包含关于局部对象(例如形状或纹理)的更详细的信息。 利用这些详细的特征可以增强多模态大语言模型的细粒度感知能力。
评估设置。 为进行进一步分析,我们使用不同类型的视觉模型进行了一系列定量实验,即图像文本对比学习 CLIP、仅图像对比学习 DINOv2、掩码图像建模 MAE 和监督学习 DeiT。 特别地,利用线性投影层对从视觉模型(基于ViT-Large)的不同层提取的视觉特征进行对齐,然后与文本符元连接起来,作为大语言模型(这里我们使用Vicuna-7B [10])的输入。 总体架构和训练过程遵循Shikra [8],但迭代次数较少(9400次迭代,在4个A800上批量大小为16),以节省计算成本。 然后,我们测量了训练后的多模态大语言模型在指代表达理解 (REC) [8]、指代表达生成 (REG) [34] 和对象幻觉基准 (POPE) [21] 上的能力。 这些任务的详细描述可以参考第 5 节。
图1: 通过计算从CLIP和DINOv2的浅层和深层提取的不同视觉符元的余弦相似度来进行特征对应可视化。
CLIP作为多模态大语言模型的视觉分支。 如图 2 所示,我们观察到不同层的特征表现出对定位和理解能力的不同偏好。 例如,浅层特征在REC方面表现出相对较高的准确性,并在第12层达到最佳值。 相反,深层特征在POPE方面取得了更高的准确性,表明其具有更强的理解能力。 值得注意的是,相对较深的特征(第16层)显示出最佳的REG CIDEr得分,展示了有前景的区域理解能力。 因此,我们认为,与以往工作中仅仅依赖深层特征不同,整合浅层和深层特征对于提高多模态大语言模型的整体性能至关重要。
我们进一步探索了低级和高级特征的各种融合模式。 将ViT每个Transformer层的输出特征表示为深度为 N 为 𝐳=[z1,…,zi,…,zN] ,我们讨论了几种用于组合浅层和深层特征的多级特征融合 (MFM) 策略,即:
∙ Mean(half):对主干网络后半部分的输出补丁符元特征进行平均,作为 z=(zN/2+⋯+zN)/(N/2).
∙ Mean(all):对所有层输出的特征进行平均,作为 z=(z1+⋯+zN)/N.
∙ Layerscale(all):学习一个比例参数作为权重,对所有层输出的特征进行求和,作为 z=w1z1+⋯+wNzN ,其中 wi 指的是分配给 i层的特征的权重,所有这些权重都会动态更新并加起来等于1。
∙ LLN-Layerscale(all):使用线性层归一化模块来对齐不同层特征之间的特征空间,然后由Layerscale进行求和,作为 z=w1LLN(z1)+⋯+wNLLN(zN).
∙ Conv-Layerscale(all):使用卷积和BN模块来对齐不同层特征之间的特征空间,然后由Layerscale进行求和,作为 z=w1Conv(z1)+⋯+wNConv(zN).
图。3(a)和(b)表明,简单地平均剪辑的所有浅和深特征 de facto 达到令人满意的精度, lln-layerscale 策略策略进一步提高了性能。 使用LLN-Layerscale作为MFM模块,CLIP的性能在常用的视觉语言任务上可以得到显著提高,如表1所示。
(a)
(b)
©
图2: 使用从各种视觉模型(CLIP、DINOv2和MAE)中提取的不同层特征的平均REC、POPE精度和REG CIDEr,作为MLLM的输入。 Shikra使用CLIP的第23层特征,我们用较少的迭代次数复现了其结果(记为Shikra*).
(a)
(b)
©
(d)
图3: 使用多特征融合(MFM)策略融合不同层特征的平均REC和POPE精度,作为MLLM的输入,用于CLIP和DINOv2的视觉主干网络。
DINOv2作为MLLM的视觉分支。 为了利用DINOv2中丰富的细粒度视觉信息(这些信息本身与文本并不完全匹配),我们采用非线性多层感知器(MLP)模块来对齐图像特征和词嵌入空间。 图 2 表明,DINOv2的深层特征表现出优越的定位能力,更高的REC精度证明了这一点,并且显示出令人满意的理解能力,良好的POPE和REG结果也表明了这一点。 此外,我们探索了多层特征融合的有效性以提高性能。 与CLIP相比,融合DINOv2的浅层特征会导致性能显著下降。 具体来说,在图3©和(d)中,很明显Mean(all)在REC和POPE精度方面都明显低于Mean(19-24),这表明浅层表示缺乏足够的语义信息。 在LLN-Layerscale方法的基础上,加入MLP模块以建立视觉空间和文本空间之间更强大的联系,这证明了性能的明显提升。 表格1展示了在各种视觉语言任务中,采用LLN-Layerscale-MLP作为多层特征融合(MFM)模块所取得的显著性能提升。 关于MLP模块的更详细的消融研究在第5.5节中。
表1: 使用CLIP、具有多层特征融合(MFM)的DINOv2和COMM(在VL任务上结合两种模型的视觉嵌入)的视觉模型比较。 CLIP基线使用第23层特征,这遵循Shikra,但训练迭代次数更少。 DINOv2基线是没有MLP模块的。 MME CS和PS分别表示认知和感知分数。
Visual Model | Avg REC | Avg POPE | COCO | Flickr30k | MME CS | MME PS | VQAv2 | OK-VQA |
---|---|---|---|---|---|---|---|---|
CLIP | 47.3 | 82.3 | 125.0 | 80.7 | 209.6 | 1107.8 | 68.8 | 44.2 |
DINOv2 | 54.8 | 78.3 | 118.0 | 68.9 | 261.8 | 930.5 | 63.1 | 41.9 |
CLIP w/ MFM | 70.0 | 83.4 | 125.8 | 81.0 | 296.6 | 1164.4 | 69.5 | 44.7 |
DINOv2 w/ MFM | 72.8 | 83.3 | 123.4 | 76.3 | 252.9 | 1086.8 | 68.0 | 42.1 |
COMM | 72.8 | 83.6 | 127.3 | 81.9 | 360.4 | 1234.9 | 70.1 | 45.0 |
MAE和DeiT作为MLLM的视觉分支。 图2显示,MAE特征达到了可以接受的REC精度,但在POPE和REG评估中性能下降很大。 这是因为MAE特征缺乏足够的语义信息来进行全局或区域理解。 因此,MAE 不适合作为 MLLM 的视觉分支。 DeiT 的性能甚至比 MAE 更差(详情见第 5.5 节)。 我们推测,这是因为监督式训练过于强烈,学习到的专用视觉空间难以与词嵌入空间对齐。
图 4: 我们提出的 COMM 的概述。 图像输入到 CLIP 和 DINOv2 的视觉编码器,并通过多层特征融合结合浅层和深层的特征。 DINOv2 的特征与一个多层感知器(MLP)对齐,并与 CLIP 的特征连接,然后输入到一个线性层。 然后将融合后的特征与文本符元连接起来,作为 LLM 的输入。
4 COMM: 结合 CLIP 和 DINO 进行多层特征融合
架构概述。 在本节中,我们介绍了所提出的 COMM,它集成了 CLIP 和 DINO,并采用了多层特征融合来增强 MLLM 的视觉能力。 整体框架如图 4 所示,COMM 被集成到一个基于最新先进的语言和视觉-语言基础模型构建的视觉-语言指令遵循模型中。 遵循输入指令,我们的模型将视觉和语言作为输入,以生成遵循输入指令的文本响应。 具体来说,我们采用 CLIP 和 DINOv2(基于 ViT-Large)的视觉编码器,并结合我们提出的融合策略作为视觉分支,以及 Vicuna [10](7B/13B)作为语言解码器。 视觉编码器的下采样率为 14,这意味着分辨率为 H×W 的图像将由 H14×W14 符元。 融合后的符元特征使用线性层进行投影,然后与指令符元连接,作为语言解码器的输入。该解码器是一个通用接口,用于将各种视觉语言任务统一为文本生成任务。
特别地,将CLIP和DINOv2(使用ViT Large)的视觉编码器分别表示为 f1 和 f2 。 给定输入图像 x ,我们提取CLIP所有层输出的块符元特征为 f1(x)=[v11,…,v1i,…,v124] ,其中 v1i∈𝐑N×D, N 是块符元的数量, D 是嵌入维度。 DINOv2深层输出的特征为 f2(x)=[v219,…,v2i,…,v224]. 然后我们将这两个模型输出的特征连接起来,得到 𝐯=[v11,…,v124,v219,…,v224]. 使用线性-层归一化模块来对齐不同层特征的特征空间,并使用层缩放来合并多个层特征,得到
其中 α 和 β 是可学习的缩放参数。 然后,我们使用一个多层感知器 (MLP) 层来投影 DINOv2 的特征,并将输出特征与 CLIP 的输出特征连接起来,作为 𝐯¯=[v¯1,MLP(v¯2)]. 然后,使用一个线性层将视觉特征的维度与文本特征的维度匹配,作为 𝐯^=Linear(𝐯¯). 最后,融合后的视觉特征 𝐯^ 与文本符元连接起来,作为大语言模型 (LLM) 的输入。
5实验
在本节中,我们对四种视觉语言任务进行了广泛的评估,以全面评估我们模型的视觉理解能力,即:指称表达理解、指称表达生成、物体幻觉基准和视觉问答与图像字幕生成。
训练细节。 与之前的多模态大语言模型 (MLLM) 方法类似,COMM 分两个阶段进行训练。 在第一个预训练阶段,我们使用重新组织的视觉语言数据集进行模型训练,如 [8] 所示,包括公共 VQA、图像字幕数据集和几个包含位置标注的数据集,例如 RefCOCO、视觉基因组 [17] 和 Visual-7W [28]。 第一个预训练阶段进行了 100K 步。 在第二个指令调优阶段,我们对 LLaVA-Instruct-150K [23] 和 Shikra-RD [8] 的采样率设置为 50%。 我们使用 336 × 336 的分辨率,而不是现有 MLLM 使用的 224 × 224 分辨率,以减少图像下采样造成的信信息损失,并提高细粒度感知能力。 在这两个阶段中,我们冻结视觉编码器,并微调大语言模型 (LLM)、对齐层和多级特征融合模块中的所有参数。 我们采用 AdamW [27] 作为优化器,并采用余弦退火调度器 [26] 作为学习率调度器,初始学习率为 2e-5,全局批量大小为 64。 所有训练都在 8 个 NVIDIA A800 GPU 上运行。 第一阶段训练大约需要 100 小时,第二阶段需要 20 小时。
表2: 标准指示表达理解 (REC) 任务的结果。 通用视觉语言模型可以执行各种视觉语言任务。 专业模型专为定位任务而设计,或为经过微调的通用预训练模型。 Shikra、Qwen、Ferret 和 Griffon 的结果来自它们的论文。
Model type | Model | RefCOCO | RefCOCO+ | RefCOCOg | |||||
---|---|---|---|---|---|---|---|---|---|
val | test-A | test-B | val | test-A | test-B | val-u | test-u | ||
Generalist VL SOTAs(w/o finetuning) | OFA-L* | 79.96 | 83.67 | 76.39 | 68.29 | 76.00 | 61.75 | 67.57 | 67.58 |
VisionLLM-H | - | 86.70 | - | - | - | - | - | - | |
Shikra-7B | 87.01 | 90.61 | 80.24 | 81.60 | 87.36 | 72.12 | 82.27 | 82.19 | |
Shikra-13B | 87.83 | 91.11 | 81.81 | 82.89 | 87.79 | 74.41 | 82.64 | 83.16 | |
Ferret-7B | 87.49 | 91.35 | 82.45 | 80.78 | 87.38 | 73.14 | 83.93 | 84.76 | |
Ferret-13B | 89.48 | 92.41 | 84.36 | 82.81 | 88.14 | 75.17 | 85.83 | 86.34 | |
Griffon-13B | 88.00 | 92.10 | 81.90 | 81.50 | 88.20 | 73.30 | 82.90 | 84.30 | |
Qwen-VL-7B | 89.36 | 92.26 | 85.34 | 83.12 | 88.25 | 77.21 | 85.58 | 85.48 | |
Qwen-VL-7B-Chat | 88.55 | 92.27 | 84.51 | 82.82 | 88.59 | 76.79 | 85.96 | 86.32 | |
COMM-7B (Ours) | 91.73 | 94.06 | 88.85 | 87.21 | 91.74 | 81.39 | 87.32 | 88.33 | |
Specialist SOTAs(Specialist/Finetuned) | G-DINO-L | 90.56 | 93.19 | 88.24 | 82.75 | 88.95 | 75.92 | 86.13 | 87.02 |
UNINEXT-H | 92.64 | 94.33 | 91.46 | 85.24 | 89.63 | 79.79 | 88.73 | 89.37 | |
ONE-PEACE | 92.58 | 94.18 | 89.26 | 88.77 | 92.21 | 83.23 | 89.22 | 89.27 |
表3: CIDEr 分数在标准指示表达生成 (REG) 任务上的结果。 我们使用其官方发布的检查点复现了 Shikra-7B 的结果。 SLR 是一个经过微调的收听者-说话者模型,并添加了一个基于奖励的模块 (SLR)。
Model | RefCOCO | RefCOCO+ | RefCOCOg | |||||
---|---|---|---|---|---|---|---|---|
val | test-A | test-B | val | test-A | test-B | val-u | test-u | |
SLR [48] | - | 69.7 | 132.3 | - | 49.4 | 70.9 | 59.2 | - |
SLR+Rerank [48] | - | 77.5 | 132.0 | - | 52.0 | 73.5 | 66.2 | - |
Shikra | 75.61 | 44.26 | 104.83 | 56.42 | 40.98 | 68.25 | 62.71 | 65.58 |
Kosmos-2 | - | - | - | - | - | - | 62.3 | - |
COMM (Ours) | 93.35 | 54.95 | 131.13 | 70.00 | 52.27 | 79.05 | 79.22 | 77.96 |
5.1指示表达理解
为了评估我们模型的细粒度理解和定位能力,我们在基准测试(如 RefCOCO [15]、RefCOCO+ [29] 和 RefCOCOg [29])上研究了指示表达理解任务,其中要求模型定位用表达式描述的对象。 如表 2 所示,与通用视觉语言模型和之前的 SOTA MLLM 相比,COMM 在所有基准测试上都取得了显著的性能提升,即,COMM-7B 的平均准确率分别比 Shikra-13B 和 Qwen-VL-7B-Chat 高 4.87% 和 3.10%。 通过我们提出的融合模型更强大的视觉能力,我们可以以更有效的方式明显超越最新的 SOTA MLLM,例如,使用比 Shikra 更小的 LLM(7B 对比 13B)和比 Qwen 更少的训练数据(360万对比 14亿)。 此外,我们的通用模型甚至获得了与专业 SOTA 方法相当的结果,这表明我们的 MLLM 具有优越的接地能力。
5.2指示表达生成
此外,我们评估了通过输入边界框来理解图像区域或对象的指代的能力。 与使用详细文本描述来指代图像区域或物体不同,直接通过其边界框来指代图像区域更加有效,并且可以减少歧义。 实验在RefCOCO、RefCOCO+和RefCOCOg数据集上进行,任务是生成边界框内特定区域的文本描述。 表 3 显示,我们的模型在RefCOCOg数据集上比Shikra和Kosmos-2分别高出16.51 CIDEr和16.92 CIDEr,这显著地证明了我们的模型在细粒度理解方面的有效性。 此外,COMM甚至在RefCOCO+和RefCOCOg数据集上也优于微调后的SLR。
表 4: 使用POPE评估流程[21]的物体幻觉基准测试。 Shikra-7B的结果取自其论文。 除Shikra-7B外,其他结果均来自[21]。
Datasets | COMM | Shikra | InstructBLIP | MiniGPT-4 | LLaVA | MM-GPT | mPLUG-Owl |
---|---|---|---|---|---|---|---|
Random | 87.29 | 86.90 | 88.57 | 79.67 | 50.37 | 50.10 | 53.97 |
Popular | 86.50 | 83.97 | 82.77 | 69.73 | 49.87 | 50.00 | 50.90 |
Adversarial | 84.50 | 83.10 | 72.10 | 65.17 | 49.70 | 50.00 | 50.67 |
表 5: 视觉问答(VQA)和图像字幕结果。 对于VQA,我们根据标准化规则,在VQAv2和OK-VQA数据集上评估了最先进的通用模型和我们的COMM模型。 Shikra和LLaVA-1.5 [22]基于13B版本。 对于图像字幕,我们使用CIDEr分数在COCO和Flickr30k数据集上进行评估。 我们简称Flamingo为FM。
Datasets | COMM | LLaVA-1.5 | Qwen | Shikra | FM-80B | BLIP-2 | Unified-IO | VPGTrans | |
---|---|---|---|---|---|---|---|---|---|
VQA | VQAv2val | 79.05 | - | - | 75.33 | - | 65.2 | - | 65.2 |
VQAv2dev | 81.04 | 80.0 | 79.5 | 77.36 | 56.3 | 65.0 | 77.9 | - | |
VQAv2std | 81.17 | - | - | 77.51 | - | - | - | - | |
OK-VQA | 59.18 | - | 58.6 | 47.16 | 50.6 | 45.9 | 54.0 | 45.0 | |
Caption | Flickr30k | 88.2 | - | 85.8 | 73.9 | 67.2 | - | - | - |
COCO | 132.7 | - | - | 117.5 | 84.3 | - | 122.3 | - |
5.3物体幻觉基准测试
我们在POPE [21]最近引入的幻觉评估数据集上,将我们的模型与基线模型进行了比较,该数据集从COCO [6]中随机选择了500张图像。 表4显示,COMM的平均准确率分别比Shikra和InstrutBLIP高出1.44%和4.95%,超越了最近流行的几个大型语言模型。 通过增强细粒度的视觉能力,COMM可以有效缓解对象幻觉问题。
5.4视觉问答和图像字幕
我们在VQA和图像字幕的常规视觉语言任务上评估了COMM。 具体来说,图像字幕要求模型为给定的图像生成描述,而视觉问答要求模型为给定的图像-问题对生成答案。 对于图像字幕,我们选择COCO[9]和Flickr30K[35]作为基准,并报告CIDEr得分。 对于VQA任务,我们在VQAv2[2]和OK-VQA[30]上进行了实验。 如表5所示,COMM在图像字幕任务上取得了最先进的性能,即在Flickr30K上取得了88.2的CIDEr得分,在COCO上取得了132.7的CIDEr得分,甚至超过了参数更多(例如,具有130亿参数的Shikra-13B)或训练数据更多(例如,具有14亿数据的Qwen)的先前最先进模型。 对于VQA任务,我们的模型也显示出与其他大型语言模型相比的显著优势。 在VQAv2 val、dev和std上,我们的模型分别达到了79.05、81.04和81.17的准确率,这比使用相同训练数据和过程的最近提出的Shikra模型高出很大一部分,证明了融合DINOv2和CLIP的视觉嵌入以增强视觉能力的有效性。 此外,我们的COMM模型在VQAv2 dev和OK-VQA上分别比Qwen提高了1.54和0.58的准确率,而VQA训练数据更少,即我们使用了0.6M,而Qwen使用了3.6M。 使用更多的VQA数据可能会进一步提高性能,我们将其留作未来的工作。
5.5消融研究
对DINOv2中MLP的消融研究。 我们对DINOv2中MLP模块的设计进行了消融研究,以对齐视觉和文本嵌入空间。 我们对MLP模块的数量和扩展比率进行了消融实验。 表6显示,将多层感知器(MLP)的数量增加到2可以明显提高性能,这证明了使用更强大的网络将仅视觉模型DINOv2与词嵌入空间对齐的有效性。 然而,将数量增加到超过2会导致性能下降。 对于扩展比例,增加到8可以提高性能,而增加到16则不会带来显著的性能提升。 此外,我们实验使用了一个线性层,这导致了严重的性能下降。 因此,非线性MLP对于将仅视觉DINOv2的特征与词嵌入空间对齐是必要的。
对MAE和DeiT的视觉模型的消融研究。 如表7所示,MAE和DeiT都存在明显的性能下降。 一方面,MAE的视觉特征缺乏足够的语义信息来进行全局或局部理解。 另一方面,DeiT的监督训练非常强,以至于它学习了专门的视觉空间,使其难以与词嵌入空间对齐。
表6: 关于MLP模块的数量和扩展比例的消融研究。 实验在随机(R)、对抗性(A)和流行(P)的指代表达式理解和对象幻觉基准上进行。
Visual Model | RefCOCO+ | RefCOCOg | RefCOCO | POPE | |||||
---|---|---|---|---|---|---|---|---|---|
test-A | test-B | val | test-u | val-u | test-A | test-B | val | A/P/R | |
DINOv2 w/ MLP Ratio 4 | 75.3 | 59.3 | 67.0 | 73.0 | 71.8 | 84.4 | 74.1 | 79.6 | 80.3/84.2/85.5 |
DINOv2 w/ 2MLP Ratio 4 | 77.5 | 60.3 | 69.2 | 74.6 | 74.7 | 86.5 | 75.3 | 81.4 | 82.4/84.5/86.2 |
DINOv2 w/ 4MLP Ratio 4 | 53.7 | 34.4 | 45.3 | 49.0 | 48.8 | 65.4 | 48.0 | 57.9 | 79.2/82.9/84.6 |
DINOv2 w/ 8MLP Ratio 4 | 8.2 | 6.5 | 7.4 | 6.8 | 6.7 | 14.8 | 12.9 | 14.9 | 56.0/55.3/59.0 |
DINOv2 w/ MLP Ratio 8 | 77.4 | 59.9 | 69.7 | 73.7 | 73.3 | 85.7 | 74.1 | 80.9 | 81.5/85.8/86.7 |
DINOv2 w/ MLP Ratio 16 | 76.2 | 60.2 | 69.7 | 74.5 | 74.6 | 85.7 | 75.5 | 81.5 | 80.4/83.7/85.7 |
DINOv2 w/ Linear | 61.8 | 48.8 | 55.1 | 64.1 | 62.9 | 76.5 | 67.0 | 71.9 | 75.6/79.3/83.7 |
表7: 使用CLIP、具有我们多层次特征融合(MFM)的DINOv2、MAE和DeiT的视觉模型比较。 MAE-20表示使用MAE第20层输出的特征。 DeiT-20表示使用第20层的输出特征。
Visual Model | RefCOCO+ | RefCOCOg | RefCOCO | POPE | |||||
---|---|---|---|---|---|---|---|---|---|
test-A | test-B | val | test-u | val-u | test-A | test-B | val | A/P/R | |
CLIP w/ MFM | 73.7 | 53.8 | 64.3 | 69.1 | 70.3 | 83.8 | 68.4 | 76.4 | 80.7/84.2/85.8 |
DINOv2 w/ MFM | 75.3 | 59.3 | 67.0 | 73.0 | 71.8 | 84.4 | 74.1 | 79.6 | 80.3/84.2/85.5 |
MAE-20 | 64.7 | 49.4 | 56.8 | 63.7 | 62.8 | 77.9 | 68.6 | 73.6 | 66.8/71.1/76.7 |
MAE-22 | 65.9 | 50.0 | 58.5 | 64.2 | 63.2 | 79.3 | 69.8 | 74.9 | 68.0/71.2/77.5 |
DeiT-20 | 18.4 | 13.0 | 15.9 | 17.0 | 16.2 | 29.0 | 21.6 | 25.7 | 66.2/69.6/77.9 |
DeiT-22 | 25.3 | 15.4 | 19.4 | 22.6 | 21.8 | 36.9 | 25.3 | 32.0 | 67.9/71.6/78.7 |
5.6演示
如图7所示,我们的COMM模型展现出许多有前景的能力,包括视觉定位、细粒度区域理解和对物体幻觉的鲁棒性。 第一个例子展示了我们强大的细粒度感知能力,它能够识别搅拌机中隐含的草莓。 第二个例子展示了我们强大的视觉定位能力,成功地定位了糖的物体。 第三个例子展示了我们对物体幻觉的鲁棒性。 相比之下,Shikra在这些具有挑战性的案例中失败了,这显示了我们模型的优越能力。 本节中,我们提供了COMM模型的额外演示,以展示其众多有前景的能力,包括视觉定位、细粒度区域理解和对物体幻觉的鲁棒性。 例如,我们在图5中展示了指称表达理解,在图6中展示了物体幻觉。
图5: 使用我们的COMM-7B进行指称表达理解 (REC)。 该任务旨在根据指称表达式对图像中的目标对象进行定位。
图6: 使用我们的COMM-7B进行物体幻觉。 此任务旨在评估对物体幻觉的鲁棒性,即,针对所质疑的物体的存在性回答“是”或“否”。
图7: Shikra与其官方检查点和我们的COMM之间的定性比较。
6结论
本文对在多模态大语言模型 (MLLMs) 中使用不同视觉模型作为视觉分支的有效性进行了广泛的研究。 通过系统分析,我们强调了浅层特征的重要性,这些特征捕捉到低级细节,这对于接地和定位任务非常有益。 此外,我们认识到仅视觉模型 DINOv2 的潜力,它利用其固有的细粒度像素级信息,在与 MLP 层结合用于对齐目的时,可以增强 MLLMs 中的细粒度感知。 受我们分析的启发,我们引入了一种融合方法来结合从 CLIP 和 DINOv2 获得的视觉特征,从而进一步增强 MLLMs 的视觉能力和性能。 通过定性分析和大量的定量实验,我们证明了我们提出的方法的有效性,其性能超越了现有 MLLM 模型在各种基准数据集上的性能。 展望未来,我们鼓励未来的研究探索集成更强大的视觉模型以增强 MLLMs 中视觉分支的能力。 我们相信,这条研究途径是释放下一代 MLLMs 潜力的关键。
如何学习大模型 AI ?
由于新岗位的生产效率,要优于被取代岗位的生产效率,所以实际上整个社会的生产效率是提升的。
但是具体到个人,只能说是:
“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。
这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。
我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。
我意识到有很多经验和知识值得分享给大家,也可以通过我们的能力和经验解答大家在人工智能学习中的很多困惑,所以在工作繁忙的情况下还是坚持各种整理和分享。但苦于知识传播途径有限,很多互联网行业朋友无法获得正确的资料得到学习提升,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。
第一阶段(10天):初阶应用
该阶段让大家对大模型 AI有一个最前沿的认识,对大模型 AI 的理解超过 95% 的人,可以在相关讨论时发表高级、不跟风、又接地气的见解,别人只会和 AI 聊天,而你能调教 AI,并能用代码将大模型和业务衔接。
- 大模型 AI 能干什么?
- 大模型是怎样获得「智能」的?
- 用好 AI 的核心心法
- 大模型应用业务架构
- 大模型应用技术架构
- 代码示例:向 GPT-3.5 灌入新知识
- 提示工程的意义和核心思想
- Prompt 典型构成
- 指令调优方法论
- 思维链和思维树
- Prompt 攻击和防范
- …
第二阶段(30天):高阶应用
该阶段我们正式进入大模型 AI 进阶实战学习,学会构造私有知识库,扩展 AI 的能力。快速开发一个完整的基于 agent 对话机器人。掌握功能最强的大模型开发框架,抓住最新的技术进展,适合 Python 和 JavaScript 程序员。
- 为什么要做 RAG
- 搭建一个简单的 ChatPDF
- 检索的基础概念
- 什么是向量表示(Embeddings)
- 向量数据库与向量检索
- 基于向量检索的 RAG
- 搭建 RAG 系统的扩展知识
- 混合检索与 RAG-Fusion 简介
- 向量模型本地部署
- …
第三阶段(30天):模型训练
恭喜你,如果学到这里,你基本可以找到一份大模型 AI相关的工作,自己也能训练 GPT 了!通过微调,训练自己的垂直大模型,能独立训练开源多模态大模型,掌握更多技术方案。
到此为止,大概2个月的时间。你已经成为了一名“AI小子”。那么你还想往下探索吗?
- 为什么要做 RAG
- 什么是模型
- 什么是模型训练
- 求解器 & 损失函数简介
- 小实验2:手写一个简单的神经网络并训练它
- 什么是训练/预训练/微调/轻量化微调
- Transformer结构简介
- 轻量化微调
- 实验数据集的构建
- …
第四阶段(20天):商业闭环
对全球大模型从性能、吞吐量、成本等方面有一定的认知,可以在云端和本地等多种环境下部署大模型,找到适合自己的项目/创业方向,做一名被 AI 武装的产品经理。
- 硬件选型
- 带你了解全球大模型
- 使用国产大模型服务
- 搭建 OpenAI 代理
- 热身:基于阿里云 PAI 部署 Stable Diffusion
- 在本地计算机运行大模型
- 大模型的私有化部署
- 基于 vLLM 部署大模型
- 案例:如何优雅地在阿里云私有部署开源大模型
- 部署一套开源 LLM 项目
- 内容安全
- 互联网信息服务算法备案
- …
学习是一个过程,只要学习就会有挑战。天道酬勤,你越努力,就会成为越优秀的自己。
如果你能在15天内完成所有的任务,那你堪称天才。然而,如果你能完成 60-70% 的内容,你就已经开始具备成为一名大模型 AI 的正确特征了。