license: apache-2.0
tags:
- dino
- 视觉模型
datasets:
- imagenet-1k
使用DINO训练的视觉Transformer(小尺寸模型,16x16图像块)
该视觉Transformer(ViT)模型采用DINO方法训练,源自Mathilde Caron、Hugo Touvron等人在论文《自监督视觉Transformer的新兴特性》中提出,并首次发布于此代码库。需说明:DINO团队未提供本模型的官方说明卡,当前内容由Hugging Face团队撰写。
模型描述
该视觉Transformer(ViT)是基于Transformer编码器架构(类似BERT)的模型,通过自监督方式在ImageNet-1k数据集(224x224像素分辨率)上进行预训练。图像被处理为16x16像素块的线性嵌入序列,序列起始处添加[CLS]标记用于分类任务。输入Transformer编码器前会加入绝对位置嵌入。
需注意:此模型不包含任何微调头部。通过预训练,模型可学习图像的内在表示,进而提取适用于下游任务的特征。例如,对于带标注的图像数据集,可在预训练编码器顶部添加线性层训练标准分类器。通常选择在[CLS]标记的最终隐藏状态上添加线性层,因其可视为整幅图像的语义表征。
使用场景与限制
该原始模型可用于图像分类任务。访问模型中心可查找针对特定任务的微调版本。
使用方法
from transformers import ViTImageProcessor, ViTModel
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
processor = ViTImageProcessor.from_pretrained('facebook/dino-vits16')
model = ViTModel.from_pretrained('facebook/dino-vits16')
inputs = processor(images=image, return_tensors="pt")
outputs = model(**inputs)
last_hidden_states = outputs.last_hidden_state
引用信息
@article{DBLP:journals/corr/abs-2104-14294,
author = {Mathilde Caron and
Hugo Touvron and
Ishan Misra and
Herv{\'{e}} J{\'{e}}gou and
Julien Mairal and
Piotr Bojanowski and
Armand Joulin},
title = {Emerging Properties in Self-Supervised Vision Transformers},
journal = {CoRR},
volume = {abs/2104.14294},
year = {2021},
url = {https://arxiv.org/abs/2104.14294},
archivePrefix = {arXiv},
eprint = {2104.14294},
timestamp = {Tue, 04 May 2021 15:12:43 +0200},
biburl = {https://dblp.org/rec/journals/corr/abs-2104-14294.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}