Multi-modal Alignment using Representation Codebook

Multi-modal Alignment using Representation Codebook

题目 Multi-modal Alignment using Representation Codebook
译题 使用表示子空间的多模态对齐
期刊/会议 CVPR

摘要:对齐来自不同模态的信号是视觉语言表征学习(representation learning)的重要一步,因为它会影响后期阶段的表现,如跨模态融合(across-modality fusion)。由于图像和文本通常位于特征空间的不同区域,在实例级别直接对齐它们是具有挑战性的,尤其是当特征在训练过程中仍在演变时。在本文中,我们建议使用聚类表示(cluster representation)在更高、更稳定的水平上进行对齐。具体来说,我们将图像和文本视为同一实体的两个“视图”,并将它们编码到由聚类中心字典(codebook)跨越的联合视觉语言编码空间中。我们通过正样本和负样本的聚类分配进行对比,同时优化聚类中心。为了进一步平滑学习过程,我们采用了师生蒸馏范式(teacher-student distillation paradigm),一种观点的动量教师(momentum teacher)指导另一种观点的学生学习。我们在通用视觉语言基准上评估了我们的方法,并在零样本跨模态检索上获得了新的 SoTA,同时在其他各种传输任务上具有竞争力。

1.引言

视觉语言(Vision language V&L)表征学习(representation learning)是使用图像和文本信号学习统一 特征嵌入 的问题。经过预训练的 V&L 模型在不同环境下的各种下游任务中(downstream tasks)具有巨大的多样性应用,例如通过迁移学习[8, 28, 49]。V&L 预训练的主要任务包括对齐不同模态的特征空间(多模态对齐[8, 25, 28, 31])和捕捉模态之间的交互(跨模态融合[12, 44])。CLIP[37]和 ALIGN[21]等后期融合方法专注于第一项任务,而 OSCAR[28]、VinVL[49]和 VilLT[22]等早期融合方法专注第二项任务。在这项工作中,我们采用了一种类似于 ALBEF[25]的混合方法,其中来自图像和文本模态的特征首先对齐。然后使用 Transformer 编码器进行融合。我们工作的主要重点是特征对齐阶段,这是一个具有挑战性的阶段,因为图像和文本输入具有非常不同的特征。现有的方法,如 CLIP [37]和 ALIGN [21],必须依赖于大量的训练资源和大量的数据来获得良好的对齐(分别为 400M 和 1.8B 的图像-文本对)。

在这项工作中,我们通过使用将公共文本图像特征空间(common text-image feature space)量化为码字的码本,提出了一种更有效的对齐策略。与单个文本或视觉特征相比,这些码字或聚类中心为对比推理提供了更稳定的手段。我们的灵感来自 SwAV [4],它是为自我监督的视觉表征学习(representation learning)而开发的。在[4]中,同一输入图像的两个增强版本(视图)通过深度网络进行特征提取。视觉嵌入是通过优化一个目标函数来学习的,该目标函数强制一个视图中的特征和另一视图中指定的聚类之间的一致性。SwAV 在各种转移任务中取得了令人印象深刻的性能(见[4])。在这里,我们进行了跨模态(图像文本)的对比推理,而不是跨图像视图。详细信息见第 3.1 节,但简而言之,我们对图像和文本模式都使用了可学习的代码簿,并训练我们的模型使用文本或视觉信息来预测码字分配。有效地,在训练过程中,通过与常见码字对齐来排列视觉和文本特征。如图1 所示。
图1
图1 我们建议使用可学习的码本来更好地对齐图像和文本模态。代码本是图像和文本特征之间的 “桥梁” 。每个码字都可以被解释为一个原型,从而能够在集群级别对比图像和文本。然后,我们解决了一个最优传输[1]问题,以优化每个模态到原型之间的距离,这反过来又优化了两个模态之间的对齐。原型向量与我们的 V&L 框架中的特征编码器一起学习。

码本可以被认为是底层输出特征分布的量化样本。它与模型参数一起是端到端可学习的。为了避免训练过程中的突然变化,我们进一步采用了动量蒸馏,这在以前的自我监督学习工作中已被广泛使用,如 BYOL [16]、DINO [5]、MoCo [18]。简言之,与 ALBEF [25]类似,对于图像、文本和融合编码器中的每一个,都有一个相应的编码器,该编码器通过移动平均进行更新,而没有梯度反向传播。这些动量编码器充当教师,指导自我监督的学习过程。与 ALBEF[25]不同,我们使用教师来指导 codebook 学习以及跨模态和模态内对齐。

