局部性的终结 ?Transformer 在像素级处理的突破性发现 !

技术

点击下方卡片,关注「集智书童」公众号

点击加入👉「集智书童」交流群

picture.image

picture.image

picture.image

picture.image

picture.image

想要了解更多:

前沿AI视觉感知全栈知识👉「分类、检测、分割、关键点、车道线检测、3D视觉(分割、检测)、多模态、目标跟踪、NerF」

行业技术方案 👉「AI安防、AI医疗、AI自动驾驶」

AI模型部署落地实战 👉「CUDA、TensorRT、NCNN、OpenVINO、MNN、ONNXRuntime以及地平线框架」

欢迎扫描上方二维码,加入「 集智书童-知识星球 」,日常分享论文、学习笔记、问题解决方案、部署方案以及全栈式答疑,期待交流!

免责声明

凡本公众号注明“来源:XXX(非集智书童)”的作品,均转载自其它媒体,版权归原作者所有,如有侵权请联系我们删除,谢谢。

picture.image

这项工作并没有引入一种新的方法。相反,作者提出一个有趣的发现,即质疑现代计算机视觉架构中感应偏差——局部性(locality)的必要性。具体来说,作者发现普通的Transformer可以直接将每个单独的像素视为一个标记(token)并进行操作,并取得非常出色的结果。

这与Vision Transformer中流行的设计有很大不同,后者保持了来自卷积神经网络(ConvNets)的对局部邻域的感应偏差(例如,将每个16×16的图像块视为一个标记)。

作者主要在三个计算机视觉中广泛研究过的任务上展示像素作为标记的有效性:有监督学习的目标分类、通过 Mask 自动编码进行自监督学习,以及使用扩散模型进行图像生成。

尽管直接在单个像素上操作在计算上不太实用,但作者认为在设计下一代的计算机视觉神经架构时,社区必须意识到这一惊人的知识。

1 Introduction

深度学习革命可以被定性为计算机视觉中诱导偏差的革命。以前的学习是在手动制作的特征之上进行的,如文献[16, 46]中描述的特征,这些特征编码了对特定任务有用的模式和结构的预先设想。相比之下,现代特征的偏差不再是预先设定的,而是通过使用预定义的模型架构直接从数据中学习来形成的。这种范式转变的主导地位凸显了减少特征偏差以创建更具通用性和能力的系统的潜力,这些系统在广泛的视觉任务中表现出色。

除了特征之外,模型架构也具有诱导偏差。减少这些偏差可以促进不仅在任务之间,而且在数据模态之间的更大统一。《Transformer》架构[62]就是一个很好的例子。

最初是为了处理自然语言而开发的,其后有效性也被证明适用于图像[22],点云[66],代码[8]以及其他多种类型的数据。值得注意的是,与它在视觉领域的先驱——卷积网络(ConvNet)[28, 42]相比,视觉Transformer(ViT)[22]具有更少的图像特定诱导偏差。然而,这种偏差的最初优势很快被更多数据(以及有足够容量存储数据中模式的模型)所抵消,最终成为阻止ConvNet进一步扩展的限制[22]。

当然,ViT并不是完全摆脱了诱导偏差。它去除了ConvNet中的空间层次结构,并在一个简单的架构中建模了多个尺度。

然而,对于其他诱导偏差,这种移除只是完成了一半:平移等方差仍然存在于它的块投影层和所有中间块中;而“局部性”——相邻像素比相隔较远的像素更相关的概念——仍然存在于它的“块状化”步骤(在2D网格上用16×16的块表示图像)和位置嵌入(当它们是手动设计时)。

因此,一个自然会产生的问题就是:作者能否完全消除剩下的两个诱导偏差中的一个或两个?作者的研究旨在回答这个问题。

