【Transformer】21、AdaViT: Adaptive Tokens for Efficient Vision Transformer

本文介绍了一种新的视觉Transformer模型,通过引入输入依赖的暂停分数动态地减少计算量。该模型根据输入图像的识别难度动态调整token数量,从而在保持性能的同时降低了计算复杂度。实验结果显示,该模型能有效关注图像中的关键区域,对于简单和复杂样本的处理表现出良好的效率和准确性。
摘要由CSDN通过智能技术生成


在这里插入图片描述

一、背景

Transformer 在多个任务上都取得了亮眼的表现,在计算机视觉中,一般是对输入图像切分成多个 patch,然后计算 patch 之间的自注意力实现下游任务。

但由于自注意力机制的计算量是和输入图像大小呈平方关系的,所以,在边端设备上使用 Transformer 成为了一个问题。

作者认为不同的输入图像对网络来说,预测难度是不同的。如一个车和一个人在干净的背景中,那么就很好识别。如果是多个不同的动物在复杂的背景中,那么就较难识别。

基于此,作者实现了一个网络结构,根据输入的难度,来动态的调节 token 的个数来控制 transformer 的计算复杂度。

在这里插入图片描述

二、方法

在这里插入图片描述

vision transformer 的过程如下:
在这里插入图片描述

  • ϵ ( . ) \epsilon(.) ϵ(.): encoding network,把输入图像编码成 positioned token
  • C ( . ) C(.) C(.):class token 的后处理
  • L L L:transformer block
  • F ( . ) F(.) F(.):self-attention

为了动态杀掉 tokens,作者为每个 token 引入了一个 input-dependent halting score:
在这里插入图片描述

  • H ( . ) H(.) H(.) 是 halting module
  • k k k 是 token 索引, l l l 是层

在这里插入图片描述

  • t k , e l t_{k,e}^l tk,el t k l t_k^l tkl 的第 e e e
  • σ \sigma σ 是 logistic sigmoid 函数
  • β \beta β γ \gamma γ 是非线性操作之前使用的平移和缩放系数

为了根据 layer 来追踪 halting probabilities,每个 token 会计算一个补充参数:

在这里插入图片描述

halting probabilities 如下:
在这里插入图片描述

ponder loss :每个 token 的 ponder loss 会平均。

在这里插入图片描述

分类任务的损失为:
在这里插入图片描述

halting score distribution 分布为:
在这里插入图片描述
所以使用 KL 散度来衡量真实和预测的分布偏差:
在这里插入图片描述

则总损失为:

在这里插入图片描述

三、效果

在这里插入图片描述
从图 3 可以看出, adaptive 选择 token 能够对高度突出和巨变的区域产生强响应,通常和类别相关。

1、Token 颜色深度分布:

在图中绘制 token 的颜色,如图 4 所示,其实是一个以图像中心为中心的 2D 类高斯分布,这也说明 ImageNet 的大多数样本都是在中间的。很多计算量都来自于中间区域,边缘参与计算的很少。
在这里插入图片描述

2、Halting score distribution:

如图 5 绘制了每个图像的每个 layer 的 halting score。

随机采样了 5k 验证集,在前几个 layer,halting score 随着 layer 的加深而增大,后面慢慢减小。

在这里插入图片描述
3、难样本和简单样本

图 6 展示了难例和简单例和其各自所需的计算量。

简单的例子可以被正确分类,AdaViT 处理的也比难例快。

在这里插入图片描述

4、类别敏感性

起初非常确信或非常不确信的样本被 adaptive 影响的很小,adaptive 推理能够提升形状明显的类别,如独立的家具或动物。

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

呆呆的猫

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值