上述两个组件被连接起来以支持 codebook 的稳定更新,这反过来又为跨模态对齐提供了有效的正则化均值(regularization mean)。实验结果(第4节)表明,即使与使用大量数据的方法(如 CLIP [37]和 ALIGN [21])相比,我们的方法在各种基准上也与最先进的方法具有竞争力。综上所述,我们的主要贡献如下:

  • 我们提出了一种基于 codebook 的有效视觉语言对齐学习方法。它是自监督视觉表示学习(self-supervised vision representation learning ,SSL)到多模态设置的扩展;
  • 我们引入了一种新的提取算法,该算法有助于单模态和跨模态对比优化,并有助于稳定 codebook 学习。

本文的其余部分组织如下。我们在第2节中介绍了我们的相关工作。在第 3 节中,我们描述了我们的框架,称为 Codebook Learning with Distriction(CODIS),以及它的两个组成部分,多模态 codebook 学习和师生蒸馏(teacher-student distillation)。实验结果见第 4 节。第5节是论文的总结。

2.相关工作

视觉语言预训练(V&L) (V&L pretraining) 是一个活跃的研究领域,近年来有许多研究成果。我们在这里回顾与我们最相关的作品。就架构而言,以前的方法可以大致分为早期融合和后期融合两类。在早期的融合方法[8, 22, 28, 41]中,图像和文本被转换为序列(标记化),并传递给单个编码器(通常基于 Transformer )用于嵌入生成(embedding generation)。因此,多模态信号在早期阶段被融合。而在后期融合工作[21,37]中,单独的编码器用于图像和文本。提取的特征通常在随后的微调阶段(later fine tuning stage)进行融合。我们的工作是这两种方法的混合,类似于[25,48]。主要区别在于 codebook 和各种相关的对比损失(contrastive losses)。
在视觉语言学习中,码本在最近的一些工作中被使用,主要用于图像标记化。

BEiT [2]构建了一个视觉单词词典,然后使用它以与掩码语言建模相同的方式形成掩码图像建模任务。SOHO [20]将视觉词典集成到主模型中,并对两者进行联合训练。这两个工作都量化了视觉输入空间。相反,我们的 codebook 用于量化联合输出空间,其中多模态视图通过 最优传输 进行对齐[1]。与我们同时进行的其他工作包括[25, 27]。它们都使用 InfoNCE [33]来对齐跨模态实例。相比之下,我们在实例级别和集群级别都强制执行单峰和跨模态对齐(unimodal and cross-modal alignment)。

自监督对比学习(Self-supervised Contrastive Learning)对比学习[17]的目标是吸引正样本对,排斥负样本对。最近,它已被广泛用于计算机视觉中的无监督、半监督[13]和自监督表示学习[5, 7, 18]。对比推理通常是基于同一输入图像的两个增强视图形成的。主要挑战之一是 feature collapsing ,在实践中,需要通过大批量(large batch size)[7]或存储体(memory banks)[18, 45]来大量的负样本,以缓解这一问题。最近的几项工作表明,人们可以在不区分实例的情况下学习无监督特征。深度集群(deep clustering)[3]和 SwAV [4]将在线集群纳入 Siamese 网络。在 BYOL [16]中,通过将特征与动量编码器获得的表示进行匹配来训练特征。DINO [5]用视觉 Transformer 实例化动量编码器,并采用师生蒸馏范式(distillation paradigm)[13, 19, 47]。我们的对齐技术和动量更新受到了这些工作的启发,可以被视为对多模式设置的扩展。

3.方法

