CaiT:Facebook提出高性能深度ViT结构 | ICCV 2021

CaiT通过LayerScale层来保证深度ViT训练的稳定性,加上将特征学习和分类信息提取隔离的class-attention层达到了很不错的性能,值得看看

来源:晓飞的算法工程笔记 公众号

论文: Going deeper with Image Transformers

Introduction


  自ResNet出现以来,残差架构在计算机视觉中非常突出:

  其中函数 g l g_l gl R l R_l Rl定义了网络如何更新第l层的输入 x l x_l xl。函数 g l g_l gl通常是恒等式,而残差分支 R l R_l Rl则是网络构建的核心模块,许多研究都着力于残差分支 R l R_l Rl的变体以及如何对 R l R_l Rl进行初始化。实际上,残差结构突出了训练优化和结构设计之间的相互作用,正如ResNet作者所说的:残差结构没有提供更好的特征表达能力,之所以取得更好的性能,是因为残差结构更容易训练。

  目前很火的ViT网络可认为是实现了一种特定形式的残差架构:在将输入图像转换为一组 x 0 x_0 x0的向量之后,网络交替进行自注意力层 (SA) 与前馈网络 (FFN) 处理:

  其中 η \eta η是LayerNorm算子。

  对于卷积神经网络和应用于NLP或语音任务的Transformer,如何对残差架构的残差分支进行归一化、加权或初始化受到了广泛关注。作者也在ViT上对不同初始化、优化和架构设计之间的相互作用进行了分析,并且提出了LayerScale层。LayerScale层包含一个初始权值接近于零的可学习对角矩阵,加在每个残差模块的输出上,可以有效地改进更深层架构的训练。

  此外,作者还提出了class-attention层。类似于编码器/解码器架构,显示地将用于token间特征提取的transformer层与将token整合成单一向量进行分类的class-attention层分开,避免了两种目标不同的处理混合的矛盾现象。

  通过实验验证,论文的主要贡献如下:

  • LayerScale能够显着促进了训练收敛并提高了深度更大的ViT的准确性,仅需在训练时向网络添加了数千个参数(对比总参数量可以忽略不计)。
  • 具有class-attention的架构提供了更高效的class embedding的处理。
  • 在Imagenet-Real和Imagenet V2 matched frequency上,CaiT无需额外的训练数据就达到了SOTA性能。在ImageNet1k-val上,CaiT与最先进的模型 (86.5%) 相当,但仅需要更少的 FLOPs (329B vs 377B)和更少的参数(356M vs 438M)。
  • <
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值