🚀 Data2Vec-Vision(基礎大小模型,在ImageNet-1k上微調)
Data2Vec-Vision是一個基於BEiT架構的模型,它以自監督的方式進行預訓練,並在ImageNet-1k(包含120萬張圖像、1000個類別)數據集上進行了微調,圖像分辨率為224x224。該模型由Alexei Baevski、Wei-Ning Hsu等人在論文 data2vec: A General Framework for Self-supervised Learning in Speech, Vision and Language 中提出,並首次在 此倉庫 中發佈。
🚀 快速開始
你可以使用這個原始模型進行圖像分類任務。你可以在 模型中心 中查找針對你感興趣的任務進行微調後的版本。
以下是如何使用該模型將COCO 2017數據集中的一張圖像分類到1000個ImageNet類別中的示例代碼:
from transformers import BeitFeatureExtractor, Data2VecVisionForImageClassification
from PIL import Image
import requests
url = 'http://images.cocodataset.org/val2017/000000039769.jpg'
image = Image.open(requests.get(url, stream=True).raw)
feature_extractor = BeitFeatureExtractor.from_pretrained('facebook/data2vec-vision-base-ft1k')
model = Data2VecVisionForImageClassification.from_pretrained('facebook/data2vec-vision-base-ft1k')
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("Predicted class:", model.config.id2label[predicted_class_idx])
目前,特徵提取器和模型都支持PyTorch。
✨ 主要特性
- 通用框架:data2vec提供了一個通用的自監督學習框架,可用於語音、自然語言處理和計算機視覺領域。
- 自蒸餾學習:通過自蒸餾的方式,基於輸入的掩碼視圖預測完整輸入數據的潛在表示。
- 上下文信息利用:預測包含整個輸入信息的上下文潛在表示,而不是特定模態的局部目標。
📚 詳細文檔
預訓練方法
更多信息,請參考 官方論文。
摘要
自監督學習的總體思路在不同模態之間是相同的,但實際的算法和目標卻有很大差異,因為它們是針對單一模態開發的。為了更接近通用的自監督學習,我們提出了data2vec框架,該框架對語音、自然語言處理或計算機視覺使用相同的學習方法。其核心思想是在自蒸餾設置中,使用標準的Transformer架構,基於輸入的掩碼視圖預測完整輸入數據的潛在表示。與預測特定模態的局部目標(如單詞、視覺標記或人類語音單元)不同,data2vec預測包含整個輸入信息的上下文潛在表示。在語音識別、圖像分類和自然語言理解的主要基準測試中的實驗表明,該方法達到了新的技術水平,或與主流方法具有競爭力。
預期用途和限制
你可以使用原始模型進行圖像分類任務。你可以在 模型中心 中查找針對你感興趣的任務進行微調後的版本。
訓練數據
BEiT模型在 ImageNet-1k 數據集上進行了預訓練和微調,該數據集包含120萬張圖像和1000個類別。
訓練過程
預處理
訓練/驗證期間圖像預處理的確切細節可以在 這裡 找到。
圖像被調整大小/重新縮放為相同的分辨率(224x224),並在RGB通道上進行歸一化,均值為(0.5, 0.5, 0.5),標準差為(0.5, 0.5, 0.5)。
預訓練
有關所有預訓練相關的超參數,請參考 原始論文 和 原始代碼庫。
評估結果
關於幾個圖像分類基準的評估結果,請參考原始論文中的表1。請注意,對於微調,在更高分辨率下可以獲得最佳結果。當然,增加模型大小會提高性能。
我們在 ImageNet1K
上對模型進行了評估,得到的top-1準確率為 83.97,而原始論文中報告的top-1準確率為84.2。
如果你想復現我們的評估過程,可以使用 這個Colab筆記本。
BibTeX引用和引用信息
@misc{https://doi.org/10.48550/arxiv.2202.03555,
doi = {10.48550/ARXIV.2202.03555},
url = {https://arxiv.org/abs/2202.03555},
author = {Baevski, Alexei and Hsu, Wei-Ning and Xu, Qiantong and Babu, Arun and Gu, Jiatao and Auli, Michael},
keywords = {Machine Learning (cs.LG), FOS: Computer and information sciences, FOS: Computer and information sciences},
title = {data2vec: A General Framework for Self-supervised Learning in Speech, Vision and Language},
publisher = {arXiv},
year = {2022},
copyright = {arXiv.org perpetual, non-exclusive license}
}
📄 許可證
本項目採用Apache-2.0許可證。