【VLA 中的 VLM】(一) SigLIP 与 PaliGemma及其后续改进

0. Preliminary

0.1 SigLIP: Sigmoid Loss for Language Image Pre-Training - 400M

主流MLLM使用两种编码器;其中一种是 SigLIP 另一种是 OpenCLIP;

SigLIP:可高效训练的视觉语言预训练模型

CLIP和SigLIP是两种文本图像配对算法。CLIP通过图文对进行多分类softmax计算,而SigLIP则采用二分类sigmoid策略。

在这里插入图片描述
CLIP 计算过程
在这里插入图片描述
在这里插入图片描述

SigLIP 计算过程

在这里插入图片描述
在这里插入图片描述
xi,yi是编码后的图像和文本embedding,t是温度系数,bias=-10;zij是标签(对角线全为1,非对角线位置为-1)

在这里插入图片描述
SigLIP 通过分布式计算和逐步交换数据的方式,使得每个设备只需处理部分数据,从而提高了计算效率和内存利用率。这种方法特别适合处理大规模数据集,因为它避免了单设备内存不足的问题,同时保持了计算的准确性。

  • 计算效率提升:SigLIP 使用成对的 sigmoid 损失函数,解耦了样本对之间的损失计算,与 CLIP 的批次范围归一化相比,实现了更高度的并行性并减少了内存开销。例如,在计算损失时,CLIP 需要维护一个全局的 NxN 归一化矩阵,而 SigLIP 无需维护此矩阵,每个正/负对都是独立计算的。
  • 小批量训练友好:SigLIP 在小批量(低于 32k)训练下更具优势,而 CLIP 需要较大的批大小,如 32K 的批量大小,这需要大量 GPU。

0.2 SigLIP 2: Multilingual Vision-Language Encoders with Improved Semantic Understanding, Localization, and Dense Features

SigLIP 2 相比于 SigLIP 的技术改进如下:
训练目标增强:

  • 结合多种训练技术:将原始 SigLIP 的图像-文本训练目标与多种先前独立开发的技术相结合,包括基于字幕的预训练、自监督损失(自蒸馏、掩码预测)和在线数据筛选。
    数据集改进:
  • 使用更大数据集:使用了 WebLI 数据集,包含 100 亿张图像和 120 亿个 alt-text,覆盖 109 种语言。
  • 数据去偏:在训练数据中采用了去偏技术。

模型架构优化:

  • 支持多种分辨率和纵横比:训练了支持多种分辨率并保留输入原始纵横比的变体(NaFlex),对文档理解和 OCR 等应用特别有用。
  • 引入解码器:配备了位置感知字幕(LocCa)解码器,可执行接地字幕和预测边界框坐标等任务,进一步增强了准确搜索和检索图像的能力。

性能优化:

  • 密集特征和定位任务改进:通过引入自监督损失(如自蒸馏和掩码预测)以及基于解码器的损失,显著提高了密集特征提取和定位任务的性能。
  • 优化小模型性能:通过蒸馏技术优化了较小模型(B/16 和 B/32 模型)的性能。

1. PaliGemma: A versatile 3B VLM for transfer

多模态PaliGemma 2(含1代):Google推出的基于SigLIP和Gemma 2的视觉语言模型(附SigLIP详解)

模型架构

PaliGemma 由以下三部分组成:

  1. 图像编码器:使用 SigLIP 的 “shape optimized” ViTSo400m 图像编码器,通过对比学习大规模预训练,性能出色且尺寸较小。
  2. 语言解码器:采用 Gemma-2B v1.0 预训练检查点,其在性能和尺寸之间取得了良好平衡,能够匹配甚至超越使用更大语言模型的 VLM。
  3. 线性层:将 SigLIP 的输出标记投影到与 Gemma-2B 词汇标记相同的维度,以便将它们连接起来。

下图:输入图像通过图像Encoder(SigLIP)转换为一系列标记,文本通过 Gemma 的 SentencePiece 分词器转换为标记并嵌入,然后将图像标记和文本标记组合成输入序列(full attention),语言解码器自回归地生成预测文本(casual attention)。

