
摘要
视觉Transformer(Vision Transformer, ViT)正逐渐成为图像识别领域的前沿架构。尽管近期研究认为ViT相较于卷积神经网络具有更强的鲁棒性,但我们的实验发现,基于ImageNet训练的ViT对局部纹理过度依赖,未能充分利用形状信息,因而难以在分布外(out-of-distribution)的真实世界数据上实现良好泛化。为解决这一缺陷,我们提出一种简单而有效的架构改进方法:在ViT的输入层引入由向量量化编码器生成的离散标记(discrete tokens)。与标准的连续像素标记不同,离散标记对微小扰动具有不变性,且单个标记所携带的信息量较少,这促使ViT更关注具有不变性的全局语义信息。实验结果表明,在四种不同的ViT变体中引入离散表示后,ViT在七个ImageNet鲁棒性基准测试中的性能平均提升高达12%,同时保持了在原始ImageNet数据集上的原有性能。
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| domain-generalization-on-imagenet-c | DiscreteViT | Number of params: 87M mean Corruption Error (mCE): 46.22 |
| domain-generalization-on-imagenet-c | DrViT | mean Corruption Error (mCE): 46.22 |
| domain-generalization-on-imagenet-c | DiscreteViT (Im21k) | Number of params: 87M mean Corruption Error (mCE): 38.74 |
| domain-generalization-on-imagenet-r | DiscreteViT | Top-1 Error Rate: 44.74 |
| domain-generalization-on-imagenet-sketch | DrViT | Top-1 accuracy: 44.72 |
| domain-generalization-on-stylized-imagenet | DiscreteViT | Top 1 Accuracy: 22.19 |
| image-classification-on-imagenet | DiscreteViT | Top 1 Accuracy: 85.07% |
| image-classification-on-objectnet | ViT-B (Discrete 512x512) | Top-1 Accuracy: 46.62 |