🚀 AIMv2 視覺模型
AIMv2 是一系列基於多模態自迴歸目標進行預訓練的視覺模型,訓練和擴展簡單高效。在多數多模態理解基準測試中表現出色,在開放詞彙目標檢測和指代表達理解任務中超越 DINOv2,AIMv2 - 3B 在 ImageNet 上使用凍結主幹實現了 89.5% 的準確率。
🚀 快速開始
模型信息
屬性 |
詳情 |
庫名稱 |
transformers |
許可證 |
apple - amlr |
評估指標 |
準確率 |
任務類型 |
圖像特徵提取 |
標籤 |
視覺、圖像特徵提取、mlx、pytorch |
模型性能
模型名稱 |
任務類型 |
數據集 |
準確率 |
驗證狀態 |
aimv2 - 1B - patch14 - 224 |
分類 |
imagenet - 1k |
88.1 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
inaturalist - 18 |
79.7 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
cifar10 |
99.4 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
cifar100 |
94.1 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
food101 |
96.7 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
dtd |
88.4 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
oxford - pets |
96.8 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
stanford - cars |
96.5 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
camelyon17 |
94.2 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
patch - camelyon |
89.0 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
rxrx1 |
6.7 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
eurosat |
98.8 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
fmow |
63.2 |
未驗證 |
aimv2 - 1B - patch14 - 224 |
分類 |
domainnet - infographic |
71.7 |
未驗證 |
模型介紹
[AIMv2 論文
] [BibTeX
]
我們推出了 AIMv2 系列視覺模型,這些模型通過多模態自迴歸目標進行預訓練。AIMv2 預訓練簡單直接,能夠有效進行訓練和擴展。AIMv2 的一些亮點包括:
- 在大多數多模態理解基準測試中超越 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-224",
)
model = AutoModel.from_pretrained(
"apple/aimv2-1B-patch14-224",
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-224",
)
model = FlaxAutoModel.from_pretrained(
"apple/aimv2-1B-patch14-224",
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},
}