Flamingo论文介绍:把视觉特征向语言模型看齐

今天介绍一篇经典的多模态论文,来自NeurIPS 2022的《Flamingo: a Visual Language Model for Few-Shot Learning》 ,论文地址:https://arxiv.org/pdf/2103.00020
在这里插入图片描述

一、Motivate

论文旨在桥接预训练好的视觉模型和语言模型,在不改变视觉模型和语言模型的基础上,做好两种模态模型的融合。简单来说这是一篇粘模型的工作,主要思想是将视觉模型的编码token向语言模型方向转化,使得语言模型能够直接利用视觉的token。

二、Method

Flamingo设计了两个模块达到多模态对齐, 一是 Perceiver Resampler 模块,这个模块将任意个数的输入的视觉(视频/图像)特征转换为固定个数的视觉tokens(64个);二是 Gated XATTN-DENSE 模块,将 Perceiver Resampler 输出的视觉 tokens,与新插入到 LM 中的层计算交叉注意力,从而将视觉信息注入到 LM 的生成过程中。过程中使用一个tanh做门控,使得融合更平滑缓慢。
在这里插入图片描述

三、模块细节:Perceiver Resampler 模块和Gated XATTN-DENSE 模块

3.1 Perceiver Resampler 模块(感知重采样器)

输入可以是图像也可以是视频,视频可以理解为多个帧的图像,在输入时,在时间维度上进行展开即可。以图像为例,输入图像后,通过一个视觉编码器(ResNet/NFNet/ViT)进行编码得到特征向量,展平,然后和64个可学习的token做交叉注意力,KV来自于视觉特征,Q来自于这64个可学习token(论文中叫做Learned latent queries),再经过多层 Attention + FFW 处理,这样这64个queries就能学习到来自视觉的特征信息,作为视觉表征。这里的 queries 就有点类似于 ViT 中的 cls token。在这里插入图片描述
视频过程可以理解为下图,其实就是把视频在时间维度上展开之后再铺平,后面的操作和图片一样。不管是视频还是图片,Learned latent queries的大小不会发生改变,都是64。
在这里插入图片描述

3.2 Gated XATTN-DENSE 模块(门控注意力模块)

Flamingo 将固定长度的视觉 query 注入到语言模型的方法称为 Gated xattn dense,其详细结构示意图及伪代码如下图所示。具体来说,在预训练好的 LM 的各层交替地插入一些随机初始化的交叉注意力层。所谓 gated门控,在每一新插入的层之后的残差链接之前添加一个 tanh gating,即 tanh(α) ,其中 α 是一个可学习的标量值,初始值为 0,从而保证初始化时的输出与原 LM 一致。
在这里插入图片描述

四、数据格式

Flamingo 的训练数据有三类:**图文交错数据集、图像文本对数据集和视频文本对数据集。**其中图文交错数据集是 Flamingo 数据的重点,其多模态 in-context learning (few-shot learning) 的能力可以说主要就是来自图文交错数据。作者收集了一个大规模图文交错数据集 M3W,通过解析 HTML 获取并标记图片在文本中的位置。

五、效果

可以通过论文中的示例图看到Flamingo的效果还是非常炸裂的,在多项任务上都有惊人的表现。当然Flaminggo也有一些待改进的地方,比如,Flamingo的输出只是单模态的文本
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱睡觉的咋

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值