Pixel Aligned Language Models 论文阅读笔记(PixelLLM)

PixelLLM是一种具有精细定位能力的视觉语言模型,通过密集地将每个输出词与像素位置对齐,能处理图像输入和位置/文本输出。它在多个定位任务上达到SOTA,挑战了现有大模型在局部定位的理解。模型结构包括图像编码器、位置提示编码器和提示特征提取器,使用LoRA进行低秩微调以适应视觉任务。
摘要由CSDN通过智能技术生成

Pixel Aligned Language Models (PixelLLM)

发表于2023.12, Google Research & UC San Diego

Part 1 概述

PixelLLM:像素对齐大语言模型

  • a vision-language model with fine-grained localization ability by densely aligning each output word to a pixel location
  • can take an image and any combination of location or text as input or output.
  • generates captions, and aligns each output word to a pixel location
  • 能够将locations(点或框的集合)作为输入或输出;
    位置作为输入时,生成与指定区域相关的描述文本;
    位置作为输出时,模型可以为每个词语生成像素坐标,即密集的词语定位。
  • 在带有定位的图片注释数据集(Localized Narratives Dataset)上做预训练,该数据集为每个词指出了对应像素

测试任务:1)referring localization on RefCOCO ,2)location conditioned captioning on RefCOCO and Visual Genome ,3)dense object captioning on Visual Genome。均取得SOTA。

模型示意:

效果展示:

目前大模型在局部定位任务(localization tasks,如word grounding , referring localization)较差,缺乏对特定区域/对象及其确切位置的详细理解。

大多数工作都专注于仅语言的输出:Flamingo 的门控函数;BLIP2 的可学习查询;LLAVa 的指导性图像-文本对…

提出问题:

Can large language models achieve spatial understanding and reasoning from the visual world? If so, how? 大型语言模型能否从视觉世界实现空间理解和推理。如果能,如何?

Part 2 模型

前提:将每个词(word)视为一个token

之前的工作大多只对名词做ground,这里则不强制模型忽略非实体词汇,以便模型学习关系术语,例如“holding”。

如何输出每个词的对应像素:在LM输出的单词特征上添加一个小的 MLP ,对每个单词回归出其像素位置。

模型输入:图像(image)、位置提示(location prompt,可选),文本提示(text prompt,可选)

模型输出:图像描述(caption)、各个词语对应的像素位置(per-word localization,一个与句子长度相同的点轨迹序列)

PixelLLM主要包括三部分:图像编码器、提示编码器、提示特征提取器。

模型架构:

  • 视觉编码器V(Image Encoder)
    由两个并行主干组成:使用 SAM 初始化的 ViT-H 和使用 EVA02初始化的 ViT-L。
    两个目的:
    1)首先,使用 SAM 主干并保持冻结,使我们能够继承 SAM 的强分割能力,并提供强大的定位特征
    2)其次,使用另一个可调主干来学习语义特征
    当输入至提示特征提取器时,我们在通道维度上连接这两个特征。
  • 位置提示编码器P(Prompt Encoder)
    对点或框坐标进行编码,
    consists of a sine-cosine position embedding followed by linear layers
  • 提示特征提取器 E (Prompt Feature Extractor)
    将prompt-conditioned image features映射到text embedding space
    之后将输出与前缀文本的嵌入特征一同送到语言模型L。
    该提取器使用具有一组可学习tokens 的two-way transformer,灵感来自 QFormer。
    two-way transformer在每一层交替使用 [P(b)、q] 和 f 作为查询或键/值。
    (b是位置提示,P(b)是位置提示编码器输出,q是learnable token,f是图像编码器输出)
    此结构具有与ROIAlign相似的函数,但它是可学习的,不需要特征插值和采样。
  • 语言模型 L(LLM)
    LM的权重可以保持冻结,或者通过Low-rank finetuning (LoRA) 进行更新。
    作者使用 the instruction finetuned T5-XL (following BLIP2)。
    作者将LoRA应用于自注意力块的查询和值投影层,以将T5-XL 适应视觉任务。
    T5-XL 的其他参数在训练期间被冻结。
  • 输出层 (Vocabulary Mapping Layer + MLP):
    LM的最后一个线性层是一个词汇映射层,从语言特征空间映射到 one-hot 词汇索引。
    为了使用相同的语言特征进行定位,只需并行地添加一个小的 MLP,它将语言特征映射到二维位置输出(单点预测)。
    位置预测与语言解码一起动态运行,仅添加少量计算开销。
  • 注意
    位置输出不参与自回归解码的反馈传播,以避免影响原始文本解码过程。
  • 备注:
    输入主要左侧的是图像 I 和可选的位置提示 b。模型将专注于提示所指示的位置给出对应的文本输出以及点序列。
    如果没有提供位置提示,则使用整个图像的全局框提示,即 b = (0, 0, H, W ),其中 H 和 W 是图像大小。

