本文通过评价按比例扩大的 NFNets,挑战了 ConvNets 在大规模上表现不如 ViTs 的观点。
深度进修的早期成功可归功于卷积神经收集(ConvNets)的发展。近十年来,ConvNets 主导了计较机视觉基准测试。然而近年来,它们越来越多地被 ViTs(Vision Transformers)所取代。
很多人认为,ConvNets 在小型或中等规模的数据集上表现良好,但在那种比较大的收集规模的数据集上却无法与 ViTs 相竞争。
与此同时,CV 社区已经从评价随机初始化收集在特定数据集 (如 ImageNet) 上的机能转变为评价从收集收集的大型通用数据集上预训练的收集的机能。这就提出了一个重要的问题:在类似的计较估算下,Vision Transformers 是否优于预先训练的 ConvNets 架构?
本文,来自 Google DeepMind 的钻研者对这一问题进行了探究,他们通过在不同尺度的 JFT-4B 数据集(用于训练基础模型的大型标签图像数据集)上对多种 NFNet 模型进行预训练,从而获得了类似于 ViTs 在 ImageNet 上的机能。
论文地址:https://arxiv.org/pdf/2310.16764.pdf
本文考虑的预训练计较估算在 0.4k 到 110k TPU-v4 核计较小时之间,并通过增添 NFNet 模型家族的深度和宽度来训练一系列收集。本文观察到这一现象,即 held out 受益与计较估算之间存在 log-log 扩展率(scaling law)。
例如,本文将在 JFT-4B 上预训练的 NFNet 从 0.4k 扩展到 110k TPU-v4 核小时(core hours)。经过微调后,最大的模型达到了 90.4% 的 ImageNet Top-1,在类似的计较估算下与预训练的 ViT 相竞争。
可以说,本文通过评价按比例扩大的 NFNets,挑战了 ConvNets 在大规模数据集上表现不如 ViTs 的观点。此外,在足够的数据和计较条件下,ConvNets 仍然具有竞争力,模型设计和资源比架构更重要。
看到这项钻研后,图灵奖得主 Yann LeCun 表示:「计较是你所需要的,在给定的计较量下,ViT 和 ConvNets 相媲美。尽管 ViTs 在计较机视觉方面的成功令人印象深刻,但在我看来,没有强有力的证据表明,在公平评价时,预训练的 ViT 优于预训练的 ConvNets。」
不过有网友评论 LeCun,他认为 ViT 在多模态模型中的使用可能仍然使它在钻研中具有优势。
来自 Google DeepMind 的钻研者表示:ConvNets 永远不会消失。
接下来我们看看论文具体内容。
预训练的 NFNets 遵循扩展定律
本文在 JFT-4B 上训练了一系列不同深度和宽度的 NFNet 模型。
如下图 2 所示,考证受益与训练模型的计较估算呈线性关系,这与使用 Transformer 进行语言建模(Brown et al., 2020; Hoffmann et al., 2022)时观察到的双对数(log-log)扩展定律相匹配。最佳模型大小和最佳 epoch 估算(完成最低考证受益)都会随着计较估算的增添而增添。
下图 3 绘制了 3 个模型在一系列 epoch 估算中观察到的最佳进修率(最大限度地减少考证受益)。钻研团队发现对于较低的 epoch 估算,NFNet 系列模型都显示出类似的最佳进修率 𝛼 ≈ 1.6。然而,随着 epoch 估算的增添,最优进修率会下降,并且对于大型模型,最优进修率下降得更快。钻研团队表示可以假设最优进修率随着模型大小和 epoch 估算的增添而缓慢且单调地下降,从而在 2 次试验内有效地调整进修率。
值得注意的是,图 2 中一些预训练模型的表现不如预期。钻研团队认为出现这种情况是因为如果训练运行被抢占 / 重新启动,那么数据加载 pipeline 不能保证每个训练样本在每个 epoch 都会采样一次,如果训练运行多次重新启动,则可能导致某些训练样本采样次数不足。
NFNet vs ViT
该钻研在 ImageNet 上的实验表明:经过微调的 NFNet 与 Vision Transformer 机能相当。
具体来说,该钻研在 ImageNet 上微调了预训练 NFNet,并绘制了预训练计较与 Top-1 error 关系图,如上述图 1 所示。
随着计较估算的增添,ImageNet Top-1 准确性不断提高。其中最昂贵的预训练模型是预训练 8 个 epoch 的 NFNet-F7+,ImageNet Top-1 准确率达到了 90.3%,需要大约 110k TPU-v4 核小时进行预训练和 1.6k TPU-v4 核小时进行微调。此外,如果在微调期间额外引入重复增强(repeated augmentation),那么可以完成 90.4% 的 Top-1 准确率。NFNet 从大规模预训练中受益匪浅。
尽管 NFNet 和 ViT 两种模型架构之间存在显著差异,但预训练 NFNet 与预训练 ViT 机能相当。例如,在 JFT-3B 上预训练 210k TPU-v3 核小时后,ViT-g/14 在 ImageNet 上完成了 90.2% 的 Top-1 准确率,在 JFT-3B 上预训练超过 500k TPU-v3 核小时后,ViT-G/14 完成了 90.45% 的 Top-1 准确率。
本文评价了这些模型在 TPU-v4 上的预训练速度,并估计 ViT-g/14 需要 120k TPU-v4 核小时来预训练,而 ViTG/14 则需要 280k TPU-v4 核小时数,SoViT-400m/14 将需要 130k TPU-v4 核小时数。本文使用这些估计来比较图 1 中 ViT 和 NFNet 的预训练效率。钻研注意到,NFNet 针对 TPU-v4 进行了优化,在其他设备上评价时表现较差。
最后,本文注意到,预训练的 checkpoints 在 JFT-4B 上完成了最低的考证受益,然而微调后并不总能在 ImageNet 上完成最高的 Top-1 准确率。特别是,本文发现,在固定的预训练计较估算下,微调机制始终倾向于稍大的模型和稍小的 epoch 估算。直观上来说,更大的模型具有更大的容量,因此能够更好地适应新任务。在某些情况下,稍大的进修率(在预训练期间)在微调后也能获得更好的机能。