EVA-CLIP:在规模上改进CLIP的训练技术

2024-06-12 09:28

本文主要是介绍EVA-CLIP:在规模上改进CLIP的训练技术,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

摘要

对比性语言-图像预训练,简称CLIP,因其在各种场景中的潜力而备受关注。在本文中,我们提出了EVA-CLIP,一系列模型,这些模型显著提高了CLIP训练的效率和有效性。我们的方法结合了新的表示学习、优化和增强技术,使得EVA-CLIP在参数数量相同的情况下,与之前的CLIP模型相比,取得了更优的性能,但训练成本却显著降低。值得注意的是,我们最大的50亿参数的EVA-02-CLIP-E/14+模型,仅通过90亿个样本的训练,就在ImageNet-1K验证集上实现了**82.0%的零次学习(zero-shot)top1的准确率。一个参数更小的EVA-02CLIP-L/14+模型,仅包含4.3亿参数和60亿个样本,也在ImageNet-1K验证集上达到了80.4%**的零次学习top1的准确率。为了促进开放访问和开放研究,我们将完整的EVA-CLIP套件发布给社区。

1. 引言

CLIP(对比性语言-图像预训练)是一种强大的视觉-语言基础模型,它利用大规模数据集通过对比性图像-文本预训练来连接视觉和语言,从而学习丰富的视觉表示。CLIP模型表现出强大的零次学习迁移能力[39],并且有可能增强多模态和单模态视觉任务,如AI生成内容应用[41, 20, 32, 45]。尽管CLIP模型具有重要意义,但由于其高昂的计算成本和在扩大规模时出现的训练不稳定问题,训练CLIP模型仍然是一个不可避免的挑战。
在这里插入图片描述

在本文中,我们提出了EVA-CLIP,一系列模型,为训练CLIP模型提供了一个可行、高效且有效的解决方案。我们的方法采用了几种技术,这些技术可以显著减少训练成本,稳定训练过程并提高零次学习性能,包括使用预训练的EVA[20,19]表示来初始化CLIP,使用LAMB[52]优化器,随机丢弃输入标记[33],以及一个名为flash attention的加速技巧[15]。通过这些技术,我们能够在降低计算成本的同时,在大规模上极大地稳定CLIP模型的训练,并在广泛的零次学习基准测试中,以比从头开始训练的对等模型更少的样本量取得更好的性能。我们最大的50亿参数的EVA02-CLIP-E/14+模型,仅通过90亿个样本的训练,就在ImageNet-1K验证集上实现了 82.0 % 82.0\% 82.0%的零次学习顶一准确率。一个参数更小的EVA-02-CLIP-L/14+模型,仅包含4.3亿参数和60亿个样本,也在ImageNet-1K验证集上达到了 80.4 % 80.4\% 80.4%的零次学习顶一准确率。

2. 方法

训练CLIP[39]模型非常困难且成本高昂。由于需要较大的批次大小以及扩大CLIP模型规模,这可能导致显著的计算资源需求,甚至训练不稳定的问题。幸运的是,EVA-CLIP提供了一个高效且有效的解决方案,它在显著降低计算成本的同时,在广泛的基准测试中实现了卓越的零次学习性能。

更好的初始化。为了改进特征表示并加快CLIP模型的收敛速度,我们采用了预训练的EVA[20,19]模型,该模型结合了图像-文本对比学习的高级语义与掩码图像建模中的几何和结构捕获。我们使用预训练的EVA权重来初始化EVA-CLIP的图像编码器。我们的实证研究表明,预训练的EVA模型不仅帮助EVA-CLIP在各种零次学习基准测试中取得了优越的性能,还加快了训练过程并使其更加稳定。

优化器。我们使用LAMB[52]优化器来训练我们的EVA-CLIP模型。LAMB优化器是专门为大规模批次训练设计的,其自适应元素更新和分层学习率提高了训练效率并加速了收敛速度。鉴于训练CLIP模型所使用的异常大的批次大小(原始CLIP模型使用批次大小为32,768,而一些开源的CLIP模型甚至使用超过100k的极大批次大小),EVA-CLIP表明LAMB优化器是训练大规模CLIP模型的首选优化器。

