[MLP-Mixer] MLP超越CNN和Transformer之日
三个要点
✔️ 通过一个仅使用多层感知器(MLP)的简单架构实现与SoTA相当的图像分类性能。
✔️ 迭代地混合特定位置的特征和空间信息
✔️ 实现高精确度,同时降低计算成本
MLP-Mixer: An all-MLP Architecture for Vision
written by Ilya Tolstikhin, Neil Houlsby, Alexander Kolesnikov, Lucas Beyer, Xiaohua Zhai, Thomas Unterthiner, Jessica Yung, Andreas Steiner, Daniel Keysers, Jakob Uszkoreit, Mario Lucic, Alexey Dosovitskiy
(Submitted on 4 May 2021 (v1), last revised 17 May 2021 (this version, v2))
Comments: Accepted by arXiv
Subjects: Computer Vision and Pattern Recognition (cs.CV); Artificial Intelligence (cs.AI); Machine Learning (cs.LG)
code:
首先
在计算机视觉领域,卷积神经网络(CNN)长期以来一直是最流行的标准,最近,基于注意力的网络,如视觉变换器(ViT)也引起了人们的注意。然而,在本文中,我们专注于卷积网络。然而,在本文中,我们表明,卷积和注意力都不是必须的。MLP-混合器由两层组成:第一层是应用于每个图像补丁的MLP(以混合位置特征),第二层是应用于整个图像补丁的MLP(以混合空间信息)。通过使用足够数量的数据集和归一化方法,MLP-混合器实现了与SoTA相当的图像分类性能。
建筑
首先,让我解释一下上面显示的混合器的整个形象。图像被划分为16x16个补丁作为输入。接下来,线性嵌入被应用于每个补丁。然后,我们迭代地将混合器层应用于它们。最后,我们通过应用全局平均池对图像进行分类,就像在一般的CNN中一样。
接下来,我们解释上图所示的混合器层的内容。混合器使用两种类型的MLPs:通道混合MLPs和标记混合MLPs。标记混合MLPs负责混合不同空间位置(标记)的特征。令牌混合MLP负责混合不同空间位置(令牌)之间的特征,并独立应用于每个通道,将表的每一列作为输入。另一方面,通道混合MLP负责混合不同通道之间的特征,独立应用于每个标记,并将表的每一行作为输入。
在极端情况下,通道混合MLP可以被视为具有1×1卷积的CNN,而标记混合MLP可以被视为单通道深度卷积。然而,这种MLP-混合器的结构比这种CNN简单得多。
此外,让我们把令牌混合MLP和通道混合MLP转换成数学表达式。MLP-Block的结构如下所示。 它由所有连接层+GELU+所有连接层组成,比CNN和Transformer简单得多。此外,每个MLP都由一个像ResNet一样的跳过连接连接。此外,每个MLP之前都要进行层归一化。
令牌混合MLP
U:符号混合的MLP块的输出。
X: 通过将图像划分为多个斑块获得的特征值。
W1:MLP块的第一个完整连接层
W2:MLP块的第二个全连接层。
σ:MLP块的GELU函数
通道混合MLP
Y:通道混合的MLP块的输出
U:符号混合的MLP块的输出
W3:首先是MLP块的所有组合层
W3:MLP块的第一个全组合层 -W4:MLP块的第二个全组合层
σ:MLP块的GELU函数
请注意,这里使用的GELU激活函数也用于著名的自然语言处理模型,如GPT和BERT;与Dropout一样,我们通过随机将一些激活值乘以0来使模型变得稳健。
这就是Mixer的架构。你可以看到,所有的操作都是通过非常基本的操作完成的,如矩阵积和转置。
实验
在我们的实验中,我们在一个大数据集上进行预训练,然后像传统方法一样在一个小数据集(下游任务)上进行微调。我们有以下三个目标。
1 . 下游任务的准确性
2 . 预训练的计算成本
3 . 推理过程中的吞吐量
请注意,本文的目标不是要实现SoTA,而是要表明基于MLP的模型有可能匹配并超过今天的CNN和变形金刚。
下游任务
图像网
CIFAR-10/100
牛津-IIIT宠物
牛津花-102
视觉任务适应基准
先前的学习数据
ImageNet-21k
ImageNet-21k
JFT-300M
搅拌器型号详情
结果
用ImageNet-21k进行的预训练达到了与Visual Transformer和BiT相同的准确度,同时也保持了较低的计算成本。
此外,如上图所示,随着数据集大小的增加,MLP-Mixer提高了图像分类的准确性,而且提高的程度比其他模型要大。当我们把数据集大小增加到300M时,准确率比BiT高,而且速度更快。
上图还显示了准确度和计算成本之间的权衡表现,可以看出,当考虑到准确度和计算成本之间的权衡时,Mixer与其他SoTA模型处于Pareto Frontier,尽管其单独的准确度略低于SoTA。
摘要
尽管Mixer是一个由两个MLP层组成的非常简单的架构,但它实现了与SoTA模型相当的图像分类性能,同时保持了较低的计算成本。如果在本文的基础上进行研究,它可能很快就会在分类准确性和计算成本方面超过CNN和Transformer。
与本文相关的类别