VisionLLM
论文名称:VisionLLM: Large Language Model is also an Open-Ended Decoder for Vision-Centric Tasks
介绍
- CV 领域中的强大视觉基础模型受限于预先定义形式的人物,难以与 LLMs 的开放式任务能力相比;
- 本文提出了一个基于 LLM 的面向视觉人物的框架 VisionLLM,将图像视为一种外语,为视觉和语言任务提供了统一的视角。
VisionLLM
overall architecture
提供了一个语言引导的图像分词器,根据给定的 language prompt 对视觉信息进行编码,以及一个基于 LLM 的开放式任务解码器,利用前者编码的视觉信息进行生成。
统一的语言指令
对于 Vision-Language Tasks,image captioning 任务使用 The image is <image>
. Please generate a caption for the image: ;VQA 使用 The image is <image>
. Please generate
an answer for the image according to the question: <question>
对于 Vision-Only Tasks,设计有效的语言指令十分具有挑战性,本文通过提供任务描述并使用语言指令指定期望的输出格式。
Language-Guided Image Tokenizer
使用视觉主干网络提取给定图像的四个不同尺度,利用文本编码器(如 BERT 等)从给定的提示中提取语言特征,通过 cross attention 将语言特征嵌入每个尺度的视觉特征中,产生多尺度的语言感知视觉特征,对其多模态间的特征。
随后采用基于 Transformer 的网络,如(Deformable DETR)和 M 个随机初始化的 Query Token 来捕获图像的高级信息。
LLM-based Open-Ended Task Decoder
解码器使用 Alpaca,用于处理各种与语言引导相关的视觉任务,但是其一些缺陷:
- 词汇表中只有少数数字标记(0-9);
- 使用多个标记来表示类别名称,在分类任务中效率不高;
- 是一个因果模型,对视觉感知任务不好。
因此本文扩展了额外的标记,为视觉任务所设计,如位置标记,-512 到 512,引入了与语义无关的分类 token <c0>
- <c511>