🚀 視覺變換器(小尺寸模型,補丁大小8),使用DINO方法訓練
本項目是使用DINO方法訓練的視覺變換器(ViT)模型。該模型由Mathilde Caron、Hugo Touvron、Ishan Misra、Hervé Jégou、Julien Mairal、Piotr Bojanowski、Armand Joulin等人在論文自監督視覺變換器的新興特性中提出,並首次在此倉庫中發佈。
聲明:發佈DINO的團隊並未為此模型撰寫模型卡片,此模型卡片由Hugging Face團隊撰寫。
🚀 快速開始
你可以使用這個原始模型進行圖像分類。可以在模型中心查找針對你感興趣的任務進行微調的版本。
✨ 主要特性
- 基於Transformer架構的視覺模型,在大規模圖像數據上進行自監督預訓練。
- 模型學習到的圖像內部表示可用於提取對下游任務有用的特徵。
📚 詳細文檔
模型描述
視覺變換器(ViT)是一種基於Transformer編碼器的模型(類似BERT),以自監督的方式在大量圖像集合(即ImageNet - 1k,分辨率為224x224像素)上進行預訓練。
圖像以固定大小的補丁序列(分辨率為8x8)的形式輸入到模型中,這些補丁會進行線性嵌入。同時,會在序列開頭添加一個[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-vits8')
model = ViTModel.from_pretrained('facebook/dino-vits8')
inputs = processor(images=image, return_tensors="pt")
outputs = model(**inputs)
last_hidden_states = outputs.last_hidden_state
📄 許可證
本項目採用Apache - 2.0許可證。
BibTeX引用信息
@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}
}
📄 信息表格
屬性 |
詳情 |
模型類型 |
視覺變換器(ViT),小尺寸模型,補丁大小8 |
訓練數據 |
ImageNet - 1k |
標籤 |
dino, vision |