DeepMind:谁说卷积网络不如ViT?

机器之心报道

编辑:陈萍、小舟

本文通过评估按比例扩大的 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 预算。直观上来说,更大的模型具有更大的容量,因此能够更好地适应新任务。在某些情况下,稍大的学习率(在预训练期间)在微调后也能获得更好的性能。




© THE END 

转载请联系本公众号获得授权

投稿或寻求报道:content@jiqizhixin.com

相关推荐

  • 每人10万元,这13位青年人才获得2023年度字节跳动奖学金
  • OpenAI 组建安全 AGI 新团队!应对AI“潘多拉魔盒”
  • 音乐智能体登场!我和杰伦的距离或许只差一个 MusicAgent!
  • ICLR 2024 再现抄袭风波!原作者发帖实锤:过半方法都抄了
  • 奔3了,月薪多少才正常?
  • 最牛逼的 Java 框架,不接受反驳!
  • 【Python】盘点常见的AutoEDA工具库
  • 一文揭秘 Vue3 组件库的优雅打包与细节
  • 超详细讲解H5移动端适配
  • 300元一年,QQ邮箱准备收费了
  • 今年这行情......我看大家还是多留一手准备吧 !
  • TimeGPT:时间序列预测的第一个基础模型
  • 深入理解 Spring 注解驱动配置与 XML 配置的融合与区别
  • 独家专访@爱可可-爱生活:如何做好科学研究(干货满满)
  • 七张图解锁Mybatis整体脉络,让你轻松拿捏面试官
  • 一套万能通用的异步处理方案
  • 一年私吞260余万元?程序员利用漏洞篡改ETC余额,已被刑拘
  • 小米 14 系列手机起售价 3999 元;新神经网络在语言归纳能力上接近人类;亚马逊推出人工智能图像生成功能|极客头条
  • 如何防止网站信息泄露(复制/水印/控制台)
  • 一文揭秘Vue3组件库的优雅打包与细节