令人惊讶的是,作者发现局部性确实可以被移除。作者通过直接将每个单独的像素视为Transformer的标记,并从零开始学习位置嵌入来得出这个结论。这种方式让作者无需引入关于图像2D网格结构的任何先验知识。有趣的是,作者没有得到训练发散或性能急剧下降的结果,反而从这种架构中获得了更高质量的成果。为了便于参考,作者将这种方法命名为PiT,即像素Transformer。请注意,作者的目标并不是要推广PiT以取代ViT,但PiT工作得如此之好表明,通过将图像视为单个像素的集合,而不是16×16的块,Transformer可以捕获到更多的信号。这一发现挑战了“局部性是视觉任务中的基本归纳偏置”的常规信念(见表1)。

picture.image

在主论文中,作者通过三个不同的案例研究展示了PiT的有效性:

(i)用于目标分类的监督学习,作者的主要实验采用CIFAR-100 [38],因为其32×32的输入大小,但这一观察也很好地推广到ImageNet [19];

(ii)通过标准 Mask 自编码(MAE)[26]在CIFAR-100上进行自监督学习进行预训练,并为分类进行微调;

(iii)使用扩散模型进行图像生成,作者遵循Diffusion Transformer(DiT)[51]的架构,并研究其在ImageNet上使用VQGAN [24]提供的潜在标记空间的像素变体。在所有三种情况下,作者发现PiT表现出合理的行为,并且比配备有局部感应偏置的 Baseline 取得了更好的质量成果。这一观察在附录中进一步推广到细粒度分类和深度估计任务。作为一个相关的研究,作者还检查了标准ViT架构中两个局部设计(位置嵌入和分块)在ImageNet上的重要性。

对于位置嵌入,作者有三种选择:正弦余弦 [62],学习型和无 - 正弦余弦携带局部偏置,而另外两个则不携带。为了系统地“破坏”分块中的局部偏置,作者在将输入划分为256像素(类似于ViT中的16×16块)标记之前执行像素排列。排列在图像之间是固定的,并包含多个步骤,在距离阈值内交换像素对。作者的结果表明,分块施加了一个更强的局部先验,并且(考虑到PiT)平移等方差对于网络设计仍然是不可或缺的。

诚然,PiT不如ViT实用,因为将每个像素视为标记将导致序列长度远比之前用于图像的长。这对于自注意力操作在Transformers中需要二次计算尤其受限。在实践中,分块仍然是权衡效率的最有效想法,而局部性仍然有用。然而,作者相信作者的研究传达了一个清晰且有力的信息,即局部性不是模型设计的必要感应偏置。作者相信这一发现将成为探索下一代处理图像的架构时,社区知识的一个重要组成部分。

2 Related Work

图像的局部性。 据作者所知,大多数现代视觉架构[28, 50],包括那些旨在简化归纳偏置[60, 22]的架构,在其设计中仍然保持局部性。在深度学习之前,手动设计的视觉特征也是局部偏置的。例如,SIFT[46]使用局部描述符来表示每个兴趣点;HOG[16]在局部归一化梯度强度,以考虑光照和对比度的变化。有趣的是,在这些特征中,_词袋_模型[41, 12]曾经很受欢迎——与作者的工作中探索的_set-of-pixels_相似。

