| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 人工智能 -> CoCa: Contrastive Captioners are Image-Text Foundation Models翻译 -> 正文阅读 |
|
[人工智能]CoCa: Contrastive Captioners are Image-Text Foundation Models翻译 |
点击下载论文点击查看代码摘要????在计算机视觉中探索大规模预训练基础模型是具有重大意义的,因为这些模型能很快被迁移到很多下游任务中。本篇论文提出了对比生成器(即CoCa)模型,结合对比损失和生成损失预训练一个基于图片-文本编码器-解码器的极简设计的基础模型,因此,它包含了像CLIP这种基于对比方法和像 SimVLM这种基于生成方法的建模能力。与标准的基于编码器-解码器的所有的解码器层关注编码器的输出的transformers相比, CoCa删除了在解码器层的前半部分的交叉关注而去编码单模的文本表征,并且和解码器层的剩余部分级联,后半部分交叉关注图片编码器是为了获取多模的图片-文本表征。我们在单模的图片和文本嵌入中应用了一个对比损失函数。除此之外,在多模解码器输出上应用了一个生成损失函数,多模解码器输出是用来自回归的预测文本 tokens。通过共享相同的计算图,两个训练目标是用极小的开销达到高效的计算。 CoCa是在网页级别的文本数据和带标注的图片上通过将所有标签简单的视为文本进行端到端和从零开始的预训练,无缝的统一了有监督的自然语言来做表征学习。根据实验CoCa在zero-shot(不用再学习而直接使用)迁移,或者在小的特定任务自适应等跨视觉识别,跨模态检索,多模态理解,和图片生成等这些广泛的下游任务上达到了目前最好的性能。尤其是在 ImageNet分类任务上,CoCa获得了 86.3%的zero-shot top-1精度,用一个冻结编码器和学习过的分类头达到了 90.6%。用一个微调的编码器在 ImageNet达到了目前最好的91.0%的 top-1精度。 1、引言????深度学习最近见证了基础语言模型的兴起比如;BERT, T5 , GPT-3等这些模型在网络级别的数据上预训练,通过 直接迁移,少量样本进行学习后的迁移,或者全样本学习后的迁移学习论证了它拥有泛化的处理多任务的能力。与针对特定任务的某个模型相比,预训练基础模型对大量的下游任务来说能分摊训练成本。提供了突破模型规模限制的机会以达到人类智商的水平。 2、相关工作视觉预训练 在大规模带标注的数据集比如 ImageNet、 Instagram或者JFT上预训练 ConvNets或者Transformers已经变成了一个很受欢迎的策略去解决包括分类,定位,分割,视频识别、追踪,和很多其他问题的视觉识别问题。最近,自监督预训练方法也在被探索,BEiT按照 BERT在自然语言处理中那样,提出了掩码图片模型任务,并用量化的视觉token ids作为预测目标。 MAE 和 SimMIM移除了所需的图片 tokenizer并直接使用一个轻量的解码器或者投射层来做回归像素值。尽管如此,这些方法只能用来学习视觉模型。因此他们不能应用到需要对图像和文本输入进行联合推理的任务上。 3、方法????我们首先回顾这三个不同的基础模型家族,他们结合了有监督的自然语言任务:单编码器的分类预训练模型,双编码器的对比学习模型,编码器-解码器的图片生成模型,然后我们介绍CoCa,它在一个简单架构下共享对比学习和image-to-caption的指标。进一步的我们会讨论CoCa模型如何能快速的无需再训练而直接迁移或者很少任务自适应的迁移到下游任务当中。 3.1、有监督的自然语言单编码器分类 单编码器的分类方法在一个大的带标注的图片数据集上通过图片分类预训练一个视觉编码器,其中,带标注的文本的词汇表通常是固定的,这些带标注的图片通常映射到离散的类别向量使用交叉熵损失去进行学习如下:
L
C
l
s
=
?
p
(
y
)
l
o
g
q
θ
(
x
)
,
(
1
)
\mathcal L_{Cls} = -p(y)logq_θ(x),\quad\quad\quad\quad\quad\quad\quad\quad(1)
LCls?=?p(y)logqθ?(x),(1)其中p(y)是一个类别,多个类别或者来自真实标签y的光滑标签分布,已学习过的图片编码器作为下游任务的一个泛化的视觉表征提取器。 3.2、对比生成器预训练????图二描述了所提的对比生成器(CoCa):一个简单的编码器-解码器方法它无缝的结合了三中训练模式。与标准的图片-文本编码器-解码器模型类似,CoCa通过神经网络编码器将图片编码成指纹表征。例如:视觉 transformer (ViT)(默认用ViT,也可以是其他的图片编码器像ConvNets),用一个带有随机掩码的transformer解码器解码文本。不像标准的transformers解码器, CoCa删除了解码器层前半部分的交叉注意力而去编码单模的文本表征,级联解码器层的剩余部分,交叉注意图片编码器来获取多模图片-文本表征。最终,CoCa解码器同时产生了单模和多模的文本表征这允许我们应用对比和生成目标损失如:
L
C
o
C
a
=
λ
C
o
n
?
L
C
o
n
+
λ
C
a
p
?
L
C
a
p
,
(
4
)
\mathcal L_{CoCa} = \lambda_{Con}·\mathcal L_{Con}+\lambda_{Cap}·\mathcal L_{Cap}, \quad\quad\quad\quad(4)
LCoCa?=λCon??LCon?+λCap??LCap?,(4)其中
λ
C
o
n
\lambda_{Con}
λCon?和
λ
C
a
p
\lambda_{Cap}
λCap?是损失权重超参数。我们注意到当词是所有标签名的集合时,单编码器交叉熵分类目标能用被应用在带标注的图片数据上的生成方法的一种特殊情况来解释。 注意力池 值得注意的是对比损失在每个图片上使用一个单一的嵌入然而解码器通常关注在编码器-解码器的生成器中的一个图片输出 tokens序列。我们的初步实验显示,一个单一的被池化过的图片嵌入作为一个全局表征有助于视觉识别任务。然而更多的视觉tokens(因此要跟多的微调)有助于要求是区域级特征的多模态理解任务。因此,CoCa采用了针对特定任务的注意力池去定制视觉表征用作不同类型的训练目标和下游任务。因此,一个池化器是一个带有
n
q
u
e
r
y
n_{query}
nquery?个可学习的 queries的单一多头注意力,池化器的编码器输出即作为键也作为值。通过这,模型为了具有两个训练目标的能力去学习不同长度的池化嵌入。如图二所示。使用特定任务的池化操作不仅解决了不同任务的不同需求,而且引入池化器作为自然语言任务的适配器。我们在预训练时用注意力池化器来应对
n
q
u
e
r
y
=
256
n_{query} = 256
nquery?=256的生成损失和
n
q
u
e
r
y
=
1
n_{query} = 1
nquery?=1的对比损失。 3.3、为下游任务使用对比生成器无需再学习而直接迁移一个预训练过的CoCa模型利用图片和文本输入用zero-shot的方式执行过很多任务。包括: zero-shot图片分类 、 zero-shot图片-文本交叉检索 、 zero-shot视频-文本交叉检索。根据以前的[12, 31]中的实验, 这里的“zero-shot”和分类当中的在预训练阶段的zero-shot学习不同,模型可能看到了相关的有监督信息但是迁移协议中用的是无监督样本。对于预训练数据,我们严格遵循[13, 31]中的去重程序,筛选掉下游任务当中的所有的邻域样本。 CoCa应用在视频动作识别上我们用一个简单的方法让一个可学习的 CoCa模型应用在了视频动作识别任务上。我们首先取视频的多个帧并将每个帧分别的填充到共享的图片编码器中,如表三所示。对于冻结的特征评估或者微调,我们在空间和时间特征tokens的顶部学习一个额外的池化器,该池化器具有softmax交叉熵损失。注意池化器有一个单一的查询token,此外在整个空间和时间token的池化操作的计算代价并不昂贵。对于 zero-shot视频-文本检索,我们用一个非常简单的方法计算16帧的视频的平均嵌入值(帧是从视频中均匀采样的)。当计算检索指标时,我们也将每个视频的生成,编码为目标嵌入。 实验????在这部分,我们首先描述我们实验设置的细节,主要结果是以视觉识别任务,跨模态任务,图片文本说明,和多模态理解任务的形式呈现出来。我们的主要结果由为三个类别的下游任务实施: zero-shot迁移,冻结特征评估和微调。我们也进行了包括训练目标和架构设计的消融实验。 4.1、训练设置数据正如3.2部分讨论的,CoCa是在网络级别的文本数据和将所有标签简单的视为文本的带标注的图片上在单一阶段从零开始预训练。我们使用将标签名作为文本对的JFT-3B数据集,带有噪声文本的ALIGN数据集。与[32]类似,我们随机打乱和拼接在JFT中的每个图片的标签和 [12]中的一个随机采样。一个JFT图像的最终文本标签示例类似于“猫、动物的照片”。不像之前的模型,他们也用这两种数据集的组合。我们为了简单和预训练的高效性,从头开始训练所有的模型参数同时没有预训练一个带有有监督的交叉熵损失的图片编码器。为了确保公平的进行评估,我们严格按照在[13, 31]中引入的去重程序筛选掉我们的下游任务中的所有的邻域样本。为了标记文本输入,我们用一个词大小为64k的句子片段模型在样本预训练数据集上进行训练。 4.2、主要结果????我们在一系列广泛的下游任务中拓展评估CoCa作为一个预训练基础模型的能力。我们主要考虑三个类别的核心任务,检测 (1)视觉识别, (2)跨模态对齐,(3)图片生成和多模态理解的能力。因为CoCa同时产生单模表征对齐和融合多模嵌入,使得它用较小的自适应迁移到三个任务组中。图四概括了CoCa和其他双-编码器、编码器-解码器基础模型和目前最好的针对特定任务的方法的基准模型的性能比较。 CoCa用一个单一的预训练检查点在三个类别的任务上达到了目前最好的结果。 4.2.1、视觉识别任务????我们的视觉识别任务是建立在以 ImageNet为图像识别的基准数据集和多个视频数据集,包括:Kinetics-400 Kinetics-600, Kinetics-700,和Moments-in-Time作为视频动作识别的平台。值得注意的是 CoCa只在图片数据上预训练,不用访问任何额外的视频数据集。我们将coca的编码器单独应用到视频帧上,没有早期的时间信息的融合,然而coca的视频模型的性能仍然比很多时空早起融合的视频模型要好。 冻结特征我们在图片分类和视频动作识别上应用了一个预训练冻结的coca模型。编码器是应用在了两个任务上同时丢弃了解码器。正如在3.3部分讨论的那样,在CoCa编码器嵌入输出的顶部有一个注意力池和softmax交叉熵损失层一起学习。对于视频分类,单一查询-token是根据加权的空间块x时间帧的所有tokens的输出学习的。我们在注意力池化器和softmax上设置学习率为 5 ×
10
0
?
4
100^{-4}
100?4,批量大小为128,和cosine学习率调度。对于视频动作识别,我们用相同的设置方法对比了coca和其他方法(例如:没有额外的有监督视频数据,没有作为模型输出的音频信号)。如表2所述,不用微调整个编码器,与有针对性特定图片的模型相比 CoCa已经达到了很具竞争性的 Top-1分类精度,在视频任务上胜过了以前最好的针对特定方法的模型。 4.2.2 跨模态对齐任务。????不像其他的基于融合的基础方法,coca能很自然的应用到跨模态对齐任务,因为它能生成对齐的图片和文本单模嵌入。尤其是,我们对zero-shot设置感兴趣,在zero-shot这里所有的预训练后的参数都是冻结的,直接用来提取嵌入特征。在预训练期间,我们把相同的嵌入用在对比损失上。因此没有用多模的文本解码器。 Zero-Shot图片文本检索我们在 MSCOCO和Flickr30K这两个标准的图片文本检索基准上评估 CoCa。按照CLIP的设置,我们首先独立的将每个图片/文本放到对应的编码器中,获得在测试集中的所有图片/文本嵌入特征。然后,我们在整个测试数据集上使用基于cosine相似度得分进行检索。如表三所述,coca在图片检索文本和文本检索图片上与以前的方法相比,在所有指标上都有重大提升。除此之外,我们的模型的参数是高效的。CoCa-Base模型已经远胜过其他基准模型, CoCa-Large胜过了 Florence(其参数量和ViT-Huge相当),这表明CoCa学习到了很好的单模表征,并且把跨模式对齐做的很好。 4.2.3 图片生成和多模理解任务????CoCa的另一个关键优势是它能够将多模态嵌入处理为一个按照生成目标训练的编码器-解码器模型。因此,CoCa能执行图片生成和多模理解的下游任务并且不用做任何进一步的融合自适应。总的来说,实验结果表明:coca拥有编码器-解码器模型的优势去获得更强的多模态理解和生成能力。此外,还具有视觉和检索功能作为双编码器的一种方法。 多模理解正如在 [16]中的那样,编码器-解码器模型的输出能联合编码图片和文本输入,可用于需要在两种模式上进行推理的任务。我们考虑到三个流行的多模理解基准:视觉问答,视觉蕴含,视觉推理。我们主要按照 [16]中的设置,在解码器输出的顶部训练线性分类器去预测答案。表六上的结果表明 CoCa大幅领先视觉-语言预训练基准模型并且在上述的三个任务上达到了目前最好的性能。虽然以前的双编码器模型不包含融合层,但是对于下游多模理解任务就需要一个额外的VL预处理阶段。CoCa包含了三种预训练模式,经过轻微的微调能在VL任务上获得更好的性能。 消融分析????我们在一个较小的模型变体上对 CoCa的属性进行了广泛地消融实验。特别的,我们训练用一个减少了12层解码器层和总批量大小是4096的CoCa-Base模型。我们主要使用 zero-shot的图片分类和VQA进行评估,因为前者包含了视觉表征质量和跨模态对齐,然而后者却代表着多模态推理。 训练目标我们研究两个训练目标的有效性和与单一目标的CoCa变体的比较,在表8b中显示。与仅有对比损失的模型相比,CoCa在 zero-shot对齐和VQA上都有重大提升(注意:对于VQA,只需要对比损失的模型要求一个额外的融合)。CoCa在 VQA上胜过了同等的只需要生成损失的模型尽管它能做额外检索任务比如: zero-shot分类。表8c进一步的研究了损失比率。表明,生成损失不仅能提高VQA而且能够改进模型之间的 zero-shot对齐。我们假设生成目标学习细粒度的文本表示,从而进一步提高文本理解。最后,我们在表 8b上比较了训练代价,发现 CoCa和只有生成损失的模型一样高效,因为在两个目标之间共享计算。这些表明,结合两种损失催生出了新的能力和更好的性能,用较少的额外代价。 更广泛的影响????我们的工作表现出了一个在网络级别的数据集上的图片-文本的预训练方法,这是一种能在 zero-shot或者轻微的微调下迁移到广泛的下游任务中的能力。尽管预训练模型拥有在很多视觉和视觉-语言任务上工作的能力,我们注意到,我们的模型和以前的方法使用相同的预训练数据,在实际使用模型时对模型的数据和结果做额外的分析是很有必要的。在有损的图片上,我们的coca模型表现的更健壮。但是它仍然易受其他有损图片的影响,这些有损图片是那些在当前的评估集或者真实场景中尚未出现过。对于数据和模型,进一步的交流探索是要求我们去理解其深远影响,这些影响包括但不限于公平、社会偏见和潜在的滥用。 6、结论????在本篇论文中,我们展示了Contrastive Captioners模型,一个新的图片-文本基础模型家族,它包括已存在的使用有监督的自然语言处理的视觉预训练策略。在一个单一阶段来自大量数据源在图片-文本对上进行预训练。 CoCa在一个编码器-解码器模型中高效的结合了对比和生成目标损失。CoCa在广泛的视觉和视觉-语言问题中用一个单检查点取得了一系列的目前最好的性能。我们的工作弥补了各种预训练方法之间的差距。我们希望它能为图片-文本基础模型建立起新的方向。 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 3:47:13- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |