论文标题:Unveiling the Backbone-Optimizer Coupling Bias in Visual Representation Learning
论文地址:arxiv.org/abs/2410.06…
源码地址:github.com/Black-Box-O…
TL;DR 本研究深入探讨了视觉领域中骨干网络与优化器之间的偏好关系,揭示了"骨干网络-优化器耦合偏好"(Backbone-Optimizer Coupling Bias, BOCB)的现象。
导读
提及骨干网络(Backbone)和优化器(Optimizer),对于任何一位 AIer 来说,这两个词应该都耳熟能详。在Transformer尚未在视觉领域大放异彩的那个时代,构建卷积神经网络(CNNs)时,SGD(随机梯度下降)或Adam(自适应矩估计)几乎是标配的选择。那时候,有一个普遍的经验之谈:如果你想要省事,那就选择Adam,因为它对学习率的敏感性较低,收敛速度也相对较快;但如果你对模型性能有更高的追求,那么SGD会是更好的选择,因为它往往能够带来更出色的精度表现。
随着视觉Transformer(ViTs)的兴起,基于Vision Transformer的模型几乎无一例外地采用了AdamW(Adam with Weight Decay)作为首选优化器。这种趋势反映了AdamW在处理大规模数据和复杂模型时的效率和稳定性,且表现出很强的耦合性。
但是,相信许多小伙伴这几年来心中都有这样一个Why?今天给大家带来的是由西湖大学联合浙大和达摩院共同发表的最新论文,文章研究构建了20个代表性骨干网络和20个优化器的BOCB基准,发现特定网络设计或优化器会导致BOCB现象,且可能显著影响视觉模型的预训练性能和下游任务泛化性。
通过结合分析工具和具体案例分析,本研究总结了如何设计高性能且低优化器耦合的视觉骨干网络,并评估、推荐了几个通用优化器。作者期望本研究能够激发社区对网络架构和优化器的默认配置和耦合性的质疑,兼顾网络架构的性能和通用性,以帮助大家构建高效且鲁棒的视觉深度学习系统。
背景
众所周知,"ImageNet"挑战赛对于深度学习,特别是在视觉领域的发展起到了至关重要的作用。它催生了一系列先进的网络架构和优化策略,为现代计算机视觉奠定了坚实的基础。然而,随着时间的推移,似乎许多研究者开始默认使用一些固定的优化器和超参数配置,对优化器的选择和配置方面的创新和研究逐渐减少。
这种趋势导致了对于优化器在模型训练中作用的认识可能变得过于简化,许多研究者在没有充分理解和验证的情况下,就墨守成规地使用这些默认设置。这种做法在很大程度上忽视了优化器选择对模型性能可能产生的重要影响,并且缺乏对优化器作用机制的系统性分析和理论论证。因此,深入探究和优化这一领域,可能会为视觉任务的性能提升带来新的突破。
因此,本文深入探索了骨干网络结构和优化器之间的耦合关系,评估并探索这种关系对模型性能、模型参数特征和迁移性的影响和规律。
视觉骨干架构的变迁
首先,让我们通过下面这张图共同回顾过去十年中视觉网络架构的发展历程,以及期间的几个具有代表性的宏观设计。
这里,我们可以粗略的观察两个部分:
- 阶段化宏观设计:现有视觉骨干可分为层次结构化架构(如VGG、ResNet)和各向同性架构(如ViTs和MLP-Mixer)。
- 块内宏观设计:网络块内结构(Block-wise)包含无残差的平网络块、带残差跳连的瓶颈模块、令牌混合(Token Mixer)与通道混合(Channel Mixer)拆分的元网络模块(MetaFormer block)等。
早期的 CNNs 偏好采用的平网络块和瓶颈模块属于同质化块结构,内部不细分空间和通道的建模操作,而Transfomer为代表的现代化深度网络属于异质化块结构,结合残差和前归一化(Pre-normalization)结构分别做空间和通道建模。
主流梯度基优化器
看完骨干网络部分,让我们再一同了解下主流的梯度基优化器。首先,我们可以将常规的通用优化算法归纳总结到下述所示的伪代码:
进一步地,本文并将常见的20种优化器归类如下:
典型的,我们可以大致地划分为以下几种:
- 固定学习率与动量:以SGD为代表,该类别的优化器对所有参数使用固定学习率,通过动量梯度作为优化方向。
- 自适应学习率与动量:以AdamW为代表,该类优化器结合了梯度的动量(Momentum)和逐参数自适应学习率的优势,采用估计的梯度二阶矩调节学习率。
- 估计学习率与动量:以AdaBelief为代表,该类优化器在第二类优化器基础上,通过额外的约束或估计来改进第二类优化器的收敛速度和性能,通常应用于具体任务(例如图像生成或NLP任务)。
- 自适应学习率与原梯度:以RMSProp为代表,该类优化器基于历史统计数据为每个参数估计适应学习率,但采用每个循环的原始梯度作为优化方向。
骨干网络-优化器耦合偏好(BOCB)
骨干网络和优化器的联合评估
通常认为,骨干网络和优化器应当具有通用性和独立性。若一个骨干网络非常依赖某种优化器,它会在使用该优化器时取得优异的性能,但根据没有免费午餐定律(No-Free Lunch Theroy),它大概率会在某些优化器上出现明显的性能退化,此时可认为该骨干网络与优化器存在强耦合偏好。
在展开讲述之前,我们需要先清楚以下几个定义。
性能指标: 考虑图像分类任务,以验证集上 top-1 准确率评估每种骨干网络-优化器组合的性能。给定一个骨干网络 在一组优化器 上的实验结果,BOCR 强的骨干网络通常存在少数比正常结果差很多的结果,可用以下方式筛选出此类结果:
这里:
- 是特定骨干网络 与优化器 组合的性能
- 是该骨干网络在所有优化器中的最佳性能
- 和 分别是性能结果的上四分位数和下四分位数
- 为人为给定的阈值,基准数据集上模型性能的方差有关。
大家可以简单理解,就是如果某个组合的性能低于最佳性能减去一个阈值(四分位距(IQR)和预设阈值 中的较大值),就被认为是不适配的。
超参数鲁棒性:记录每个骨干网络-优化器组合的最优超参数。对于单个优化器而言,在某个数据集上应该存在一组默认超参数配置,通常为该数据集上各类模型超参数的众数。通过计算骨干网络-优化器组合的最优超参数与默认超参数配置的距离(距离越大则需要花费更多调参代价),可衡量该骨干网络-优化器组合的超参数鲁棒性。
参数模式和收敛质量:选用四个指标来衡量所学到的参数空间质量和特征。分别对每层参数矩阵计算PL指数alpha、熵、L2范数和top-k PCA能量比率,对各层进行统计为全局直方图或逐层可视化的山脊图。
由于这里涉及到统计学、信息论和线性代数的概念,所以笔者简单为大家梳理下。首先PL在这里应该指的是"Power Law"(幂律),其用于评估参数分布的特性,如是否遵循幂律分布;熵用于衡量参数分布的不确定性或随机性,即高熵可能意味着参数更加分散或多样化;L2范数则能衡量参数的大小或强度,一定程度上可以反映模型的复杂度或正则化程度;至于最后的top-k PCA能量比率,通常可以认为是主成分分析(PCA)来评估参数的主要变化方向,计算前k个主成分所解释的方差比例来反映参数空间的维度特性和主要变化模式。
最后,对每一层计算这些指标后,作者也提供了两种统计呈现方式:
一是全局直方图,即将所有层的指标汇总成直方图,提供整个模型参数分布的整体视图;
二是逐层可视化的山脊图,即对每一层单独可视化,以观察指标在不同层之间的变化趋势。
基准测试和观察
本文在CIFAR-100上对20个代表性视觉骨干和20个流行优化器进行主要基准测试。通过实验发现某些流行模型(例如DeiT-S和ConvNeXt-T)与某些优化器(即SGD和LARS)的组合效果不佳,从而总结了BOCB现象。
BOCB的来源
骨干宏观设计和Token Mixers的起源
早期CNNs:这些架构以简单的卷积层和池化层叠加设计为特点,最终通过全连接层完成特征的提取与分类。这种范式虽然有效,但为后续的优化景观变革奠定了基础。这些早期的CNNs通过直接的方法进行特征提取,但其优化潜力有限,需要更复杂的设计来进一步提升性能。
经典CNNs:ResNet的引入标志着向分阶段的层次结构设计的转变,显著增强了特征提取和表征学习能力。特别是ResNet-50,它展示了一种平衡的BOCB处理方式,与SGD优化器展现出强烈的兼容性,并相对于同期的其他架构有较低的BOCB。ResNet通过引入残差连接解决了深度网络训练中的梯度消失问题,这一创新不仅提升了网络的优化效率,也为深度学习模型的设计提供了新的思路。
现代架构:向现代骨干网络的转变引入了简化的块状设计(例如,MetaNeXt和ConvNeXt变体)或复杂的Block-wise异构结构(例如,MogaNet和UniRepLKNet),由于其复杂的特征提取机制,增加了优化挑战和BOCB的程度。作为演化的巅峰,MetaFormer架构将阶段化和Block-wise异构性融入其设计中。这种创新的宏观设计通过与优化器的协调,优化了优化景观,从而减少了BOCB并提升了性能。
以上主干网的演变强调了宏观设计在塑造优化环境中的关键作用,以及在主干网架构中持续创新的必要性。它强调了在提高表示能力和保持优化效率之间必须达到的微妙平衡。详情请参阅论文附录C。
接下来,我们举例说明了三个案例,展示了表征能力与BOCB效应的权衡。
Case 1 (Transformer): ViTs由于其自注意力机制和阶段性各向同性设计,缺乏CNNs中的局部连接和位移不变性等归纳偏好。这需要精心的调整以确保在视觉任务中有效泛化并减少BOCB。
- MLP-Mixer通过用MLP替换基于注意力的Token Mixers来简化模型,从而简化了Token间的交互,使得训练过程更加稳定。然而,这种简化牺牲了模型捕捉长距离依赖的能力,这对于特定的视觉任务是必不可少的,因此体现了“模型简洁”与表征能力之间的权衡。
- AttenFormer由于其MetaFormer框架,整合了平衡的设计和跨阶段的残差缩放,有效地减轻了BOCB。
- Swin-T与DeiT-S类似,基于Vallina Transformer,但引入了层次化阶段和局部注意力块。这些设计增强了模型捕捉细粒度特征的能力,与DeiT-S相比,实现了更好的性能和更弱的BOCB。
关键收获:针对减少异质性或增强同质性的块状宏观设计,结合层次化阶段和Token Mixers内整合的归纳偏好,对于ViTs在计算机视觉任务中减轻BOCB至关重要。
Case 2 (CNNs): 受ViTs成功的启发,ConvNeXt引入了一种同质化块设计,在残差连接中整合了两种类型的混合器,可能增强了在各种任务和数据尺度上的优化。这种架构的有效性强调了需要在优化和现实世界挑战的背景下,超越常见指标来评估网络设计的必要性。
网络骨干与优化器之间的相互作用对于预训练和微调都至关重要,不同的架构影响着优化景观。例如:
- CNNs中的BOCB通常与FFN设计相关,这在ConvNeXt等模型中至关重要。这些块作为点卷积或倒置瓶颈层实现,如果没有适当的正则化,容易过拟合。
- ConvNeXt.V2则在FFN块中引入了全局响应归一化(GRN),类似于RMSNorm,以稳定训练并防止模型崩溃,从而减少BOCB。
- 基于MetaFormer框架的ConvFormer使用带有深度卷积和点卷积的同质化块,提高了训练的鲁棒性并降低了BOCB风险。
同样地:
- VGG系列因其简单和同质化的架构表现出良好的训练动态;
- RepVGG引入的训练阶段残差连接增强了性能,同时保持了稳定性并避免了BOCB。
- 相比之下,ConvNeXt.V1和Moganet由于其复杂操作和异构块,更容易受到BOCB的影响。
- UniRepLKNet通过更同质化的设计规避了这一问题,突显了架构同构性在减少BOCB中的重要性。
因此,对于现代CNNs,促进同质化构建块结构的设计,并结合精心设计的策略来减轻模型故障,更有可能实现稳定的FFN训练并降低BOCB风险。
Case 3 (MetaFormer): MetaFormer架构以其分层次的阶段性和块状设计而著称,特点是ResScale,这有助于灵活集成各种Token Mixers。这种宏观设计对于在最小化BOCB风险的同时实现竞争力性能至关重要。
- IdentityFormer,凭借其基本的Token Mixer,为MetaFormer设定了一个稳健的baseline,但在需要Token Mixer表示的复杂任务中可能会有所不足,潜在地增加了BOCB风险。
- PoolFormerV2(将池化作为Token Mixer)的表现超过了IdentityFormer,但由于缺乏自注意力的细微差别,可能会忽略关键细节,导致更高的BOCB敏感性。为了增强MetaFormer并减轻这些风险,选择适当的Token Mixer是必不可少的。
- ConvFormer将CNN层集成到Transformer框架中,平衡了局部归纳偏好和全局感受野,以防止数据受限场景中的注意力崩溃,确保更好的收敛并减少BOCB。
- AttenFormer和CAFormer进一步探索了注意力机制,旨在通过改进的Token交互来增强MetaFormer的表征能力。
总体而言,MetaFormer架构的成功取决于其层次化设计与Token Mixers选择之间的平衡,确保在多样化任务中提供稳健的性能,同时减轻BOCB的风险。
预训练和迁移学习中不同优化器的使用
扩展到ImageNet-1K分类: ImageNet-1K是一个基础性的基准测试,用于衡量视觉模型的分类能力。我们进一步研究了我们在ImageNet-1K上的观察结果是否仍然成立。具体的实现细节,请参见论文附录A.1。
正如上表所示,DeiT-S显示出比ResNet-50更强的BOCB,而图2中的类别(b)优化器(例如,AdamW)在预训练阶段在不同的骨干网络上显示出可靠的性能高原。这些优化器的一致性效用与ImageNet-1K所需的广泛特征学习非常吻合,使它们成为初始模型训练阶段的最佳选择。
这些优化器在预训练阶段的效用会传递到迁移学习过程中。当模型从ImageNet-1K预训练过渡到在COCO上进行目标检测(使用RetinaNet)或姿态估计等任务时,优化器的选择至关重要。
迁移学习在COCO上: 对于使用ImageNet-1K预训练模型进行迁移学习的分析,我们确定了两个关于迁移后COCO任务性能的关键发现。
首先,从骨干网络的角度来看,具有明显BOCB(ConvNeXt-T)的骨干网络在迁移学习场景中继续表现出BOCB特征。这表明这类模型的固有结构属性可能不容易仅通过迁移学习来缓解。
其次,当我们使用对BOCB不太敏感的ResNet-50来控制变量观察优化器是如何影响骨干网络架构中的BOCB时,我们观察到类别(b)和(c)的优化器可能在预训练阶段引入显著的BOCB效应,尽管它们在预训练中是有效的。
这表明预训练优化器的选择可能深刻影响模型的泛化和迁移能力,从而影响其在新任务上的可迁移性和性能。此外,与不限制微调阶段使用特定优化器的一阶优化器不同,类别(b)和(c)的优化器需要在预训练和微调阶段都使用。
预训练中优化器的选择可以显著影响模型的可迁移性,尽管类别(b)和(c)的优化器表现出卓越的性能,但它们可能会向预训练的骨干网络引入BOCB。我们已经讨论了这一点,并在上面总结了实际推荐的优化器。
总结
本文探讨了计算机视觉中骨干网络设计和优化器选择之间的相互作用。我们揭示了骨干-优化器耦合偏差(BOCB)现象及其对视觉骨干网络潜在的限制,例如在下游任务中额外的微调时间和努力。我们还发现了不同网络设计和BOCB背后的基本原理,从而为未来的视觉骨干网络设计提供了指导。同时,基准测试结果和发布的代码为用户友好的部署和评估提供了参考。总体而言,我们旨在激励计算机视觉社区重新思考骨干网络和优化器之间的关系,在未来的研究中考虑BOCB,从而为更系统性的未来进步做出贡献。
同时这项工作有几个局限性:
- 尽管我们对ImageNet和COCO进行了迁移学习实验,但基准测试主要关注CIFAR-100,这可能导致对更广泛下游任务的发现存在疑问。然而,我们所有的迁移学习结果与CIFAR-100的发现一致。此外,我们发布的代码可以轻松扩展到其他任务。用户可以轻松地用它进行验证。
- BOCB比当前的参数和FLOPs等指标更复杂,这可能导致实践中的不便。我们建议研究人员使用我们的代码,选择代表性的优化器,如SGD、Adam和AdamW,进行ridge plot验证和CIFAR-100基准测试,这些都是实用且资源高效的。我们也呼吁社区进一步探索BOCB,共同推进视觉系统的进展。