超越图像的局部性。 局部性的归纳偏置在建模2D图像之外的领域也被广泛接受。对于文本,自然语言序列通常会用“分词器”[57, 39]进行预处理,这些分词器通过汇总数据集统计信息,将经常相邻出现的字符分组为子词。在Transformer之前,循环神经网络[47, 31]是这类数据的默认架构,它们利用时间上的连续性逐步处理序列。对于更少结构化的数据(例如点云[15, 6]),现代网络[52, 66]会采用各种采样和池化策略来增加其对局部几何布局的敏感性。在图神经网络[56]中,带有边缘的节点通常被视为局部连接,信息通过这些连接传播到更远的节点。这种设计使它们特别适用于分析社交网络、分子结构等。其他值得注意的努力。 作者按大致时间顺序列出了四项工作,希望它能从多个角度为作者的工作提供历史背景:* 对于ConvNets,已经做了相关的尝试来移除局部性。值得注意的是,[4]用11的滤波器替换了ResNet[28]中的所有空间卷积滤波器。它提供了更多的可解释性,以理解ConvNet的决策过程,但如果没有像素间的通信,结果网络的性能将大幅下降。作者的工作则使用基于_set_操作的Transformer,Self-Attention机制处理所有到所有的通信;可以理解的是,作者取得了更好的结果。

  • 在ViT变得流行之前,iGPT[7]被提出直接在像素上预训练Transformer,以跟随它们在文本[53, 20]上的成功。回顾过去,iGPT是一个针对自监督下一个(或 Mask )像素预测的局部性自由模型。但尽管演示代价高昂,其性能与简单的对比预训练[9]相比,在ImageNet线性分类上仍然不足。后来,ViT[23]重新引入了局部性(例如,通过分块),在包括ImageNet在内的许多基准测试中取得了令人印象深刻的结果。从那时起,社区继续使用1616的块作为图像的默认标记。即便在今天,仍然不清楚更高分辨率还是局部性是两者之间的关键区别。作者的工作通过系统的分析关闭了这个理解上的差距,指出分辨率是ViT的促成因素,而不是局部性。
  • Perceiver[34, 35]是另一系列直接在图像像素上操作的架构。旨在成为模态无关的,Perceiver设计了一个带有跨注意力模块的潜在Transformer来解决输入维度高时的效率问题。然而,这种设计并没有像普通Transformer那样被广泛采用,后者在多个领域[22, 5]一致展示了其可扩展性。通过PiT,作者展示了Transformer确实可以直接处理像素,并且考虑到Self-Attention实现的快速发展以处理巨大的序列长度(高达百万级)[17, 44],即使考虑所有像素,效率可能也不再是关键的瓶颈。
  • 作者的工作也可以被视为将序列长度扩展到极端的探索。它是为了对图像进行单个像素建模,对文本进行单个字符建模[36]。更长的序列(或更高分辨率)通常是有利的,如[10, 32, 51]所证明的那样。然而,它们都没有达到完全摆脱局部性的极端情况。

3 Inductive Bias of Locality

在本节中,作者深入讨论了主流架构中的局部性(或局部性)感应偏差。确切地说,局部性是指邻近像素比相隔较远的像素更相关的感应偏差。作者涵盖了卷积网络(ConvNets)和视觉 Transformer (ViTs)。

Locality in ConvNets

在卷积神经网络中,局部性偏见体现在网络每一层计算的特征的_感受野_中。直观地说,感受野覆盖了计算特定特征所涉及的像素,对于卷积神经网络来说,这些领域是局部的。

具体来说,卷积神经网络包含几个层,每层都包含使用核(例如77或33)的卷积操作或池化操作——这两种操作都具有局部偏见。例如,第一层的感受野通常只对应于一个很小的局部窗口。随着网络的加深,该领域逐渐扩大,但窗口仍然是局部的,并且以像素的位置为中心。

Locality in Vision Transformers

乍一看,Transformer 是没有局部性的。这是因为Transformer的大部分操作要么是全局的(例如,自注意力),要么仅限于每个单独的标记内(例如,多层感知器)。然而,仔细观察会发现,在ViT [22]中有两个设计可以保留局部性诱导偏差:切块和位置嵌入。

切块中的局部性。 在ViT中,输入到Transformer块中的标记是“块”,而不是像素。每个块由16×16个像素组成,在第一个投影层之后成为操作的基本单位。这意味着在块内的计算量与跨块的计算量有显著差异:超出16×16邻域的信息只能通过自注意力传播,而256个像素之间的信息始终作为标记一起处理。尽管在第一个自注意力块之后感受野变得全局,但在切块步骤中已经引入了对局部邻域的偏差。

