🚀 圖像特徵提取模型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},
}