首页 > 其他分享 >MetaFormer Is Actually What You Need for Vision:通用的ViT架构才是关键

MetaFormer Is Actually What You Need for Vision:通用的ViT架构才是关键

时间:2023-12-17 23:13:29浏览次数:33  
标签:What 架构 Transformer 混合器 令牌 PoolFormer Actually MetaFormer

MetaFormer Is Actually What You Need for Vision

* Authors: [[Weihao Yu]], [[Mi Luo]], [[Pan Zhou]], [[Chenyang Si]], [[Yichen Zhou]], [[Xinchao Wang]], [[Jiashi Feng]], [[Shuicheng Yan]]


初读印象

comment:: (PoolFormer)Transformer的通用架构是其良好性能的保障,而不是其中的混合算子。

动机

Vit在CV上获得了良好性能表现。Transformer编码器由两部分组成,一部分是用于混合令牌信息的注意力模块,我们称之为令牌混合器(token mixer)。另一个部分包含其余模块,如通道MLP和剩余连接。通过将注意力模块视为一个特定的令牌混合器,我们进一步将整个Transformer抽象为一个通用架构MetaFormer,其中令牌混合器没有被指定。

Pasted image 20230217142952长久以来,Transformers的成功归功于基于注意力的令牌混合器。基于这一共同信念,注意力模块的许多变体被开发出来以改进视觉转换器。最近的工作将令牌混合器替换成完全空间MLP,也有竞争力的性能表现。其他方法将令牌混合器换为傅里叶变换,也有普通VIT97%的准确率。因此,我们假设与特定的令牌混合器相比,MetaFormer对于模型实现竞争性性能更为重要。为了验证这一假设,该文章应用一个极其简单的非参数算子----池化,作为令牌混合器,只进行基本的令牌混合。令人惊讶的是,这种衍生模型称为PoolFormer,取得了有竞争力的性能,甚至一贯优于调优的Transformer和MLP - like模型。

Pasted image 20230217143505

方法

本文考察一个基本问题:什么才是真正对Transformer及其变体的成功负责?其答案是一般架构,即MetaFormer。本文简单地利用池化作为基本的令牌混合器来探测MetaFormer的功效。

MateFormer

Pasted image 20230217152927MetaFormer是一个通用的体系结构,其中令牌混合器不被指定,其他组件与Transformers相同。输入I首先通过输入嵌入进行处理。Pasted image 20230217145352

其中\(X\in R^{N\times C}\)表示序列长度为N,嵌入维度为C的嵌入令牌。
第一个块包含一个令牌混合器,用于令牌之间的信息交流:
Pasted image 20230217153141第二个子块主要由具有非线性激活的两层MLP组成:Pasted image 20230217153238

其中
Pasted image 20230217153302\(\sigma\)是非线性激活函数,如GELU和ReLU。#### PoolFormer
使用尴尬的池化操作符作为令牌混合器,该算子没有可学习的参数,只是使每个令牌平均聚合其附近的令牌特征。该算子可以表示为:
Pasted image 20230217153702

其中K是池化大小,由于MetaFormer块已经有了残差连接,因此在上式中加入了输入本身的减法。

整体架构

Pasted image 20230217154155总共有L个PoolFormer块,阶段(1,2, 3, 4)分别有 (L/6, L/6, L/2, L/6)个块。

Pasted image 20230217154445

不同PoolFormer模型的配置。嵌入维数有两组,即小尺寸(64、128、320、512)维和中等尺寸(96、196、384、768)维。' S24 '表示模型嵌入维数较小,共有24个PoolFormer块。

表现

Pasted image 20230217200537

上表展示了使用FPN的不同主干的ADE20K语义分割性能。基于PoolFormer的模型始终优于基于CNN的ResNet和ResNeXt以及基于Transformer的PVT模型。例如,PoolFormer - 12比ResNet - 18和PVT - Tiny分别获得了37.1、4.3和1.5的mIoU

启发

mateformer中的patch embedding或许可以改进,比如用可变形卷积的方式。

标签:What,架构,Transformer,混合器,令牌,PoolFormer,Actually,MetaFormer
From: https://www.cnblogs.com/tifuhong/p/17909242.html

