GiantPandaCV | OutLook Attention:具有局部信息感知能力的ViT

本文来源公众号“GiantPandaCV”,仅用于学术分享,侵权删,干货满满。

原文链接:OutLook Attention:具有局部信息感知能力的ViT

【写在前面】

近段时间,Transformer-based模型在Visual Recognition领域取得了非常大的进展。但是如果不借助额外的训练数据,Transformer-based模型离CNN-based模型还是具有一定的差距(NFNet-F5(CNN-based):86.8%,CaiT(Transformer-based):86.5%)。作者认为,这是因为token embedding并没有进行细粒度特征表示,因此本文提出了一种新的Attention方式,通过局部信息的感知,能够获得更加细粒度的特征表示。

分类任务中,SOTA模型准确率和Model size的对应图

1. 论文和代码地址

VOLO: Vision Outlooker for Visual Recognition

论文地址:https://arxiv.org/abs/2106.13112

官方代码:https://github.com/sail-sg/volo

一看就懂的核心代码: https://github.com/xmu-xiaoma666/External-Attention-pytorch/blob/master/attention/OutlookAttention.py

2. Motivation

前面说到了,token embedding进行特征表示是粗粒度的。为什么是token embedding就是粗粒度的呢?因为一张图片的size往往是比较大的(e.g., 224x224),CNN因为只对局部的信息进行感知(在正常图片上进行滑动窗口操作),所以计算复杂度和图片大小呈线性关系。如果将图片进行token embedding,直接进行Transformer的操作,那就会导致计算复杂度“爆炸”,因为Transformer中的Self-Attention(SA)的复杂度与输入特征的大小是呈平方关系的。

所以Vision Transformer需要将图片先进行token embedding到比较小的size(e.g.,  14x14),才能保证计算量在一个合理的范围内。但这就导致了一个信息损失的问题,因为token embedding到较小的size会丢失一些细粒度的信息。

“Embedding的图片太大,会导致计算量过大;embedding的图片过小,会导致信息损失太大”,如何在保证合理计算量的情况下,获得更加细粒度的特征表示,这就是本文要解决的问题。

3. 方法

本文的模型可以分为两步:

第一步,通过一系列Outlooker获得

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值