位置嵌入中的局部性。 位置嵌入可以是学习得到的[22],也可以在训练期间手动设计并固定。对于图像来说,一个自然的选择是使用2D正弦-余弦嵌入[10; 26],它是从原始的1D嵌入[62]扩展而来的。由于正弦-余弦函数是平滑的,它们倾向于在嵌入空间中引入局部性偏差,使得附近的标记更相似。1 其他设计变体也是可能的,并且已经被探索[22],但它们都携带有关于图像的2D网格结构的信息,而学习到的位置嵌入不对输入做出假设。当位置嵌入被 插值[18; 43]时,局部性偏差也被利用。通过双线性或双三次插值,空间上接近的嵌入被用来生成当前位置的新的嵌入,这也利用了局部性作为一个先验。

与ConvNets相比,ViTs在设计上对局部性的偏差要小得多。作者进一步推动这一点,完全移除这种偏差。

4 Transformers on Pixels

作者严格遵循标准的Transformer编码器[62],该编码器处理一系列标记。特别是,作者将这种架构直接应用于输入图像中一系列无序的像素点,并带有可学习的位置嵌入。这消除了ViT [22]中剩余的局部性感应偏差,为了参考,作者将其命名为Pixel Transformer(PiT,见图1)。从概念上讲,PiT可以被看作是ViT的简化版本,使用11的块而不是1616的块。

形式上,作者将输入序列表示为,其中是序列长度,是隐藏维度。Transformer将输入序列映射到一个表示序列。该架构由层堆叠而成,每一层都包含两个模块:多头自注意力模块和MLP模块:

其中是输入序列,表示Transformer中的第层,是一个归一化层(通常是LayerNorm [1])。这两个模块都使用残差连接[28]。

像素作为标记。 在计算机视觉中,典型的网络输入通常是一个RGB值的图像,,其中是原始图像的大小。作者遵循一个简单的解决方案,将视为一个无序的像素集合,。因此,PiT简单地通过一个线性投影层将每个像素投影到一个维向量,,得到输入标记集,其中。作者在序列中附加一个可学习的[cls]标记[20]。此外,作者还为每个位置学习一个内容无关的位置嵌入。像素标记随后被送入Transformer以产生表示集。

其中是一组可学习的位置嵌入。

PiT移除了局部感应偏差,在像素 Level 上具有置换等方差。通过直接将单个像素视为标记,作者在架构中不假设空间关系,并让模型从数据中学习它。这与ConvNets中的卷积核设计或ViT[22]中的基于块标记化形成了对比,后者基于像素的邻近性强制实施感应偏差。在这方面,PiT更加灵活——它可以自然地模拟任意大小的图像(无需可被步长或块大小整除),甚至可以推广到不规则的区域[37]。

除了消除局部性之外,将每个像素作为独立的标记还有其他好处。类似于将字符作为语言处理的标记,作者可以大大减少输入到Transformer的标记词汇量。具体来说,对于三个颜色通道的像素范围在内,词汇量的最大值为(因为像素取离散的整数值);然而,在ViT中,一个大小的图像块标记可能导致词汇量高达。如果以非参数化的方式建模,这将严重受到词汇量不足问题的影响。

当然,PiT也有缺点,最大的问题是对于建模长序列来说计算成本高昂(甚至可能是禁止的)。然而,鉴于处理大规模语言模型(多达一百万个)[17, 44]的长序列技术的快速发展,完全有可能会很快直接在所有像素上训练PiT(例如,ImageNet上的一个标准224224裁剪“仅”包含50,176个像素)。因此,作者论文的目标是在较小规模上实证验证PiT的有效性和潜力——作者接下来会这样做,并将实际部署的工程努力留到将来。

5 Experiments for PiT

表2:PiT尺寸变体的规格。 在实证评估中,作者使用与[22]相同的配置的ViT进行正面比较。

picture.image