Part3 训练与测试

数据集:Localized Narratives Dataset(LN,2019),包含人工注释以及注释者在叙述过程中的鼠标轨迹。

三元组形式(I, s, p),即:图片,叙述文本,鼠标轨迹位置

这给出了注释中所有单词的同步位置。虽然并非所有word-location pairs 在视觉上有意义或准确,但作者认为它们是有价值的,因为它们来自实际的人类注意力。

损失函数:

caption的损失函数:standard label-smoothed cross-entropy loss

localization的损失函数:L1 regression loss

PixelLLM可以将文本/位置的任何组合作为输入或输出,可分别用于以下下游任务:

  • Location-conditioned captioning:输入图像和某一位置,输出该位置的描述。
  • Referring localization and segmentation:输入图像和查询语句,输出与查询语句对应的边界框。
    输入:图像 + 全局的位置提示 + 查询语句提示
    输出:生成点序列(默认结果)、框序列(替换MLP为四输出通道)、分割区域序列(插入SAM的掩码解码器来进一步获得分割掩码)
  • Dense object captioning:先检测出图像所有物体,再一一描述。
    需要在图像编码器后加一个检测头,将得到的目标框作为位置提示。

对比实验:

A key difference between our architecture and GRiT is the region feature extractor,

GRiT uses ROIAlign to explicitly extract image features within the bounding boxes.

PixelLLM employs a prompt encoder and prompt feature extractor which don't require the image feature sampling and interpolation like ROIAlign.

消融实验:

  • dense per-pixel localization formulation 是关键

    两种替代方案:(1)将边界框坐标编码为原始字符串,直接使用原始 LLM 输出头。(2) 将边界框坐标离散化为bin,并将 bin 编号编码为 LLM 词汇表中的额外标记 。这两个想法都用于稀疏编码位置,即编码名词的位置。

    经对比发现,模型效果提升来自于更好的定位解码过程: 1)替代方案混合解码常规词和定位,这两个任务可以相互干扰。 2)在pixelLLM模型中,words 与 localizations是并行解码的。且此结构能够利用密集注释数据集进行训练,进一步提高了性能。
  • LoRA可以帮助冻结的语言模型更好地适应定位任务

Part 4 总结

  1. PixelLLM,一种视觉语言模型,可输出图像的文字说明以及每个单词的定位。输入还可以附带一些定位prompt和文字prompt。
  2. 利用带有定位每个单词的图像说明和鼠标轨迹的数据集(Localized Narratives dataset),用于训练每个单词的定位理解。
  3. 模型灵活,可以适应各种视觉语言任务,包括referring localization and segmentation, location-conditioned captioning, and dense captioning,具有最先进的性能。
  4. 与之前定位模型的主要不同在于localization representation。之前的工作试图将位置建模为语言模型词汇表中的一个词,但本文使用回归表示,且使用了直接来自人工标注的数据集。
  5. 注意力轨迹建模是种新任务,旨在将长而详细的图像说明文本与人类注意力的轨迹对齐。评估此任务的唯一现有工作是 MITR(2021) ,它在冻结区域特征上训练线性层,但学习到的知识无法转移到其他任务。作者首次为这项任务提出端到端训练框架并大规模对其进行训练。
  6. 作者强调,定位跟踪输出是由语言模型特征产生的,而不是像MITR那样是由视觉特征产生的。

Part 5 补充

组会中师兄指出,在LM生成点轨迹序列时,最后的语文特征向量竟然会包含位置信息,尤其是LM在完全冻结时依然能行,可能还有待进一步分析研究。下面是原文5.4节的相关内容:

It is also worth noting that even without LoRA, the frozen T5-XL performs on par with models that fine-tune the text encoder jointly [8, 45]. It is evidence that the frozen large language model like T5 encompasses strong localization ability, which could be revealed by our PixelLLM.

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值