FLIP[33]在大规模设置中展示了有前景的结果。在这项工作中,我们利用FLIP来提高训练CLIP模型的时间效率。具体地说,我们在训练过程中随机屏蔽50%的图像标记,这将时间复杂度显著降低了一半。这种方法还允许在不增加任何内存成本的情况下,将批次大小增加两倍。

3. 实验

设置。在我们的实验中,我们使用EVA[20,19]的预训练权重来初始化视觉编码器,并使用OpenAI CLIP[39]或OpenCLIP[27]的预训练权重来初始化文本编码器。具体来说,EVA-01-CLIP的视觉编码器使用EVA-01[20]的预训练权重进行初始化,而EVA-02-CLIP的视觉编码器则使用EVA-02[19]的预训练权重进行初始化。我们采用LAMB优化器,其中 β 1 = 0.9 \beta_{1}=0.9 β1=0.9 β 2 = 0.98 \beta_{2}=0.98 β2=0.98,权重衰减为0.05。我们对视觉编码器和文本编码器应用了不同的学习率和层衰减率,以确保最佳训练效果。例如,在EVA-01-CLIP-g的前2000个预热步骤中,我们将视觉编码器的学习率设置为 2 e − 4 2 \mathrm{e}-4 2e4,文本编码器的学习率设置为 2 e − 5 2 \mathrm{e}-5 2e5。之后,我们在剩余的训练步骤中将学习率线性衰减至0。为了进一步改进训练过程,我们使用了DeepSpeed优化库[43],配合ZeRO一阶优化器[40]、梯度检查点[10]和Flash Attention[15]来节省内存并加速训练过程。我们发现,在EVA-01-CLIP-g的训练过程中,使用 f p 16 \mathrm{fp}16 fp16精度和动态损失缩放足够稳定,而为了稳定EVA-02-CLIP-E+的训练过程,则必须使用bfloat16格式。

为了构建我们的训练数据集Merged-2B,我们将LAION-2B[45]数据集中的16亿个样本与COYO-700M[6]数据集中的4亿个样本合并。
在这里插入图片描述
在这里插入图片描述

系统级比较。我们在表1中展示了CLIP模型配置以及ImageNet变体和ObjectNet上的零次学习准确率。EVA-02-CLIP-E/14+在所有6个基准测试中平均达到了最高的零次学习top-1准确率 80.9 % 80.9\% 80.9%,并且性能下降最小(top-1准确率差距为 1.1 % 1.1\% 1.1%)。值得注意的是,这一结果在ImageNet上比之前的最大且最好的开源模型OpenCLIP-G/14[1]高出了 1.9 % 1.9\% 1.9%,并且在6个基准测试的平均准确率上高出了 4.7 % 4.7\% 4.7%。令人瞩目的是,通过这些强大的技术,大型EVA-02-CLIP-L模型在ImageNet上的零次学习top-1准确率甚至可以达到 80.4 % 80.4\% 80.4%,仅使用大约 ∼ 1 / 6 \sim 1/6 1/6的参数和 ∼ 1 / 6 \sim 1/6 1/6的图像-文本训练样本就超过了OpenCLIP G/14。
在这里插入图片描述

在表2中,我们进一步展示了我们的方法在所有27个零次学习图像分类基准测试上的有效性和鲁棒性。我们最大的EVA-02-CLIP-E/14+模型在所有27个基准测试上平均达到了 77.5 % 77.5\% 77.5%的准确率。值得注意的是,我们的EVA02-CLIP-L/14+模型,其模型大小仅为大约一半,图像-文本对数量也仅为大约五分之一,但在平均准确率上比OpenCLIP-H/14提高了1.2个百分点。
在这里插入图片描述

对于视频分类,我们仅从每个视频中采样一个中心帧,将其转化为图像分类任务。按照常规设置,我们报告了UCF-101[47]的top-1准确率,以及Kinetics-400[9]、Kinetics-600[7]和Kinetics-700[8]的top-1和top-5准确率的平均值。在表3中,我们展示了EVA-CLIP在零次学习视频识别基准测试中也非常有效。
在这里插入图片描述