在本节中,作者通过三个案例研究验证了PiT的有效性:有监督的学习、使用MAE [26]的自监督学习和使用DiT [51]的图像生成。作者使用了四种PiT变体:微型(T)、小型(S)、基础(B)和大型(L),其规格如表2所示。除非另有说明,作者将配置相同的ViT [23]变体作为作者的 Baseline 。总之,作者的实验表明,PiT确实可以学习无需局部性诱导偏差的强大视觉表示。

有监督的学习

在这项研究中,作者从零开始训练并评估PiT,没有任何预训练[10, 26]。作者的 Baseline 是22 Patch 大小的ViT。

数据集。 作者使用了两个数据集:CIFAR-100 [38]包含100个类别和60K张图像组合,以及ImageNet [19]包含1K个类别和1.28M张用于训练的图像,50K张用于评估。虽然CIFAR-100由于其固有的图像大小适合于探索PiT的有效性,但ImageNet有更多的图像,这有助于作者进一步确认作者的发现。

评估指标。 对于这两个数据集,作者在训练划分上训练作者的模型,并在验证划分上报告top-1(Acc@1)和top-5(Acc@5)的准确度。

实现细节。 对于CIFAR-100,由于即使是ViT也没有最佳设置,作者搜索配方,并使用微型和小型模型报告结果。作者从[27]发布的演示中使用了增强手段来从零开始训练,因为作者发现在这种情况下更先进的增强手段(例如,AutoAug [13])并不有帮助。所有模型都使用AdamW [45]进行训练,=0.9,=0.95。作者使用批大小为1024,权重衰减为0.3,drop path [33]为0.1,初始学习率为0.004,作者发现这对所有模型来说都是最好的。作者使用20个周期的线性学习率 Warm up 和余弦学习率衰减至最小1e-6。作者的训练持续2400个周期,补偿了数据集的小尺寸。

在ImageNet上,作者紧跟着[26, 61]中从零开始的训练配方用于ViT,并报告了使用PiT-S和PiT-B的结果。由于计算限制,默认情况下将图像裁剪并调整到2828作为低分辨率输入。全局平均池化输出用于分类。训练批大小为4096,初始学习率为1.610,权重衰减为0.3,drop path为0.1,训练长度为300个周期。使用了MixUp [65](0.8),CutMix [64](1.0),RandAug [14](9, 0.5),以及指数移动平均(0.9999)。

表3:案例研究#1(有监督学习)的结果。从零开始学习,作者将PiT与ViT [22]( Patch 大小为2×2)进行比较。作者在(a)CIFAR-100 [38]上报告结果:对于32×32的输入,PiT明显优于ViT。请注意,作者的ViT Baseline 已经得到了很好的优化,例如[58]在从零开始训练较大模型时报告了72.6%;(b)ImageNet [19]:使用为ViT高度优化的训练流程[26, 61],作者仍然观察到PiT的准确度有所提高。由于计算限制,作者使用的输入大小为28×28(低于[22, 61])。 当从零开始训练ViT-B时,尽管作者使用较小尺寸的模型达到了80%以上的准确度,但PiT-T比ViT-T的Acc@1提高了1.5%;当移动到更大的模型(S)时,PiT相对于小模型(T)的Acc@1提高了1.3%,而ViT似乎已经饱和。这些结果表明,与基于 Patch 的ViT相比,PiT可能直接从像素中学习新的、数据驱动模式。

picture.image

主要比较(表3)。 虽然作者对两种ViT变体(ViT-T和ViT-S)的 Baseline 在CIFAR-100上已经得到了很好的优化(例如,[58]报道了72.6%的Acc@1),作者的观察也适用于ImageNet - 尽管分辨率显著较低,作者的结果远低于现有技术水平[22, 61](80%以上),但PiT在两种实验设置中仍然优于ViT。