一般而言,输入为一张或多张图像,以及任务的文本描述(提示或问题,通常称之为 prefix),PaliGemma 然后以文本字符串的形式自回归生成预测(答案,通常称之为 suffix

在这里插入图片描述

训练过程

在这里插入图片描述

2. PaliGemma 2: A Family of Versatile VLMs for Transfer

VLMs之Gemma 2:PaliGemma 2的简介、安装和使用方法、案例应用之详细攻略

PaliGemma 2 的核心在于将 PaliGemma 所使用的 SigLIP-So400m 视觉编码器与 Gemma 2 系列的全部语言模型结合,涵盖从 2B 到 27B 的各种模型规模。模型在三种分辨率 (224px²、448px² 和 896px²) 下进行多阶段训练,旨在赋予其更广泛的知识,以便通过微调将其迁移到更广泛的任务中。PaliGemma 2 的应用范围扩展到 PaliGemma 以外,包括各种 OCR 相关任务,例如表格结构识别、分子结构识别、乐谱识别,以及长篇细粒度字幕生成和放射学报告生成,并在许多任务上取得了最先进的结果。

模型架构

在这里插入图片描述
PaliGemma 2 的模型架构遵循与 PaliGemma 相同的建模、训练和数据设置。其核心是使用预训练的 SigLIP-So400m 视觉编码器,并通过线性投影将其(序列)嵌入映射到 Gemma 2 的输入空间。如上图所示,视觉嵌入与文本提示相结合,并输入到 Gemma 2 语言模型中(预填充)。然后通过从语言模型中自回归采样获得预测结果。

PaliGemma 2 的视觉编码器部分使用的是与 PaliGemma 相同的 SigLIP-So400m 模型。语言模型部分则替换为更新且功能更强大的 Gemma 2 系列模型,涵盖从 2B 到 27B 的各种模型规模。PaliGemma 2 提供三种不同规模的模型(3B、10B、28B)以及三种不同的分辨率(224px²、448px²、896px²)。

训练过程

PaliGemma 2 的预训练分为三个阶段:

  • Stage 1:将预训练好的 SigLIP-So400m 和 Gemma 2 模型结合,在 224×224 分辨率下训练 10 亿个样本,不冻结任何参数,学习多模态任务的混合数据,以增强模型对各种任务的适应能力。
  • Stage 2:在 448×448 和 896×896 分辨率下继续训练,分别训练 5000 万和 1000 万个样本,重点提升模型对高分辨率图像的理解能力,同时增加输出序列长度以适应长文本任务。
  • Stage 3:将 Stage 1 或 Stage 2 的检查点迁移到目标任务进行微调,使用与 PaliGemma 相同的超参数范围进行探索,并在多个基准任务上进行评估。

PaliGemma 2 相较于 PaliGemma 的改进之处

  • 模型尺寸扩展:PaliGemma 2 提供了从 3B 到 28B 的多种模型尺寸,而 PaliGemma 仅有一个 3B 的模型。更大的模型尺寸使得 PaliGemma 2 能够处理更复杂的任务,如长文本描述生成、分子结构识别等,这些任务需要模型具备更强的语言理解和生成能力。
  • 分辨率提升:PaliGemma 2 在 224×224、448×448 和 896×896 三种分辨率下进行了训练,而 PaliGemma 只有 224×224 分辨率的版本。高分辨率的模型能够更好地处理图像中的细节信息,对于需要高精度图像理解的任务(如文本检测与识别、表格结构识别等)具有显著优势。
  • 语言模型升级:PaliGemma 2 使用了 Gemma 2 语言模型家族,相较于 PaliGemma 中的 Gemma 语言模型,Gemma 2 在性能和效率上都有所提升。Gemma 2 的改进使得 PaliGemma 2 在语言生成任务上表现更加出色,能够生成更准确、更自然的文本描述。
  • 任务范围拓展:PaliGemma 2 在迁移学习阶段探索了更多新的任务,如文本检测与识别、表格结构识别、分子结构识别、乐谱
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值