关注公众号,发现CV技术之美
本文分享 NeurIPS 2021 论文『Post-Training Quantization for Vision Transformer』,由北大&华为诺亚联合提出 Vision Transformer 的后训练量化方法,解决 Transformer 部署难的问题。
详细信息如下:
论文链接:https://arxiv.org/abs/2106.14156
项目链接:未开源
导言:
最近,Transformer在各种计算机视觉应用中取得了不错的性能。与主流卷积神经网络相比,视觉Transformer通常具有复杂的结构,用于提取功能强大的特征表示,但是在移动设备上部署比较困难。
在本文中,作者提出了一种有效的后训练量化算法,以减少视觉Transformer 的存储和计算成本。量化任务可以看做是分别为权重和输入找到最佳低比特的量化间隔。为了保持注意力机制的功能,作者在传统的量化目标中引入了排名损失(ranking loss),目的是在量化后保持自注意结果的相对顺序。
此外,作者深入分析了不同层次的量化损失与特征多样性之间的关系,并利用每个注意图和输出特征的核范数探索了一种混合精度量化方案。该方法的有效性在多个基准模型和数据集上得到验证,其性能优于SOTA的后训练量化算法。基于在ImageNet数据集上使用的DeiT-B模型,本文的量化模型可以获得81.29%的top-1精度,量化约为8比特。
01
Motivation
随着自然语言处理(NLP)任务的应用,基于Transformer的模型在各种计算机视觉(CV)任务中显示出强大的能力,如图像分类、目标检测和图像超分辨率。这些模型通常具有数亿个参数,例如,ViT-L模型中有307M个参数和64G FLOPs,这在推理过程中既占用显存又占用计算。这给模型在资源有限的设备上运行和部署非常困难。
在各种压缩方法(如剪枝和权重分解)中,量化方法能够通过使用较低的位宽来压缩神经网络,而不改变模型结构,这对于精心设计的网络结构(如Transformer)特别有用。通过将浮点数操作调整为整数或位操作,量化权重和输入可以加快推理速度。在NLP中已经有一些基于Transformer的模型的训练感知量化方法。然而,这些方法不是为计算机视觉任务设计的,通常需要额外的微调或者训练。此外,在某些场景下,可能无法获得完整的训练数据来优化量化模型。
后训练量化是一种有效的模型压缩技术,它可以直接量化神经网络模型,而无需进行微调。大多数现有的后训练量化方法是为卷积神经网络(CNN)或递归神经网络(RNN)设计的。这些方法没有考虑到视觉Transformer的特性(例如,CNN中不存在注意机制),不完全适