🚀 MobileViT (超超小型模型)
MobileViT 是一个轻量级的图像分类模型,结合了 MobileNetV2 风格的层和基于 Transformer 的全局处理模块,可用于高效的图像分类任务。
🚀 快速开始
你可以使用以下代码将 COCO 2017 数据集中的图像分类为 1000 个 ImageNet 类别之一:
from transformers import MobileViTFeatureExtractor, MobileViTForImageClassification
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
feature_extractor = MobileViTFeatureExtractor.from_pretrained("apple/mobilevit-xx-small")
model = MobileViTForImageClassification.from_pretrained("apple/mobilevit-xx-small")
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("Predicted class:", model.config.id2label[predicted_class_idx])
目前,特征提取器和模型都支持 PyTorch。
✨ 主要特性
- MobileViT 是一种轻量级、低延迟的卷积神经网络,它将 MobileNetV2 风格的层与一个新的模块相结合,该模块使用 Transformer 以全局处理替代卷积中的局部处理。
- 与 ViT(视觉 Transformer)一样,图像数据在由 Transformer 层处理之前会转换为扁平化的图像块,之后这些图像块会“反扁平化”回特征图,这使得 MobileViT 模块可以放置在 CNN 内的任何位置。
- MobileViT 不需要任何位置嵌入。
📚 详细文档
模型描述
MobileViT 是一种轻量级、低延迟的卷积神经网络,它将 MobileNetV2 风格的层与一个新的模块相结合,该模块使用 Transformer 以全局处理替代卷积中的局部处理。与 ViT(视觉 Transformer)一样,图像数据在由 Transformer 层处理之前会转换为扁平化的图像块,之后这些图像块会“反扁平化”回特征图。这使得 MobileViT 模块可以放置在 CNN 内的任何位置。MobileViT 不需要任何位置嵌入。
预期用途和限制
你可以使用原始模型进行图像分类。请查看模型中心,以查找针对你感兴趣的任务进行微调的版本。
训练数据
MobileViT 模型在 ImageNet-1k 上进行了预训练,这是一个由 100 万张图像和 1000 个类别组成的数据集。
训练过程
预处理
训练只需要基本的数据增强,即随机裁剪和水平翻转。
为了在不进行微调的情况下学习多尺度表示,在训练期间使用了多尺度采样器,图像大小从 (160, 160)、(192, 192)、(256, 256)、(288, 288)、(320, 320) 中随机采样。
在推理时,图像被调整/缩放为相同的分辨率 (288x288),并在 256x256 处进行中心裁剪。
像素被归一化到 [0, 1] 范围。图像预期为 BGR 像素顺序,而不是 RGB。
预训练
MobileViT 网络在 8 个 NVIDIA GPU 上的 ImageNet-1k 上从头开始训练 300 个 epoch,有效批量大小为 1024,学习率预热 3000 步,然后进行余弦退火。还使用了标签平滑交叉熵损失和 L2 权重衰减。训练分辨率从 160x160 到 320x320 不等,使用多尺度采样。
评估结果
模型 |
ImageNet 前 1 准确率 |
ImageNet 前 5 准确率 |
参数数量 |
URL |
MobileViT-XXS |
69.0 |
88.9 |
1.3 M |
https://huggingface.co/apple/mobilevit-xx-small |
MobileViT-XS |
74.8 |
92.3 |
2.3 M |
https://huggingface.co/apple/mobilevit-x-small |
MobileViT-S |
78.4 |
94.1 |
5.6 M |
https://huggingface.co/apple/mobilevit-small |
BibTeX 引用和引用信息
@inproceedings{vision-transformer,
title = {MobileViT: Light-weight, General-purpose, and Mobile-friendly Vision Transformer},
author = {Sachin Mehta and Mohammad Rastegari},
year = {2022},
URL = {https://arxiv.org/abs/2110.02178}
}
📄 许可证
该模型使用的许可证是 Apple 示例代码许可证。
⚠️ 重要提示
发布 MobileViT 的团队没有为该模型编写模型卡片,因此此模型卡片由 Hugging Face 团队编写。