🚀 图像特征提取模型transformers
本项目引入了基于多模态自回归目标预训练的AIMv2系列视觉模型。AIMv2预训练简单直接,能有效进行训练和扩展。该模型在多模态理解基准测试中表现出色,在开放词汇目标检测和指代表达理解等任务上也有优秀表现。
🚀 快速开始
模型信息
属性 |
详情 |
库名称 |
transformers |
许可证 |
apple-amlr |
评估指标 |
准确率 |
任务类型 |
图像特征提取 |
标签 |
视觉、图像特征提取、mlx、pytorch |
模型性能
模型名称 |
任务类型 |
数据集 |
准确率 |
验证情况 |
aimv2-1B-patch14-336 |
分类 |
imagenet-1k |
88.7 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
inaturalist-18 |
82.7 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
cifar10 |
99.4 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
cifar100 |
93.9 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
food101 |
97.1 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
dtd |
88.9 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
oxford-pets |
96.9 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
stanford-cars |
96.5 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
camelyon17 |
94.2 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
patch-camelyon |
89.5 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
rxrx1 |
8.4 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
eurosat |
98.9 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
fmow |
65.1 |
未验证 |
aimv2-1B-patch14-336 |
分类 |
domainnet-infographic |
73.7 |
未验证 |
模型亮点
- 在大多数多模态理解基准测试中,性能优于OAI CLIP和SigLIP。
- 在开放词汇目标检测和指代表达理解任务上,表现优于DINOv2。
- AIMv2 - 3B模型在使用冻结主干网络的情况下,在ImageNet上的识别准确率达到89.5%。

💻 使用示例
基础用法 - PyTorch
import requests
from PIL import Image
from transformers import AutoImageProcessor, AutoModel
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
processor = AutoImageProcessor.from_pretrained(
"apple/aimv2-1B-patch14-336",
)
model = AutoModel.from_pretrained(
"apple/aimv2-1B-patch14-336",
trust_remote_code=True,
)
inputs = processor(images=image, return_tensors="pt")
outputs = model(**inputs)
基础用法 - JAX
import requests
from PIL import Image
from transformers import AutoImageProcessor, FlaxAutoModel
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
processor = AutoImageProcessor.from_pretrained(
"apple/aimv2-1B-patch14-336",
)
model = FlaxAutoModel.from_pretrained(
"apple/aimv2-1B-patch14-336",
trust_remote_code=True,
)
inputs = processor(images=image, return_tensors="jax")
outputs = model(**inputs)
📄 许可证
本项目使用的许可证为apple-amlr。
📖 引用
如果您觉得我们的工作有帮助,请考虑引用以下内容:
@misc{fini2024multimodalautoregressivepretraininglarge,
author = {Fini, Enrico and Shukor, Mustafa and Li, Xiujun and Dufter, Philipp and Klein, Michal and Haldimann, David and Aitharaju, Sai and da Costa, Victor Guilherme Turrisi and Béthune, Louis and Gan, Zhe and Toshev, Alexander T and Eichner, Marcin and Nabi, Moin and Yang, Yinfei and Susskind, Joshua M. and El-Nouby, Alaaeldin},
url = {https://arxiv.org/abs/2411.14402},
eprint = {2411.14402},
eprintclass = {cs.CV},
eprinttype = {arXiv},
title = {Multimodal Autoregressive Pre-training of Large Vision Encoders},
year = {2024},
}