许可协议: 其他
标签:
- 视觉
- 图像分类
数据集:
- imagenet-1k
微件示例:
- 图片链接: https://huggingface.co/datasets/mishig/sample_images/resolve/main/tiger.jpg
示例标题: 老虎
- 图片链接: https://huggingface.co/datasets/mishig/sample_images/resolve/main/teapot.jpg
示例标题: 茶壶
- 图片链接: https://huggingface.co/datasets/mishig/sample_images/resolve/main/palace.jpg
示例标题: 宫殿
MobileViT (小尺寸模型)
该MobileViT模型在ImageNet-1k数据集上以256x256分辨率预训练而成。由Sachin Mehta和Mohammad Rastegari在论文《MobileViT:轻量级、通用且移动端友好的视觉Transformer》中提出,并首次发布于此代码库。使用的许可协议为Apple示例代码许可。
免责声明:发布MobileViT的团队未为此模型编写模型卡,本模型卡由Hugging Face团队撰写。
模型描述
MobileViT是一种轻量级、低延迟的卷积神经网络,结合了MobileNetV2风格的层与一个新型模块,该模块通过Transformer替代了卷积中的局部处理。与ViT(视觉Transformer)类似,图像数据在被Transformer层处理前会被转换为扁平化的图像块。之后,这些图像块会重新“解扁平化”为特征图。这使得MobileViT模块可以放置在CNN的任何位置。MobileViT不需要任何位置编码。
预期用途与限制
您可以将该原始模型用于图像分类任务。请访问模型中心寻找您感兴趣任务的微调版本。
使用方法
以下示例展示如何使用该模型将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-small")
model = MobileViTForImageClassification.from_pretrained("apple/mobilevit-small")
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("预测类别:", model.config.id2label[predicted_class_idx])
目前,特征提取器和模型均支持PyTorch。
训练数据
MobileViT模型在ImageNet-1k上进行了预训练,该数据集包含100万张图像和1000个类别。
训练流程
预处理
训练仅需基础的数据增强,即随机调整大小裁剪和水平翻转。
为了学习多尺度表示而无需微调,训练时使用了多尺度采样器,图像尺寸随机从以下尺寸中选择:(160, 160)、(192, 192)、(256, 256)、(288, 288)、(320, 320)。
在推理阶段,图像会被调整大小/缩放至相同分辨率(288x288),并中心裁剪为256x256。
像素值被归一化到[0, 1]范围。图像预期为BGR像素顺序,而非RGB。
预训练
MobileViT网络在ImageNet-1k上从头开始训练了300个周期,使用8块NVIDIA GPU,有效批量大小为1024,并进行了3000步学习率预热,随后采用余弦退火。同时使用了标签平滑交叉熵损失和L2权重衰减。训练分辨率从160x160到320x320不等,采用多尺度采样。
评估结果
模型 |
ImageNet top-1准确率 |
ImageNet top-5准确率 |
参数量 |
链接 |
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}
}