来自智源曹越团队在EVA的优化改进方面的工作EVA-02,
项目地址:https://github.com/baaivision/EVA
研究动机如下:在CV领域,训练、调优和评估非常大的视觉模型需要大量的计算资源,限制了许多研究人员和开发者的参与。因此,本研究主要目的是提供一种高效且性能强大的预训练方法,不仅能够在多种下游任务中展现出色的迁移学习能力,而且还能显著减少参数数量和计算成本。
01、模型架构
EVA-02的基础是一个改进版的纯Transformer架构,该架构在原始ViT的基础上进行了若干重要的修改,以更好地适应大规模预训练任务的需求。这些修改包括norm,参数初始化,FFN,位置编码方式,如下表所示:
- 多头自注意力(MHSA)层:使用MHSA层来捕获图像中的全局空间信息。然后相比于相对位置编码(Relative Position Encoding, RP)引入了旋转位置编码(Rotary Position Embedding, RoPE),以增强模型对位置信息的理解。
- 位置感知前馈网络(FFN):引入了SwiGLU机制,替代传统的GELU激活函数,以增强模型的表达能力。
- 归一化方案:对于较大的EVA-02模型(如B和L),采用了sub-LN(子层归一化)作为默认的归一化方案,去掉了内部注意力层的层归一化(Layer Normalization, LN)。对于较小的模型(如Ti和S),则继续使用标准的预归一化配置。
- 权重初始化:所有TrV(Transformer Vision)块中的权重都使用Xavier正态分布初始化,其中MHSA和FFN的权重矩阵是从特定的标准差采样的高斯分布中抽取的。
02、模型训练
在预训练过程中,作者选择了使用一个具有10亿参数的大型CLIP模型(EVA-CLIP)作为教师模型,以生成目标视觉特征。这一选择基于一个假设:更大的教师模型能够提供更鲁棒和可迁移的目标表示,从而帮助学生模型(EVA-02)学习到更强的视觉表示。
预训练数据
- 小型模型(EVA-02-Ti, EVA-02-S, EVA-02-B):使用ImageNet-21K数据集进行预训练,该数据集包含1420万张图像。
- 大型模型(EVA-02-L):使用合并的数据集进行预训练,该数据集包括ImageNet-21K、CC12M、CC3M、COCO、ADE20K、Object365和OpenImages,总共有3800万张图像。
预训练过程
- 数据预处理:输入图像被划分为固定大小的patch。随机选择40%的patch并用[MASK]标记替换,形成掩码图像。使用块状掩码策略,即一次遮盖多个相邻的patch,以模拟自然界的遮挡情况。
- 目标表示:使用EVA-CLIP视觉编码器提取目标视觉特征,目标特征经过归一化处理,并通过一个线性层投影到与EVA-02模型输出相同的空间维度。
- 损失函数:使用负余弦相似度作为损失函数,衡量模型预测的特征与目标特征之间的相似度。损失函数定义为:
,其中,
是模型预测的特征,y是目标特征。
预训练结果
大型教师模型(如EVA-CLIP)生成的目标表示更为复杂和精细。这使得学生模型在短时间内难以完全理解和学习这些复杂的表示。因此,学生模型在快速预训练过程中可能无法充分吸收教师模型的知识,导致性能下降。为了验证这一假设,作者延长了预训练的时间,将预训练周期从300个epoch增加到1600个epoch。结果显示,随着预训练时间的增加,学生模型的性能显著提升,相对于使用小型教师模型的基线方法,取得了1.3个百分点的提升。另外结构上的改进也会使得模型在较短的预训练时间内也能获得一定的性能提升。
另外,通过调整模型大小、图像分辨率以及通过中间微调注入标签可以进一步提高性能,仅使用304M参数的EVA-02就可以在IN-1K上达到90.0的top-1精度。
03、实验结果
相比于EVA,EVA-02的性能提升如下:
图像分类
EVA-02在ImageNet-1K验证集上取得了90.0%的微调Top-1准确率,显著优于其教师模型(1011M参数)和其他现有方法。
对比图像-文本预训练(CLIP)
EVA-02-CLIP在ImageNet-1K上的零样本Top-1准确率达到了80.4%,显著优于之前的最佳开源CLIP模型(参数量约为六分之一,训练数据量也为六分之一)。
表9进一步证明了该方法在26个额外的zero-shot分类基准上的有效性和稳健性。并且EVA-02 -CLIP-L模型,只有1/2的模型大小和1/5的图像-文本对,比OpenCLIP-H实现了1.2点的提升。
11中表明EVA-02 -CLIP在zero-shot视频识别基准测试中也相当有效。
目标检测与实例分割
语义分割
04、总结
蒸馏方向的论文,基本都是为了让一个小的student网络在不损失太多性能的前提下,学习到大的teacher网络的特征。
而在大模型时代,EVA探索了student网络能达到的规模上限,并且在测试集上效果略微超过了teacher网络。伴随着EVA-01的成功,EVA-02做了更精细的调整,并且为了变得“可用”,参数量做了大量的缩减,而性能相比EVA-01有明显的提升。
为什么EVA蒸馏后的网络会比teacher网络有更好的效果呢?个人感觉是CLIP确实足够强大,而且EVA中student网络的MIM训练方式足够的好。具体而言CLIP在4亿的图文对上做了预训练,输出的图像特征和语言的特征做了对齐,是一种高维的语义信息,而VIT作为一个backbone,更利于提取到低维的结构特征,并且MIM的方式迫使VIT学习遮挡不变的特征,最终的特征具有了很好的鲁棒性。