表4报告了在Flickr30K[53]和COCO[34]上的零次学习图像和文本检索结果。EVA-CLIP在基础模型和大模型尺寸上都优于所有竞争对手。虽然EVA02-CLIP-E/14的零次学习检索性能略低于OpenCLIP-G/14,但结果仍然具有竞争力。我们推测主要原因是检索任务更多地依赖于文本编码器的容量和训练样本的数量,相比之下,EVA-02CLIP-E/14的文本编码器容量较小,训练样本数量也少于OpenCLIP-G/14。为此,我们使用具有更大容量文本编码器和更多训练样本的EVA-02-CLIP-E/14+进行了训练。结果表明,这个改进后的模型可以显著提高检索性能,并在零次学习文本检索任务上超越OpenCLIP-G/14。

在这里插入图片描述

消融研究。我们首先在表5中对EVA-CLIP的设计进行了消融实验。图像编码器是ViT-B/16[17]模型,文本编码器是CLIP-B-16。我们使用32k的批大小进行了实验,并在ImageNet-1K验证集上评估了零次学习准确率。值得注意的是,我们使用的训练计划比最终模型更短。

我们在LAION-400M[46]数据集上使用AdamW[35]优化器训练了我们的模型。与从头开始训练相比,使用EVA初始化在ImageNet上的零次学习top-1准确率提高了 1.8 % 1.8\% 1.8%,而仅使用了大约一半的可见样本。

此外,我们在LAION-400M数据集上使用LAMB优化器代替AdamW与EVA初始化进行了实验。这导致在ImageNet上的零次学习top-1准确率提高了 0.7 % 0.7\% 0.7%,而使用了相同的可见样本。当应用 50 % 50\% 50%的掩码时,准确率下降了 0.7 % 0.7\% 0.7%,但训练速度提高了 2 × 2\times 2×。这些结果突出了LAMB优化器在训练高性能模型中的重要性,以及在不显著降低准确率的情况下通过掩码图像标记来加快训练速度的策略。

我们还使用LAION-2B数据集进行了实验,结合了EVA初始化、LAMB优化器和 50 % 50\% 50%的掩码,这相对于LAION-400M数据集提高了 0.7 % 0.7\% 0.7%的准确率。当使用合并后的2B数据集时,仅需要一半的样本就能达到相同的top-1准确率。这证明了数据集大小的重要性以及通过合并两个数据集实现的显著收敛速度。

计算成本。在表6中,我们展示了我们的实现所需的内存和时间成本。如表所示,掩码 50 % 50\% 50%的图像标记可以加速训练时间达 2 × 2\times 2×,而使用Flash Attention可以进一步减少额外的 15 % 15\% 15%训练时间。
在这里插入图片描述

使用所有这些技术,我们可以在比其他CLIP模型更低的预算下训练EVA-CLIP。例如,EVA-CLIP-B/16可以在批大小为 32 k 32\mathrm{k} 32k的情况下进行训练,并使用16个NVIDIA 40GB-A100 GPU在300小时内收敛。类似地,十亿规模的EVA CLIP g / 14 \mathrm{g} / 14 g/14可以在批大小为 65 k 65\mathrm{k} 65k的情况下进行训练,并使用64个NVIDIA 40G-A100 GPU在不到25天的时间内训练12B样本。这些结果展示了我们的方法在保持训练时间和GPU内存利用率之间最优平衡的同时,实现最先进结果的可扩展性和有效性。
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

这篇关于EVA-CLIP:在规模上改进CLIP的训练技术的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1053821

相关文章

【专题】2024飞行汽车技术全景报告合集PDF分享(附原数据表)

原文链接: https://tecdat.cn/?p=37628 6月16日,小鹏汇天旅航者X2在北京大兴国际机场临空经济区完成首飞,这也是小鹏汇天的产品在京津冀地区进行的首次飞行。小鹏汇天方面还表示,公司准备量产,并计划今年四季度开启预售小鹏汇天分体式飞行汽车,探索分体式飞行汽车城际通勤。阅读原文,获取专题报告合集全文,解锁文末271份飞行汽车相关行业研究报告。 据悉,业内人士对飞行汽车行业

