浅谈视觉Transformer技术

发布于 2024-9-4 12:16
浏览
0收藏

1.标准Transformer

浅谈视觉Transformer技术-AI.x社区

经典Transformer模型(如上图所示),它是由编码器(蓝框)和解码器(绿框)组成,标准Vision Transformer(ViT)[2]主要应用了其中的编码器,编码器模块主要由一个Multi-Head Self-Attention(MHA)和一个Multilayer Perceptron(MLP)组成。

浅谈视觉Transformer技术-AI.x社区


2.视觉Transformer

标准Transformer编码器的输入是一维embedding,为了能将该编码器应用于图像任务,将尺寸为(H,W,C)的图像切分成尺寸为(P,P,C)的图像块,一共得到 浅谈视觉Transformer技术-AI.x社区 个图像块,reshape后得到尺寸为( 浅谈视觉Transformer技术-AI.x社区 , 浅谈视觉Transformer技术-AI.x社区

的输入embedding,这系列操作将2维图像数据转为1维,使得标准Transformer编码器能对其进行处理,编码后将特征送入MLP模块进行分类,这就是标准的ViT(Vision Transformer),ViT在大型数据集上预训练,针对较小的下游任务作微调训练。在ImageNet数据集上取得了88.55% Top-1的准确率,超越了ResNet系列模型,打破了CNN(卷积神经网络)在视觉任务上的垄断,相较于CNN具有更强泛化能力。但是,该模型在小规模数据集的表现不如CNN,并且随着图像尺寸的增加,Vision Transformer的计算量会成指数倍的增长,于是有2种流派来提升Vision Transformer的效果。

一种是改良派,该流派认为Transformer缺少CNN的归纳偏置(平移不变性,局部相关性),改良Transformer编码器结构,在其中加入图像任务的归纳偏置。标准的ViT模型的输出特征是扁平的,其尺寸为输入图像尺寸的1/16,这种维度的特征对于分类任务是可以接受的,对于检测或者分割任务通常需要{1/4,1/8,1/16,1/32}尺度的特征,而大尺度的特征图也会极大增加Self-Attention模块的计算量,所以必须在引入多尺度特征的同时降低计算量。Pyramid Vision Transformer(PVT)[3]提出了Spatial-Reduction Attention(SRA)层,如下图左SRA与MHA一样接收query Q、key K和value V作为输入,不同之处在于SRA在attention操作之前降低了K和V的特征维度,这可以将计算和内存的开销减少为之前的 浅谈视觉Transformer技术-AI.x社区

浅谈视觉Transformer技术-AI.x社区

浅谈视觉Transformer技术-AI.x社区

另一种是大模型派,在NLP领域,模型越大,模型对于零样本和少样本任务的能力越强。增加ViT模型的参数规模和训练数据,再结合自监督训练,也能提升各种下游任务的表现。ViT比CNN需要更多的训练数据,自监督学习的设计显得尤为重要。BEiT-3[5]模型架构基于40层的ViT-Giant组成,如下图左模型共包含19亿个参数。在预训练数据上,BEiT-3 在单模态(即图像与文本)和多模态数据(即图像-文本对)上通过统一的掩码-预测任务进行 BEiT-3 预训练。预训练期间,会随机掩盖一定百分比的文本字符或像素块,模型通过被训练恢复掩盖的文本字符或其视觉符号,来学习不同模态的表示及不同模态间的对齐,BEiT-3在分类、检测、分割多个基准上刷新了记录。22年12月智源开源了简单又强大的视觉基础模型EVA[6],将最强语义学习与最强几何结构学习相结合,在ImageNet分类、COCO检测分割、Kinetics视频分类等广泛的视觉感知任务中取得当前最强性能。EVA,如下图右将ViT规模扩大到十亿参数(1-Billion)ViT-Giant进行训练,CLIP[7]模型输入为完整的图像,而EVA模型的输入为有遮盖的图像,训练过程是让EVA模型遮盖部分的输出去重构CLIP模型对应位置的输出。

浅谈视觉Transformer技术-AI.x社区

浅谈视觉Transformer技术-AI.x社区



3.总结                           

ViT技术使得目标检测、图像识别、自动驾驶等领域都得到了质的飞跃,通过在预训练ViT基础上微调下游任务,企业可以快速地将AI技术应用到实际生产和业务中,创造出更多的商业价值。笔者在微调ViT-Giant检测模型时发现,batchszie设置为1时显存达到25GB以上,P40(22GB)显卡已经无法容纳微调训练,只能将代码及数据迁移至V100云主机得以继续训练,大型ViT的预训练则需要更大的算力,这导致只有拥有大量算力的资源和数据的企业才能够开发和应用大型ViT模型,从而加深产业的技术壁垒。ViT技术给AI产业带来了巨大的影响,其影响将持续深远。


参考文献


[1]Attention is all you need


[2]AN IMAGE IS WORTH 16X16 WORDS: TRANSFORMERS FOR IMAGE RECOGNITION AT SCALE


[3]Pyramid Vision Transformer: A Versatile Backbone for Dense Prediction without Convolutions


[4]Swin Transformer: Hierarchical Vision Transformer using Shifted Windows


[5]Image as a Foreign Language: BEIT Pretraining for All Vision and Vision-Language Tasks


[6]EVA: Exploring the Limits of Masked Visual Representation Learning at Scale


[7]Contrastive Language-Image Pre-Training

本文转载自​AI遇见云​,作者: 周华健 ​​

收藏
回复
举报
回复
相关推荐