许可协议: 其他
标签:
- 视觉
- 图像分类
数据集:
- 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数据集的图像分类为ImageNet的1,000个类别之一:
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('Matthijs/mobilevit-small')
model = MobileViTForImageClassification.from_pretrained('Matthijs/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万张图像和1,000个类别。
训练流程
预处理
训练仅需基础数据增强,即随机缩放裁剪和水平翻转。
为学习多尺度表征且无需微调,训练时采用多尺度采样器,随机从以下尺寸选择图像:(160,160)、(192,192)、(256,256)、(288,288)、(320,320)。
推理时,图像被统一缩放至288x288分辨率,并中心裁剪为256x256。
像素值归一化至[0,1]范围,图像需为BGR通道顺序而非RGB。
预训练
MobileViT网络在8块NVIDIA GPU上从头训练300轮,有效批量大小为1024,学习率经3,000步预热后采用余弦退火。同时使用标签平滑交叉熵损失和L2权重衰减。训练分辨率从160x160到320x320动态变化,采用多尺度采样。
评估结果
模型 |
ImageNet top-1准确率 |
ImageNet top-5准确率 |
参数量 |
模型链接 |
MobileViT-XXS |
69.0 |
88.9 |
130万 |
https://huggingface.co/Matthijs/mobilevit-xx-small |
MobileViT-XS |
74.8 |
92.3 |
230万 |
https://huggingface.co/Matthijs/mobilevit-x-small |
MobileViT-S |
78.4 |
94.1 |
560万 |
https://huggingface.co/Matthijs/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}
}