金融业开源技术 术语

金融业开源技术  术语 1  范围 本文件界定了金融业开源技术的常用术语。 本文件适用于金融业中涉及开源技术的相关标准及规范性文件制定和信息沟通等活动。

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出

AI(文生语音)-TTS 技术线路探索学习:从拼接式参数化方法到Tacotron端到端输出 在数字化时代,文本到语音(Text-to-Speech, TTS)技术已成为人机交互的关键桥梁,无论是为视障人士提供辅助阅读,还是为智能助手注入声音的灵魂,TTS 技术都扮演着至关重要的角色。从最初的拼接式方法到参数化技术,再到现今的深度学习解决方案,TTS 技术经历了一段长足的进步。这篇文章将带您穿越时

系统架构设计师: 信息安全技术

简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 系统架构设计师: 信息安全技术前言信息安全的基本要素:信息安全的范围:安全措施的目标:访问控制技术要素:访问控制包括:等保

MiniGPT-3D, 首个高效的3D点云大语言模型,仅需一张RTX3090显卡,训练一天时间,已开源

项目主页:https://tangyuan96.github.io/minigpt_3d_project_page/ 代码:https://github.com/TangYuan96/MiniGPT-3D 论文:https://arxiv.org/pdf/2405.01413 MiniGPT-3D在多个任务上取得了SoTA,被ACM MM2024接收,只拥有47.8M的可训练参数,在一张RTX

前端技术(七)——less 教程

一、less简介 1. less是什么? less是一种动态样式语言,属于css预处理器的范畴,它扩展了CSS语言,增加了变量、Mixin、函数等特性,使CSS 更易维护和扩展LESS 既可以在 客户端 上运行 ,也可以借助Node.js在服务端运行。 less的中文官网:https://lesscss.cn/ 2. less编译工具 koala 官网 http://koala-app.

Spark MLlib模型训练—聚类算法 PIC(Power Iteration Clustering)

Spark MLlib模型训练—聚类算法 PIC(Power Iteration Clustering) Power Iteration Clustering (PIC) 是一种基于图的聚类算法,用于在大规模数据集上进行高效的社区检测。PIC 算法的核心思想是通过迭代图的幂运算来发现数据中的潜在簇。该算法适用于处理大规模图数据,特别是在社交网络分析、推荐系统和生物信息学等领域具有广泛应用。Spa

Spring的设计⽬标——《Spring技术内幕》

读《Spring技术内幕》第二版,计文柯著。 如果我们要简要地描述Spring的设计⽬标,可以这么说,Spring为开发者提供的是⼀个⼀站式的轻量级应⽤开发框架(平台)。 作为平台,Spring抽象了我们在 许多应⽤开发中遇到的共性问题;同时,作为⼀个轻量级的应⽤开发框架,Spring和传统的J2EE开发相⽐,有其⾃⾝的特点。 通过这些⾃⾝的特点,Spring充分体现了它的设计理念:在

SigLIP——采用sigmoid损失的图文预训练方式

SigLIP——采用sigmoid损失的图文预训练方式 FesianXu 20240825 at Wechat Search Team 前言 CLIP中的infoNCE损失是一种对比性损失,在SigLIP这个工作中,作者提出采用非对比性的sigmoid损失,能够更高效地进行图文预训练,本文进行介绍。如有谬误请见谅并联系指出,本文遵守CC 4.0 BY-SA版权协议,转载请联系作者并注

一种改进的red5集群方案的应用、基于Red5服务器集群负载均衡调度算法研究

转自: 一种改进的red5集群方案的应用: http://wenku.baidu.com/link?url=jYQ1wNwHVBqJ-5XCYq0PRligp6Y5q6BYXyISUsF56My8DP8dc9CZ4pZvpPz1abxJn8fojMrL0IyfmMHStpvkotqC1RWlRMGnzVL1X4IPOa_  基于Red5服务器集群负载均衡调度算法研究 http://ww