PiT与ViT:两种趋势的故事。 如果位置嵌入被学习,PiT就是具有1×1 Patch 的ViT版本。因此,研究在ViT中改变 Patch 尺寸时的性能趋势至关重要。这里涉及三个变量:序列长度(),输入大小()和 Patch 大小()。它们之间存在确定性的关系: = /()。因此,作者有两种方法研究关于 Patch 大小的Acc@1趋势:

图2:PiT与ViT在ImageNet上的两种趋势。由于PiT可以被看作是具有1×1 Patch 大小的ViT, Patch 大小的趋势对发现至关重要。在**(a)** 中,作者改变ViT-B的 Patch 大小但保持序列长度固定(最后一个数据点等同于PiT) - 因此输入大小也会变化。虽然一开始Acc@1保持不变,但大小或信息量很快成为导致退化的主导因素,而PiT是最差的。另一方面,在**(b)** 中,作者改变ViT-S的 Patch 大小同时保持输入大小固定。趋势是相反的 - 减小 Patch 大小总是有帮助的,最后一个点(PiT)变成了最好的。这两种趋势的并列为作者提供了关于输入大小、 Patch 大小和序列长度之间关系的更完整的图景。

picture.image

在这样一个任务中,整个图像被分配了一个单一的标签。输入大小,或者说输入到模型中的信息量,可以说是一个更重要的因素,尤其是当大小较小时。只有当输入大小足够大(例如,112×112)时,进一步增大尺寸的额外好处才开始减少。这也意味着当输入中的信息量不足时,PiT——或者任何遵循这种设计架构(例如,iGPT [7])——都不会工作得很好。这是一个没有任何局部性设计的模型。因此,与ViTs相比,PiT在准确度上表现得最好。

通过图2中的这两个趋势图,作者的研究增强了之前研究的观察结果,因为它们主要关注的是输入大小足够大的情况[32, 2],并呈现了一个更完整的画面。

为了了解PiT学到了什么,作者在附录0.A中展示了PiT的注意力图和位置嵌入的可视化。

Self-Supervised Learning

在本小节中,作者研究了一种先用自监督预训练的PiT,然后进行有监督分类的微调。特别是,作者选择MAE [26],因为其效率很高,编码器只保留25%的序列长度,且基于微调评估协议的有效性。

数据集。 作者使用了CIFAR-100 [38],因为其固有的图像大小为。这使得作者能够完全探索将像素作为原始分辨率下的标记。

评估指标。 作者首先在训练集上进行预训练。然后在微调阶段(也在训练集上训练)作为初始化。同样,作者将CIFAR-100上的图像分类作为下游任务,并在验证集上报告top-1(Acc@1)和top-5(Acc@5)准确率。

表4:案例研究#2(自监督学习)的结果。 作者在CIFAR-100上使用PiT和ViT [22](22的 Patch 大小)进行MAE预训练[26],然后进行有监督的微调。对于(a)微型和(b)小型变体,预训练都提高了性能。PiT-S与ViT-S之间的差距更大,表明PiT可以比ViT更好地扩展。

picture.image

实现细节。 作者遵循标准的MAE,并使用75%的 Mask 比例,随机选择标记。考虑到剩余的25%可见标记,模型需要使用像素回归来重建 Mask 区域。由于没有针对CIFAR-100上MAE的已知默认设置(即使是ViT),作者搜索了配方,并使用PiT-T和PiT-S报告结果。为了简单起见,在预训练期间,对图像应用了与[26]相同的增强。所有模型都使用AdamW进行预训练,=0.9,=0.95。除了初始学习率0.004和学习率衰减0.85 [11]外,作者遵循[26]中所有预训练1600个周期的超参数。得益于MAE预训练,作者可以使用0.024的高学习率进行微调。作者还设置权重衰减为0.02,逐层衰减率为0.65,drop path为0.3,为0.999,微调800个周期。其他超参数紧随有监督学习的从头训练配方(见5.1节)。

