• 论文阅读:自适应ViT(A-ViT)


    本文来自cvpr 2022 :

    https://openaccess.thecvf.com/content/CVPR2022/papers/Yin_A-ViT_Adaptive_Tokens_for_Efficient_Vision_Transformer_CVPR_2022_paper.pdficon-default.png?t=N7T8https://openaccess.thecvf.com/content/CVPR2022/papers/Yin_A-ViT_Adaptive_Tokens_for_Efficient_Vision_Transformer_CVPR_2022_paper.pdf介绍了一种名为A-ViT(Adaptive Vision Transformer)的新方法,旨在通过自适应调整Vision Transformer的推理成本来适应不同复杂度的图像。

    1,动机

    传统的Transformer模型计算成本是固定的,与输入图像的复杂性无关。作者认为这导致在处理简单图像时可能会有不必要的计算浪费。A-ViT旨在根据输入图像的复杂性自适应地调整计算量。此外,作者认为这样的改进还能提高模型的泛化能力。

    2,相关工作

    现有的提高Transformer效率的方法:

    1)权重共享 2)动态控制注意力范围 3) 使用线性注意力机制来减少自注意力层的计算复杂度。4)剪枝 5)自适应计算时间 6)通过随机方法或强化学习来决定何时停止网络层的计算。7)动态ViT:使用额外的控制门和Gumbel-softmax技巧来学习停止token的时机。8)稀疏注意力 9)Transformer的变体,降低Transformer模块本身的复杂度 10)分辨率自适应网络 11)深度自适应网络等

    3,模型整体结构

    可以看出来,整体结构和正常的多层ViT模型一致。关键在于每个Transformer层都有自适应停止模块。

    自适应停止模块为每个token计算一个停止概率。该模块使用现有transformer块中的参数,通过借用每个块中最后一个密集层的单个神经元来实现,不增加额外的参数。对于每个token,停止概率的公式如下:

    其中_{}^{}t_{k,e}^{l}是在层 l的token k的第e维,\sigma ()logistic sigmoid函数,γ 和 β 是两个可学习的参数,它们对嵌入向量进行平移和缩放。

    当一个token的累积停止分数超过某个阈值时,该token将停止进一步的处理。一旦token满足停止条件,就会通过mask操作从后续层的计算中移除,以减少计算量。

    众所周知,ViT模型中通过class token计算最终分类概率,对于这些class token也应用自适应停止机制。

    4,损失函数

    本文的损失函数是多种损失函数的组合:

    其中1) L_{task}是跟任务有关的损失函数;

    2) L_{distr}是分布先验正则化损失,这个损失用于将token的停止概率分布正则化到一个预定义的目标分布,通常是一个高斯分布,中心位于期望的停止深度,公式如下

    使用KL散度来正则化停止概率分布,H 是模型学习到的停止概率分布,H^{target}是目标分布。通过最小化这个损失,模型学习在期望的深度停止token的计算。

    3) L_{ponder}是跟token停止机制有关的损失函数,用于鼓励模型尽早停止对token的计算。这个损失通过一个辅助变量(reminder,r)来计算,旨在减少整体计算量,同时保持模型性能。公式如下:

    其中,N_{k}是token k 满足停止条件的层数。r_{k}是token k的余数(remainder),它是在达到停止条件之前累积的停止概率的剩余部分。

    其中,h_{k}^{l} 是在层 l上token k的停止概率。

    5,实验

    1)比较了A-ViT与其他几种动态推理停止机制的性能。

    2)展示了A-ViT用在不同模型上的吞吐量改进。+ distil表示用上了蒸馏

  • 相关阅读:
    如何避免毕业论文选题和别人雷同?
    Java:一篇学好设计模式
    oracle学习43-oracle导出空表
    手机如何压缩照片?压缩方法分享
    深入理解联邦学习——联邦学习的分类
    整数拆分(动态规划)
    C++:string类的常用接口说明及其模拟实现
    Python基础知识从hello world 开始(第四天完结)
    JavaWeb_LeadNews_Day11-KafkaStream实现实时计算文章分数
    [附源码]计算机毕业设计JAVA健身健康规划系统
  • 原文地址:https://blog.csdn.net/wwimhere/article/details/139728030