
摘要
本文研究了多尺度视觉Transformer(MViTv2)作为一种统一架构在图像分类、视频分类以及目标检测任务中的应用。我们提出了一种改进的MViT结构,引入了分解的相对位置编码(decomposed relative positional embeddings)与残差池化连接(residual pooling connections)。基于该架构,我们构建了五个不同规模的模型,并在ImageNet图像分类、COCO目标检测以及Kinetics视频识别任务上进行了评估,结果均优于现有方法。此外,我们将MViTv2的池化注意力机制(pooling attention)与窗口注意力机制(window attention)进行了对比,发现MViTv2在准确率与计算效率的权衡上表现更优。在不依赖额外技巧(bells-and-whistles)的情况下,MViTv2在三个领域均达到了当前最优性能:在ImageNet图像分类任务中取得88.8%的准确率,在COCO目标检测任务中达到58.7 boxAP,在Kinetics-400视频分类任务中实现86.1%的准确率。相关代码与预训练模型已开源,地址为:https://github.com/facebookresearch/mvit。
代码仓库
JunweiLiang/aicity_action
pytorch
GitHub 中提及
facebookresearch/SlowFast
官方
pytorch
GitHub 中提及
rwightman/pytorch-image-models
pytorch
GitHub 中提及
rajatmodi62/occludedactionbenchmark
pytorch
GitHub 中提及
3dperceptionlab/visual-wetlandbirds
pytorch
GitHub 中提及
open-mmlab/mmclassification
pytorch
facebookresearch/mvit
官方
pytorch
GitHub 中提及
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| action-classification-on-kinetics-400 | MViTv2-L (ImageNet-21k pretrain) | Acc@1: 86.1 Acc@5: 97.0 |
| action-classification-on-kinetics-400 | MViT-B (train from scratch) | FLOPs (G) x views: 225x5 |
| action-classification-on-kinetics-600 | MViTv2-L (ImageNet-21k pretrain) | Top-1 Accuracy: 87.9 Top-5 Accuracy: 97.9 |
| action-classification-on-kinetics-600 | MViTv2-B (train from scratch) | Top-5 Accuracy: 97.2 |
| action-classification-on-kinetics-600 | MViTv2-L (train from scratch) | Top-1 Accuracy: 85.5 |
| action-classification-on-kinetics-600 | MViT-L (train from scratch) | GFLOPs: 206x5 |
| action-classification-on-kinetics-700 | MViTv2-B | Top-1 Accuracy: 76.6 Top-5 Accuracy: 93.2 |
| action-classification-on-kinetics-700 | MViTv2-L (ImageNet-21k pretrain) | Top-1 Accuracy: 79.4 Top-5 Accuracy: 94.9 |
| action-classification-on-kinetics-700 | MoViNet-A6 | Top-1 Accuracy: 79.4 |
| action-recognition-in-videos-on-something | MViT-L (IN-21K + Kinetics400 pretrain) | GFLOPs: 2828x3 |
| action-recognition-in-videos-on-something | MViTv2-L (IN-21K + Kinetics400 pretrain) | Parameters: 213.1 Top-1 Accuracy: 73.3 Top-5 Accuracy: 94.1 |
| action-recognition-in-videos-on-something | MViTv2-B (IN-21K + Kinetics400 pretrain) | Parameters: 51.1 Top-5 Accuracy: 93.4 |
| action-recognition-in-videos-on-something | MViT-B (IN-21K + Kinetics400 pretrain) | GFLOPs: 225x3 Top-1 Accuracy: 72.1 |
| action-recognition-on-ava-v2-2 | MViTv2-L (IN21k, K700) | mAP: 34.4 |
| image-classification-on-imagenet | MViTv2-L (384 res) | GFLOPs: 140.2 Number of params: 218M Top 1 Accuracy: 86.3% |
| image-classification-on-imagenet | MViTv2-H (mageNet-21k pretrain) | GFLOPs: 120.6 Number of params: 667M Top 1 Accuracy: 88% |
| image-classification-on-imagenet | MViTv2-H (512 res, ImageNet-21k pretrain) | GFLOPs: 763.5 Number of params: 667M Top 1 Accuracy: 88.8% |
| image-classification-on-imagenet | MViTv2-T | GFLOPs: 4.7 Number of params: 24M Top 1 Accuracy: 82.3% |
| image-classification-on-imagenet | MViTv2-L (384 res, ImageNet-21k pretrain) | GFLOPs: 140.7 Number of params: 218M Top 1 Accuracy: 88.4% |
| instance-segmentation-on-coco-minival | MViTv2-L (Cascade Mask R-CNN, multi-scale, IN21k pre-train) | mask AP: 50.5 |
| instance-segmentation-on-coco-minival | MViT-L (Mask R-CNN, single-scale) | mask AP: 46.2 |
| instance-segmentation-on-coco-minival | MViTv2-L (Cascade Mask R-CNN, single-scale) | mask AP: 47.1 |
| instance-segmentation-on-coco-minival | MViTv2-H (Cascade Mask R-CNN, single-scale, IN21k pre-train) | mask AP: 48.5 |
| object-detection-on-coco-minival | MViTv2-L (Cascade Mask R-CNN, multi-scale, IN21k pre-train) | box AP: 58.7 |
| object-detection-on-coco-minival | MViTv2-L (Cascade Mask R-CNN, single-scale) | box AP: 54.3 |
| object-detection-on-coco-minival | MViTv2-H (Cascade Mask R-CNN, single-scale, IN21k pre-train) | box AP: 56.1 |
| object-detection-on-coco-minival | MViT-L (Mask R-CNN, single-scale, IN21k pre-train) | box AP: 52.7 |
| object-detection-on-coco-o | MViTV2-H (Cascade Mask R-CNN) | Average mAP: 30.9 Effective Robustness: 5.62 |