我们的目标是学习图像和文本特征之间的明确对齐(explicit alignment)以促进多模态交互。我们在 图2 中说明了 CODIS ,并在算法1 中提出了一个伪代码(pseudo-code)实现。它与自我监督对比学习有一些相似之处[4, 18]。我们将图像和文本模态视为两种观点,并采用师生蒸馏范式[5, 16]来强制实现单峰和跨模态对齐(unimodal and cross-modal alignment)。为了克服多模态分布之间的差距,我们还学习了一个 codebook ,它可以作为帮助对齐不同模态之间特征的桥梁。我们将本节的内容组织如下。
图片2
图2 我们的框架概述。为了简单起见,我们只显示一对师生编码器(例如:教师用于图像,学生用于文本),类似地,也用于内存队列。教师使用学生的指数移动平均值(来自相同的模态)进行更新。codebook 有助于弥合不同模态之间的差距。整个框架是端到端优化的。

在第 3.1 节中,我们介绍了多模态 codebook 学习,它是如何优化的,以及如何利用它来解决多模态输入之间的分布不匹配问题。在第 3.2 节中,我们介绍了如何在师生蒸馏(distillation)学习公式下实现单峰和跨模态对齐。最后,我们在第 3.3节 中解释了我们提出的两个组件是如何集成到 V&L 框架中的。

3.1 多模态 codebook 学习

我们提议学习一本 codebook 以便于对齐多模态语义。这是一个可学习的原型(prototypes)或码字(codewords)的集合。在本文中,我们可以互换使用它们。使用 codebook ,我们将图像和文本编码到联合视觉语言嵌入空间中,并通过对比它们的原型分配来学习对齐。codebook 也可以被解释为配对数据的基本特征分布(underlying feature distribution)[6]。通过这种方式,通过将每个模态的特征与 codebook 对齐,我们隐式地间接对齐多模态特征。换句话说,codebook 充当了模态之间的“桥梁”(见图1)。

我们将可学习 codebook 表示为 C = c 1 , c 2 , . . . , c K ∈ R d c ∗ K C={c_1, c_2, ..., c_K} \in R^{d_c*K} C=c1,c2,...,cKRdcK,其中 d c d_c dc 是每个代码的维度并且 K K K 等于 codewords 的数量(即4K)。我们设置 d c = 256 d_c=256 dc=256,与投影图像/文本特征的尺寸相同。每个 c ∈ C c \in C cC 都是一个原型。

给定 N N N 个图像或文本特征向量 Z m = [ z 1 m , … , z N m ] Z^m=[ z^m_1, …, z^m_N] Zm=[z1m,,zNm](上标 m m m 表示从动量教师编码器提取的特征),我们计算从特征向量到原型的最优成本映射。我们将这种映射表示为使用最优传输[1, 6]获得的运输计划 T T T。在不损失一般性的情况下,我们将 z z z 表示为图像或文本的投影特征,并优化以下目标,
L o t = min ⁡ T ∈ ∏ ( u , v ) ∑ i = 1 N ∑ j = 1 K T i j ⋅ d ( z i m , c j ) = min ⁡ T ∈ ∏ ( u , v ) ⟨ T , D ⟩ ( 1 ) L_{ot}= \displaystyle\min_{T \in \prod(u,v)}\sum_{i=1}^N\sum_{j=1}^KT_{ij}·d(z_i^m, c_j) = \min_{T \in \prod(u, v)} ⟨T,D⟩\kern10em(1) Lot=T(u,v)mini=1Nj=1KTijd(zim,cj)=T(u,v)minT,D(1)
图片3
其中, ∏ ( u , v ) = T ∈ R + N ∗ K ∣ T 1 K = 1 N 1 N , T T 1 N = 1 K 1 K \prod(u, v)={T \in R_+^{N*K} | T1_K=\dfrac{1}{N}1_N, T^T1_N=\dfrac{1} {K}1_K} (u,v)=TR+NKT1K=N11N,TT1N=K11K 1 N 1_N 1N 表示 N N N 维全一向量。 D D D 是由 D i j = d ( z i m , c j ) ( d ( ⋅ , ⋅ ) = 1 − c o s ( ⋅ , ⋅ ) ) D_{ij}=d(z_i^m, c_j) (d(·,·)=1-cos(·,·)) Dij=d(zim,cj)(d()=1cos()) ⟨ T , D ⟩ = T r ( T T D ) ⟨T, D⟩=Tr(T^TD) T,D=Tr(TTD) 给出的成本矩阵(cost matrix D),表示 Frobenius 点积。我们在算法1 中使用 T g T_g T

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值