相关文章

  • What's new in Pika v3.5.2
    Pika社区近期发布了备受期待的v3.5.2版本https://github.com/OpenAtomFoundation/pika/releases/tag/v3.5.2-alpha,不仅解决了历史遗留的Bug问题,还引入了多项新特性。这些新特性主要包括Pika支持Redis事务、Pika上层增加缓存层实现冷热数据分离、提升读性能、Codis-Proxy......
  • 15.Please retell the parable of The Blind men and An Elephant. What is the moral
    Round1:RetellingtheParableandExtractingtheMoralSpeaker1(StudentA):Heyeveryone!So,let'sdiveintotheparableof"TheBlindMenandtheElephant."Inthisstory,severalblindmentouchdifferentpartsofanelephant,liketh......
  • 16.What are the basic elements of an argument according to Toulmin Model? How do
    Round1:UnderstandingtheBasicElementsofToulminModelSpeaker1(StudentA):Hello,everyone!Let'sstartbydiscussingthebasicelementsoftheToulminModelofargumentation.AccordingtoToulmin,anargumentconsistsofthreemaincomponents......
  • 无涯教程-Linux - Unix - What is Shell?函数
    该Shell为您提供了UNIX系统的接口。它收集您的输入,并根据该输入执行程序。程序完成执行后,将显示该程序的输出。Shell是一个环境,我们可以在其中运行命令,程序和Shell脚本。Shell的样式不同,就像操作系统的样式不同。每种Shell程序都有其自己的一组公认的命令和功能。Shell提......
  • WhatsApp群发功能的代码揭秘
    随着社交媒体的普及,WhatsApp作为一款全球性的即时通讯工具,已经成为人们生活中不可或缺的一部分。今天,我们将为您揭秘WhatsApp群发功能的代码,帮助您更好地了解这一方便快捷的通讯方式。一、WhatsApp群发功能简介WhatsApp群发功能可以让用户将一条消息发送给多个接收者,这一功能对于商......
  • WhatsApp引流脚本怎么写?
    随着社交媒体的普及,越来越多的企业开始利用WhatsApp进行营销和引流,那么,WhatsApp引流脚本怎么写呢?本文将分享一些基础源代码,帮助你更好地了解和掌握WhatsApp引流技巧。一、了解WhatsApp引流脚本的基本原理WhatsApp引流脚本是一种基于自动化工具的脚本程序,可以通过模拟人工操作来实......
  • WhatsApp消息群发脚本编写代码分享
    随着社交媒体的普及,WhatsApp已经成为全球使用最广泛的聊天应用之一,它不仅方便用户之间进行实时沟通,还支持消息群发功能。通过编写WhatsApp消息群发脚本,我们可以自动化发送消息,提高工作效率,本文将分享一些基础源代码,帮助你了解如何编写WhatsApp消息群发脚本。一、了解WhatsAppAPI在......
  • 神经网络入门篇:深度学习和大脑的关联性(What does this have to do with the brain?)
    深度学习和大脑的关联性开始讲故事(手动狗头)深度学习和大脑有什么关联性吗?关联不大。那么为什么会说深度学习和大脑相关呢?当你在实现一个神经网络的时候,那些公式是你在做的东西,你会做前向传播、反向传播、梯度下降法,其实很难表述这些公式具体做了什么,深度学习像大脑这样的类......
  • What‘s CRM?
    CRM(CustomerRelationshipManagement,客户关系管理)是指企业通过对客户资料、交往记录、销售记录等数据进行分析,从而了解客户需求,并对客户进行分类管理,以提高客户满意度,促进企业销售增长的一种管理方式。CRM系统是实现CRM的核心工具,它通过收集、存储、分析客户数据,帮助企业建立客......
  • What is NUMA? (翻译 by chatgpt)
    原文:https://www.kernel.org/doc/html/latest/mm/numa.htmlThisquestioncanbeansweredfromacoupleofperspectives:thehardwareviewandtheLinuxsoftwareview.这个问题可以从硬件视角和Linux软件视角来回答。Fromthehardwareperspective,aNUMAsystemisa......