结果。 如表4所示,作者发现对于PiT,使用MAE进行自监督预训练相比于从头开始训练可以提高准确率。这对于作者实验的PiT-T和PiT-S都是正确的。值得注意的是,当从微型模型转移到小型模型时,使用预训练的ViT和PiT之间的差距变得更大。这表明PiT可能比ViT更好地扩展。

Image Generation

在本节中,作者转向使用Diffusion Transformer(DiT)[51]进行图像生成,其基于调节的架构与普通的ViT不同,并在来自VQGAN[54, 24]的潜在标记空间上操作,将输入大小缩小了8倍。在数据集方面,作者使用ImageNet进行类别条件生成,并将每张图像中心裁剪为256×256,从而得到32×32×4(4是通道维度)的输入特征图大小。PiT-L使用这个特征图进行输入,与它的 Baseline DiT-L/2[51]相同。

评估指标。 生成质量通过标准指标进行衡量:Frechet Inception Distance (FID)[29](使用5万样本),sFID[48],Inception Score (IS)[55],以及精确度/召回率[40],使用[21]原始TensorFlow评估套件中的参考批次。

图3:案例研究#3(图像生成)的定性结果。这些256×256的样本来自在ImageNet上训练的PiT-L,遵循与DiT[51]相同的架构设计和生成协议。PiT的生成包含精细特征,并且与具有局部性[51]的DiT生成的质量相当相似。

实现细节。 作者遵循DiT的训练设置,使用更大的批量大小(2048)以加快训练速度(原始配方使用256的批量大小)。为了使训练稳定,作者进行了100个周期的线性学习率预热[25],然后保持不变共400个周期。作者使用最大学习率为8e-4,不应用权重衰减。

定性结果。 图3展示了从PiT-L抽取的生成样本。采样需要250个时间步,将潜在扩散输出通过VQGAN解码器映射回像素空间。使用了无分类器指导[30]的比例为4.0。与具有局部感应偏差[51]的DiT模型相比,所有生成结果都较为详细且合理。

定量比较。 作者在表5中总结了DiT-L/2和PiT-L之间的定性比较。首先,尽管训练配方发生了变化,但作者的 Baseline 很强:与参考文献中的10.67 FID[51](使用更大的模型(DiT-XL/2)和更长的训练(约470个周期))相比,作者的DiT-L/2在没有无分类器指导的情况下达到了8.90。作者主要的比较(前两行)使用了1.5的无分类器指导以及250个采样步骤。PiT在潜在'像素'上操作,在三个指标(FID、sFID和IS)上超过了 Baseline ,并且在精确度/召回率上相当。经过扩展训练,差距更大。

picture.image

作者在图像生成任务上的展示是PiT的一个重要扩展。

与第5.1节和第5.2节对判别性基准的案例研究相比,任务已经改变;模型架构从标准的ViT变为条件性的;

输入空间也从原始像素变为VQGAN分词器的潜在编码。PiT开箱即用的事实表明作者的观察具有很好的泛化性,而无需局部性的架构可以用于不同的任务、架构和操作表示。

6 Locality Designs in ViT

最后,作者通过重新审视ViT架构,完成了作者调查的闭环,并检查了其两个与局部性相关的设计的重要性:(i)位置嵌入和(ii)图像块划分。

实验设置。 作者在ImageNet有监督分类中使用ViT-B。作者采用了与[26]中从头开始训练的配方完全相同的超参数、增强和其他训练细节。值得注意的是,图像被裁剪并调整到224224大小,并划分为1616非重叠块。

位置嵌入。 类似于[10]的调查,作者从三个候选者中选择:sin-cos [62],可学习的,和无。第一个选项将局部性引入模型,而后两个选项则不引入。

作者的结论与[10]为自监督表示评估所提出的结论相似:可学习的位置嵌入与固定的sin-cos嵌入相当。有趣的是,作者观察到即使完全没有位置嵌入,性能也只有轻微下降 - 'none' 比sin-cos仅差1.5%。请注意,没有位置嵌入的分类模型在块方面完全是_PERMUTATION INVARIANT_的,尽管在像素方面不是 - 下文将展示证据。

