内容提要
论文介绍了一种新型混合神经网络LeViT,旨在提高图像分类的速度和准确性。LeViT在不同硬件平台上表现优异,尤其在CPU上比EfficientNet快5倍。该模型结合了卷积和Transformer的优点,通过轻量卷积组件和金字塔结构优化推理速度,适用于多种计算架构。实验结果显示,LeViT在速度和精度之间取得了良好的平衡。
延伸解读
混合架构的早期收敛优势
论文发现,混合模型在训练早期收敛速度类似于卷积网络,随后切换到类似DeiT-S的收敛速度。这是因为卷积层具有强归纳偏置,能更有效地学习早期层中的低级特征,而高质量的图像块编码使得训练初期更快收敛。这一观察为设计混合模型提供了理论依据,也解释了为何混合架构在相同算力下优于纯Transformer或纯卷积网络。
推理速度优化的关键设计
LeViT通过多项设计提升推理速度:使用4层3x3卷积进行快速降维,仅需184 MFLOPs,远低于ResNet-18的1042 MFLOPs;用BN替代LN,因为BN可与卷积合并,在EfficientNet B0上这种融合将GPU推理速度提高2倍;用Hardswish替代GELU;将MLP扩展因子从4减到2,使注意块和MLP块计算量大致相同。这些改动共同实现了在CPU上比EfficientNet快5倍的效果。
注意力机制中的位置信息注入
LeViT没有使用传统的位置编码,而是在每个注意力块内显式注入相对位置信息,即在注意力图计算中添加一个注意力偏置。每个头有H×W个参数对应不同像素偏移,距离取绝对值以鼓励翻转不变性。这减少了键映射矩阵编码位置信息的压力,因此可以减小Q和K的通道数(D∈{16,32}),缩短相关矩阵运算时间,同时保持分类精度。
速度与精度的权衡及评估
LeViT系列模型可通过改变各阶段大小来权衡速度和精度。在80% ImageNet top-1精度下,LeViT在CPU上比EfficientNet快5倍;在相当精度下,速度提升1.5到5倍。论文在GPU、CPU和ARM三个平台测试推理时间,并额外在ImageNet Real和ImageNet V2上评估,以验证超参数调整没有对ImageNet验证集过度拟合。这些评估表明LeViT在多种硬件上均具有优势。
Q&A
LeViT模型的主要优势是什么?
LeViT模型在速度和准确性之间取得了良好的平衡,尤其在CPU上比EfficientNet快5倍。
LeViT是如何优化推理速度的?
LeViT通过轻量卷积组件和金字塔结构来优化推理速度,结合了卷积和Transformer的优点。
LeViT与传统卷积神经网络相比有什么不同?
LeViT结合了卷积和Transformer的特性,使用轻量卷积组件替代传统的Transformer组件,提升了推理速度。
LeViT在不同硬件平台上的表现如何?
LeViT在不同硬件平台上表现优异,特别是在CPU上,其推理速度显著高于其他模型。
LeViT的设计允许怎样的权衡?
LeViT的设计允许在速度和精度之间进行权衡,能够在相当的精度下实现1.5到5倍的速度提升。
LeViT的训练方法有什么特别之处?
LeViT使用类似于DeiT的蒸馏训练方法,采用两个具有交叉熵损失的分类头进行训练。