链接:https://arxiv.org/pdf/2204.14198
论文:Flamingo: a Visual Language Model for Few-Shot Learning
Introduction
- Motivation:仅使用少量标注样本来快速适应新任务的建模方式是多模态机器学习研究的一个挑战与难点
- 定位:a family of Visual Language Models (VLM),visually-conditioned自回归文本生成模型(以图像/视频作为输入)
- 创新点:
- 弥合强大的pretrained vision-only and language-only模型
- 处理任意交错的视觉和文本数据的序列
- 无缝接收图像或视频输入
主打一个flexibility,因为其在任意交错的文本和图像大规模多模态网页数据集上训练,赋予其上下文小样本学习能力(in-context few-shot learning)
- 结构:互补的预训练视觉模型感知视觉场景和冻结的执行推理的LLM模型,添加新组件连接二者以保留其预训练期间积累的知识。
- 优点:可以处理高分辨率图像或视频,在给定大量和可变数量的视觉输入特征的情况下为每个图像/视频生成少量固定数量的视觉标记
- 其处理效果
Few shot prompt:
可以处理视频:
multi-image visual dialogue
7. 实验效果
在16个任务上有6个超过了sota(包括微调)结果。
Methods
-
Overview
Perceiver Resampler接收从Vision Encoder输出的时空特征,输出特定数量的视觉tokens。这些视觉tokens用于Pre-Trained LM 中的cross-attention(随机初始化的)来调节冻结的 LM。这些新引入的层将视觉信息引入next-token prediction task。
-
Visual processing and the Perceiver Resampler
- Vision Encoder: from pixels to features-frozen NormalizerFree ResNet (NFNet) 【Batch Normalization (BN) 能够使模型更加稳定,加速收敛且有正则化效果,但增加了计算平均数和标准差的计算,额外引入超参数,破坏了batch训练数据间的独立性,导致对batch size非常敏感,所以该模型引入了 Adaptive Gradient Clipping (AGC)进行动态梯度裁剪,可以使用更大的batchsize与更强的数据增强】
- 在处理视频数据时,需要做一个flatten,如下图所示
- Perceiver Resampler: from varying-size large feature maps to few visual tokens.连接视觉encoder和frozen language model。引入预定数量的latent queries与图像特征做cross attention。
- Conditioning frozen language models on visual representations:通过Transformer decoder,基于Perceiver Resampler输出的视觉表征进行文本生成,frozen text-only LM blocks,只训练cross-attend to the visual output部分和Perceiver Resampler。
- 在frozen pretrained LM间穿插new GATED XATTN-DENSE layers:引入tanh-gating mechanism,alpha为layer-specific初始化0的可学习数值。详情见下图:
- 建模了不同大小的模型,building on the 1.4B, 7B, and 70B parameter,命名为Flamingo-3B, Flamingo-9B and 5 Flamingo-80B。
- Multi-visual input support: per-image/video attention masking,只关注最近出现的图像,由mask实现任意数量的图像输入。在交错的数据集上训练时,每个序列最多5张图像
- Training on a mixture of vision and language datasets:训练数据集包括三种类型的网络数据,1.交错的图像文本,2.image-text pairs,3.video-text pairs,第一种的数据处理方式为,使用<image>和<EOC> (end of chunk)标记,如上图所示输入,𝐿 = 256 tokens且最多五张图像;在不同的数据集上,使用不同的权重,M为数据集数量。
- 在frozen pretrained LM间穿插new GATED XATTN-DENSE layers:引入tanh-gating mechanism,alpha为layer-specific初始化0的可学习数值。详情见下图:
Experiments
-
SOTA实验:the larger the model, the better the few-shot performance;the largest model better exploits larger numbers of shots。虽然训练只用了最多五张图片,但是在推理时可以使用32张图片。
微调对比:
-
消融实验
Flaminggo的分类性能落后于最先进的对比模型(直接优化文本图像检索)