像素分割。 接下来,作者使用可学习的位置嵌入并研究像素分割。为了系统地减少像素分割带来的局部性,作者的关键洞察是相邻像素不应再束缚在同一个块中。为此,在将生成的序列划分为单独的标记之前,作者对每个像素进行逐像素的排列。每个标记包含256个像素,与16×16像素块中的像素数量相同。这种排列是共享的,即对所有图像(包括测试图像)都保持不变。

排列在T步内完成,每步将在距离阈值(2表示在2×2邻域内,inf表示任意像素对可以交换)内交换一个像素对。作者在2D图像网格上使用汉明距离。T和控制图像被“破坏”的程度——更大的T或表示对局部邻域的更多破坏,从而移除更多的局部性偏差。图4展示了四种这样的排列。

picture.image

图4:研究ViT中像素分割效果的像素排列。作者在汉明距离内交换像素,执行T次(表示没有距离约束)。这里展示了一个被划分为2×2块的8×8图像。作者显示了进行4次像素交换(4个双向箭头)的排列。

图5展示了作者获得的结果。在表格(左)中,作者在没有距离约束的情况下(即)改变T。随着作者增加交换的像素对数量,性能开始时缓慢退化(最多10K)。然后,当作者进一步增加T时,性能迅速恶化。在时,Acc@1下降到57.2%,比完整图像降低了25.2%。请注意,总共有个像素对,所以意味着几乎所有像素都离开了它们的原始位置。图5(右)显示了在固定的T(10K或20K)下,的影响。作者可以看到,当允许更远的像素进行交换(更大的)时,性能受到的影响更大。当交换更多像素对时(),这一趋势更加明显。

picture.image

总的来说,像素排列对Acc@1的影响要远远大于改变位置嵌入,这表明像素分割对ViT的整体设计至关重要,并突显了作者工作的价值,即完全移除了像素分割。

讨论。 作为消除局部性的一种方法,像素排列极具破坏性。另一方面,PiT通过将单个像素视为标记,成功地消除了局部性,这表明消除局部性是可能的。作者假设这是因为排列像素不仅破坏了局部性偏见,还伤害了其他的归纳偏置——平移等方差。在PiT中,尽管局部性被完全移除,但 Transformer 权重仍然共享以保持平移等方差;但是通过混洗,这种归纳偏置也被大量移除。这种差异表明,平移等方差仍然很重要,不应被忽视,特别是在局部性已经受到损害之后。

7 Conclusion and Limitations

通过作者的探索,作者证明了 Transformers 可以直接将单个像素作为标记进行处理。这是令人惊讶的,因为它允许一种干净、潜在可扩展的架构,而无需局部性——这是被认为是视觉模型中基本归纳偏置。

鉴于深度学习的宗旨是使用数据驱动、可学习的替代方案取代手动引入的先验知识,作者相信作者的发现对社区具有重大价值,特别是在设计下一代针对2D图像领域及以外的模型时。

然而,作者当前演示的实用性和覆盖范围仍然有限。鉴于二次计算复杂度,PiT更多的是一种研究方法,而不是应用方法。即使附录0.C中增加了额外的任务,研究仍然不够全面。

尽管如此,作者相信这项工作已经发出了一个清晰、未经过滤的信息:局部性_不是基本的,而Patchification仅仅是一个有用的启发式方法,它在效率与准确性之间进行权衡。

参考

[1].An Image is Worth More Than 1616 Patches: Exploring Transformers on Individual Pixels.

picture.image

扫码加入👉「集智书童」交流群

(备注: 方向+学校/公司+昵称 )

picture.image

点击下方“ 阅读原文 ”,

了解更多AI学习路上的 「武功秘籍」

0
0
0
0
关于作者
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论