模型简介
模型特点
模型能力
使用案例
库名称:transformers
许可证:gemma
管道标签:图像文本到文本
额外授权标题:在Hugging Face上访问PaliGemma
额外授权提示:要在Hugging Face上访问PaliGemma,您需要审阅并同意Google的使用许可。请确保您已登录Hugging Face并点击下方按钮。请求将立即处理。
额外授权按钮内容:确认许可
PaliGemma 2模型卡
模型页面:PaliGemma
Transformers PaliGemma 2 28B权重,预训练时使用896*896输入图像和512个令牌的输入/输出文本序列。模型以bfloat16
格式提供,可用于微调。
资源与技术文档:
使用条款:条款
作者: Google
模型信息
模型概述
PaliGemma 2是对PaliGemma视觉语言模型(VLM)的更新,融合了Gemma 2模型的能力。PaliGemma系列模型受PaLI-3启发,基于开放组件如SigLIP视觉模型和Gemma 2语言模型。它接受图像和文本输入并生成文本输出,支持多种语言。该模型设计用于在广泛的视觉语言任务(如图像和短视频描述、视觉问答、文本阅读、目标检测和分割)上实现领先的微调性能。
模型架构
PaliGemma 2由Transformer解码器和Vision Transformer图像编码器组成。文本解码器初始化自Gemma 2的2B、9B和27B参数规模。图像编码器初始化自SigLIP-So400m/14。与原始PaliGemma模型类似,PaliGemma 2的训练遵循PaLI-3的配方。
输入与输出
- 输入: 图像和文本字符串,例如描述图像的提示或问题。
- 输出: 根据输入生成的文本,如图像描述、问题答案、目标边界框坐标列表或分割编码词。
引用
@article{
title={PaliGemma 2: A Family of Versatile VLMs for Transfer},
author={Andreas Steiner and André Susano Pinto and Michael Tschannen and Daniel Keysers and Xiao Wang and Yonatan Bitton and Alexey Gritsenko and Matthias Minderer and Anthony Sherbondy and Shangbang Long and Siyang Qin and Reeve Ingle and Emanuele Bugliarello and Sahar Kazemzadeh and Thomas Mesnard and Ibrahim Alabdulmohsin and Lucas Beyer and Xiaohua Zhai},
year={2024},
journal={arXiv preprint arXiv:2412.03555}
}
模型数据
预训练数据集
PaliGemma 2在以下混合数据集上进行了预训练:
- WebLI:WebLI(Web语言图像)是从公共网络构建的大规模多语言图像-文本数据集。使用多种WebLI分割以获取多样化模型能力,如视觉语义理解、目标定位、视觉文本理解和多语言性。
- CC3M-35L: 从网页中筛选的英语图像-替代文本对(Sharma等,2018)。使用Google Cloud Translation API翻译为34种其他语言。
- VQ²A-CC3M-35L/VQG-CC3M-35L: VQ2A-CC3M的子集(Changpinyo等,2022a),翻译为与CC3M-35L相同的34种语言。
- OpenImages: 基于OpenImages数据集的手工规则生成的检测和目标感知问答(Piergiovanni等,2022)。
- WIT: 从维基百科收集的图像和文本(Srinivasan等,2021)。
PaliGemma 2基于Gemma 2,Gemma 2的预训练数据集信息可在Gemma 2模型卡中找到。
数据责任过滤
对WebLI应用了以下过滤器,以确保PaliGemma 2训练数据的安全性和责任性:
- 色情图像过滤: 移除被判定为色情性质的图像。
- 文本安全过滤: 过滤与不安全文本配对的图像。不安全文本包括儿童性虐待内容、色情、粗俗或其他冒犯性内容。
- 文本毒性过滤: 使用Perspective API识别并过滤与侮辱、淫秽、仇恨或其他有毒文本配对的图像。
- 文本个人信息过滤: 使用Cloud Data Loss Prevention (DLP) API过滤某些个人信息和敏感数据以保护隐私。移除了社会保障号码等标识符和其他敏感信息类型。
- 其他方法: 根据政策和实践进行内容质量和安全性过滤。
在Transformers中使用
以下代码片段使用google/paligemma2-28b-pt-896
模型作为参考。这是一个基础模型,建议在下游任务微调后使用。
这里有一个笔记本展示了如何微调PaliGemma 2。
from transformers import (
PaliGemmaProcessor,
PaliGemmaForConditionalGeneration,
)
from transformers.image_utils import load_image
import torch
model_id = "google/paligemma2-28b-pt-896"
url = "https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/transformers/tasks/car.jpg"
image = load_image(url)
model = PaliGemmaForConditionalGeneration.from_pretrained(model_id, torch_dtype=torch.bfloat16, device_map="auto").eval()
processor = PaliGemmaProcessor.from_pretrained(model_id)
# 预训练模型留空提示
prompt = ""
model_inputs = processor(text=prompt, images=image, return_tensors="pt").to(torch.bfloat16).to(model.device)
input_len = model_inputs["input_ids"].shape[-1]
with torch.inference_mode():
generation = model.generate(**model_inputs, max_new_tokens=100, do_sample=False)
generation = generation[0][input_len:]
decoded = processor.decode(generation, skip_special_tokens=True)
print(decoded)
实现信息
硬件
PaliGemma 2使用最新一代Tensor Processing Unit(TPU)硬件(TPUv5e)进行训练。
软件
训练使用JAX、Flax、TFDS和big_vision
完成。
JAX允许研究人员利用包括TPU在内的最新硬件,更快、更高效地训练大型模型。
TFDS用于访问数据集,Flax用于模型架构。PaliGemma 2的微调代码和推理代码在big_vision
GitHub仓库中发布。
评估信息
基准测试结果
为了验证PaliGemma 2在多种学术任务上的可迁移性,我们在每个任务上对预训练模型进行了微调。我们报告了不同分辨率下的结果,以展示哪些任务受益于更高的分辨率。值得注意的是,这些任务或数据集均未包含在预训练数据中,且其图像已明确从预训练数据中移除。
PaliGemma 2按模型分辨率和大小的结果
基准测试 | 224-3B | 224-10B | 224-28B | 448-3B | 448-10B | 448-28B |
---|---|---|---|---|---|---|
AI2D | 74.7 | 83.1 | 83.2 | 76.0 | 84.4 | 84.6 |
AOKVQA-DA (val) | 64.2 | 68.9 | 70.2 | 67.9 | 70.8 | 71.2 |
AOKVQA-MC (val) | 79.7 | 83.7 | 84.7 | 82.5 | 85.9 | 87.0 |
ActivityNet-CAP | 34.2 | 35.9 | - | - | - | - |
ActivityNet-QA | 51.3 | 53.2 | - | - | - | - |
COCO-35L (avg34) | 113.9 | 115.8 | 116.5 | 115.8 | 117.2 | 117.2 |
COCO-35L (en) | 138.4 | 140.8 | 142.4 | 140.4 | 142.4 | 142.3 |
COCOcap | 141.3 | 143.7 | 144.0 | 143.4 | 145.0 | 145.2 |
ChartQA (aug) | 74.4 | 74.2 | 68.9 | 89.2 | 90.1 | 85.1 |
ChartQA (human) | 42.0 | 48.4 | 46.8 | 54.0 | 66.4 | 61.3 |
CountBenchQA | 81.0 | 84.0 | 86.4 | 82.0 | 85.3 | 87.4 |
DocVQA (val) | 39.9 | 43.9 | 44.9 | 73.6 | 76.6 | 76.1 |
GQA | 66.2 | 67.2 | 67.3 | 68.1 | 68.3 | 68.3 |
InfoVQA (val) | 25.2 | 33.6 | 36.4 | 37.5 | 47.8 | 46.7 |
MARVL (avg5) | 83.5 | 89.5 | 90.6 | 82.7 | 89.1 | 89.7 |
MSRVTT-CAP | 68.5 | 72.1 | - | - | - | - |
MSRVTT-QA | 50.5 | 51.9 | - | - | - | - |
MSVD-QA | 61.1 | 62.5 | - | - | - | - |
NLVR2 | 91.4 | 93.9 | 94.2 | 91.6 | 93.7 | 94.1 |
NoCaps | 123.1 | 126.3 | 127.1 | 123.5 | 126.9 | 127.0 |
OCR-VQA | 73.4 | 74.7 | 75.3 | 75.7 | 76.3 | 76.6 |
OKVQA | 64.2 | 68.0 | 71.2 | 64.1 | 68.6 | 70.6 |
[RSVQA-hr][rsvqa-hr] (test) | 92.7 | 92.6 | 92.7 | 92.8 | 92.8 | 92.8 |
[RSVQA-hr][rsvqa-hr] (test2) | 90.9 | 90.8 | 90.9 | 90.7 | 90.7 | 90.8 |
[RSVQA-lr][rsvqa-lr] | 93.0 | 92.8 | 93.5 | 92.7 | 93.1 | 93.7 |
RefCOCO (testA) | 75.7 | 77.2 | 76.8 | 78.6 | 79.7 | 79.3 |
RefCOCO (testB) | 71.0 | 74.2 | 73.9 | 73.5 | 76.2 | 74.8 |
RefCOCO (val) | 73.4 | 75.9 | 75.0 | 76.3 | 78.2 | 77.3 |
RefCOCO+ (testA) | 72.7 | 74.7 | 73.6 | 76.1 | 77.7 | 76.6 |
RefCOCO+ (testB) | 64.2 | 68.4 | 67.1 | 67.0 | 71.1 | 68.6 |
RefCOCO+ (val) | 68.6 | 72.0 | 70.3 | 72.1 | 74.4 | 72.8 |
RefCOCOg (test) | 69.0 | 71.9 | 70.7 | 72.7 | 74.8 | 73.7 |
RefCOCOg (val) | 68.3 | 71.4 | 70.5 | 72.3 | 74.4 | 73.0 |
[ST-VQA][st-vqa] (val) | 61.9 | 64.3 | 65.1 | 80.5 | 82.0 | 81.8 |
[SciCap][scicap] | 165.1 | 159.5 | 156.9 | 183.3 | 177.2 | 172.7 |
[ScienceQA][scienceqa] | 96.1 | 98.2 | 98.2 | 96.2 | 98.5 | 98.6 |
[Screen2Words][screen2words] | 113.3 | 117.8 | 122.8 | 114.0 | 119.1 | 123.4 |
[TallyQA][tallyqa] (complex) | 70.3 | 73.4 | 74.2 | 73.6 | 76.7 | 76.8 |
[TallyQA][tallyqa] (simple) | 81.8 | 83.2 | 83.4 | 85.3 | 86.2 | 85.7 |
[TextCaps][textcaps] | 127.5 | 137.9 | 139.9 | 152.1 | 157.7 | 153.6 |
[TextVQA][textvqa] (val) | 59.6 | 64.0 | 64.7 | 75.2 | 76.6 | 76.2 |
[VATEX][vatex] | 80.8 | 82.7 | - | - | - | - |
[VQAv2][vqav2] (minival) | 83.0 | 84.3 | 84.5 | 84.8 | 85.8 | 85.8 |
[VizWizVQA][vizwiz-vqa] (val) | 76.4 | 78.1 | 78.7 | 77.5 | 78.6 | 78.9 |
[WidgetCap][widgetcap] | 138.1 | 139.8 | 138.8 | 151.4 | 151.9 | 148.9 |
[XM3600][xm3600] (avg35) | 42.8 | 44.5 | 45.2 | 43.2 | 44.6 | 45.2 |
[XM3600][xm3600] (en) | 79.8 | 80.7 | 81.0 | 80.3 | 81.5 | 81.0 |
[xGQA][xgqa] (avg7) | 58.6 | 61.4 | 61.1 | 60.4 | 62.6 | 62.1 |
其他基准测试
[ICDAR 2015 Incidental][icdar2015-inc]
模型 | 精确率 | 召回率 | F1 |
---|---|---|---|
PaliGemma 2 3B | 81.88 | 70.73 | 75.9 |
[Total-Text][total-text]
模型 | 精确率 | 召回率 | F1 |
---|---|---|---|
PaliGemma 2 3B | 73.8. | 74.54 | 74.17 |
[FinTabNet][fintabnet]
模型 | S-TEDS | TEDS | GriTS-Top | GriTS-Con |
---|---|---|---|---|
PaliGemma 2 3B | 99.18 | 98.94 | 99.43 | 99.21 |
[PubTabNet][pubtabnet]
模型 | S-TEDS | TEDS | GriTS-Top | GriTS-Con |
---|---|---|---|---|
PaliGemma 2 3B | 97.6 | 97.31 | 97.99 | 97.84 |
[GrandStaff][grandstaff]
模型 | CER | LER | SER |
---|---|---|---|
PaliGemma 2 3B | 1.6 | 6.7 | 2.3 |
[PubChem][pubchem]
- PaliGemma 2 3B, 完全匹配: 94.8
[DOCCI][docci]
模型 | 平均字符数 | 平均句子数 | 非蕴含句子 % |
---|---|---|---|
PaliGemma 2 3B | 529 | 7.74 | 28.42 |
PaliGemma 2 10B | 521 | 7.45 | 20.27 |
- 平均字符数: 平均字符数
- 平均句子数: 平均句子数
- 非蕴含句子: 非蕴含句子
[MIMIC-CXR][mimic-cxr]
模型 | CIDEr | BLEU4 | Rouge-L | RadGraph F1 |
---|---|---|---|---|
PaliGemma 2 3B | 19.9% | 14.6% | 31.92% | 28.8% |
PaliGemma 2 10B | 17.4% | 15% | 32.41% | 29.5% |
[Visual Spatial Reasoning][vsr]
模型 | VSR零样本分割(测试) | VSR随机分割(测试) |
---|---|---|
PaliGemma 2 3B | 0.75 | 0.82 |
PaliGemma 2 10B | 0.80 | 0.87 |
伦理与安全
评估方法
我们的评估方法包括针对相关内容的伦理和安全性结构化评估,包括:
- 人工评估涵盖儿童安全、内容安全和代表性危害的提示。详见Gemma模型卡中的评估方法,但采用图像描述和视觉问答设置。
- 图像到文本基准测试:针对相关学术数据集(如FairFace数据集(Karkkainen等,2021)进行基准测试。
评估结果
- 伦理和安全性的人工评估结果在可接受范围内,符合内部政策对儿童安全、内容安全和代表性危害等类别的要求。
- 除了严格的内部评估外,我们还使用Perspective API(阈值为0.8)测量从FairFace数据集获取的图像生成描述的毒性、粗俗和其他潜在问题。我们报告了感知性别、种族和年龄属性在各子组中的最大值和中位数。
指标 | 感知性别 | 种族 | 年龄组 | ||||||
---|---|---|---|---|---|---|---|---|---|
模型大小 | 3B | 10B | 28B | 3B | 10B | 28B | 3B | 10B | 28B |
最大值 | |||||||||
毒性 | 0.14% | 0.15% | 0.19% | 0.29% | 0.39% | 0.39% | 0.26% | 0.18% | 0.32% |
身份攻击 | 0.04% | 0.02% | 0.02% | 0.13% | 0.06% | 0.06% | 0.06% | 0.03% | 0.06% |
侮辱 | 0.17% | 0.25% | 0.17% | 0.37% | 0.52% | 0.52% | 0.27% | 0.39% | 0.24% |
威胁 | 0.55% | 0.43% | 0.57% | 0.83% | 0.48% | 0.48% | 0.64% | 0.43% | 0.64% |
粗俗 | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% |
中位数 | |||||||||
毒性 | 0.13% | 0.10% | 0.18% | 0.07% | 0.07% | 0.14% | 0.12% | 0.08% | 0.12% |
身份攻击 | 0.02% | 0.01% | 0.02% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% |
侮辱 | 0.15% | 0.23% | 0.14% | 0.14% | 0.17% | 0.13% | 0.09% | 0.18% | 0.16% |
威胁 | 0.35% | 0.27% | 0.41% | 0.28% | 0.19% | 0.42% | 0.27% | 0.31% | 0.40% |
粗俗 | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% | 0.00% |
使用与限制
预期用途
开放视觉语言模型(VLMs)在各行业和领域有广泛应用。以下潜在用途列表并不全面,旨在提供模型开发者在训练和开发过程中考虑的可能用例的背景信息。Gemma模型的禁止用途详见Gemma禁止使用政策。
特定视觉语言任务的微调:
- 预训练模型可在多种视觉语言任务上微调,如图像描述、短视频描述、视觉问答、文本阅读、目标检测和分割。
- 预训练模型可针对特定领域微调,如遥感问答、盲人视觉问题、科学问答、描述UI元素功能。
- 预训练模型可针对非文本输出任务(如边界框或分割掩码)进行微调。
视觉语言研究:
- 预训练模型和微调模型可作为研究人员实验VLM技术、开发算法和推动该领域进步的基础。
伦理考量与风险
视觉语言模型(VLMs)的开发引发了一些伦理问题。在创建开放模型时,我们仔细考虑了以下问题:
- 偏见与公平
- 在大规模真实图像-文本数据上训练的VLMs可能反映训练材料中嵌入的社会文化偏见。这些模型经过仔细审查,输入数据预处理描述和后续评估报告在本卡中。
- 错误信息与滥用
- VLMs可能被滥用以生成虚假、误导性或有害的文本。
- 提供了负责任使用的指南,参见负责任生成式AI工具包。
- 透明度与问责
- 本模型卡总结了模型架构、能力、限制和评估过程的详细信息。
- 负责任开发的开放模型通过使VLM技术对AI生态系统中的开发者和研究人员可访问,提供了分享创新的机会。
已识别的风险与缓解措施:
- 偏见的延续: 鼓励持续监控(使用评估指标、人工审查)并在模型训练、微调和其他用例中探索去偏见技术。
- 生成有害内容: 内容安全机制和指南至关重要。开发者应根据其特定产品政策和应用用例谨慎行事并实施适当的内容安全防护措施。
- 恶意用途: 技术限制以及开发者和终端用户教育有助于减轻LLMs的恶意应用。提供了教育资源和使用户报告滥用的机制:参见负责任生成式AI工具包。Gemma模型的禁止用途详见Gemma禁止使用政策。
- 隐私侵犯: 模型训练数据经过过滤以移除某些个人信息和敏感数据。开发者应遵守隐私法规并采用隐私保护技术。
限制
- 从底层Gemma 2模型继承的大多数限制仍然适用:
- VLMs更擅长可以清晰提示和指令框架化的任务。开放式或高度复杂的任务可能具有挑战性。
- 自然语言本质上是复杂的。VLMs可能难以把握细微差别、讽刺或比喻语言。
- VLMs基于从训练数据集中学习的信息生成响应,但它们不是知识库。它们可能生成不正确或过时的事实陈述。
- VLMs依赖于语言和图像的统计模式。它们可能缺乏在某些情况下应用常识推理的能力。
- PaliGemma 2首先设计为用于微调到专门任务的通用预训练模型。因此,其“开箱即用”或“零样本”性能可能落后于专为通用用途设计的模型。
- PaliGemma 2不是多轮聊天机器人。它设计用于单轮图像和文本输入。
[rsvqa-h








