许可协议:apache-2.0
标签:
- 图像分类
- 视觉
数据集:
- imagenet
- imagenet-1k
Data2Vec-Vision(大型模型,基于ImageNet-1k微调)
BEiT模型以自监督方式预训练,并在ImageNet-1k(120万张图像,1000个类别)上以224x224分辨率微调。该模型由Alexei Baevski、Wei-Ning Hsu、Qiantong Xu、Arun Babu、Jiatao Gu和Michael Auli在论文data2vec: 语音、视觉与语言自监督学习的通用框架中提出,并首次发布于此代码库。
免责声明:发布该模型的Facebook团队未编写模型卡片,故本卡片由Hugging Face团队撰写。
预训练方法

更多信息请参阅官方论文。
摘要
尽管自监督学习的核心理念在不同模态间一致,但由于算法和目标最初仅针对单一模态设计,实际差异显著。为实现更通用的自监督学习,我们提出data2vec框架,统一适用于语音、自然语言处理或计算机视觉。其核心思想是通过自蒸馏设置,基于输入数据的掩码视图,预测完整输入的潜在表征。不同于预测局部性的模态特定目标(如词汇、视觉标记或语音单元),data2vec预测包含整个输入信息的上下文化潜在表征。在语音识别、图像分类和自然语言理解的主流基准测试中,实验表明该方法达到新最优或与主流方案竞争的性能。
用途与限制
您可将此原始模型用于图像分类任务。访问模型库寻找针对特定任务的微调版本。
使用方法
以下示例展示如何将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-large-ft1k')
model = Data2VecVisionForImageClassification.from_pretrained('facebook/data2vec-vision-large-ft1k')
inputs = feature_extractor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
predicted_class_idx = logits.argmax(-1).item()
print("预测类别:", model.config.id2label[predicted_class_idx])
当前特征提取器与模型均支持PyTorch。
训练数据
BEiT模型在ImageNet-1k上预训练及微调,该数据集包含120万张图像和1000个类别。
训练流程
预处理
训练/验证期间图像预处理的具体细节参见此处。
图像统一调整至224x224分辨率,并按RGB通道以均值(0.5, 0.5, 0.5)和标准差(0.5, 0.5, 0.5)归一化。
预训练
所有预训练相关超参数请参考原论文及原代码库。
评估结果
关于多个图像分类基准的评估结果,请参见原论文表1。注意微调时更高分辨率可获得最佳结果。增大模型规模将进一步提升性能。
我们在ImageNet1K
上评估该模型,获得top-1准确率=86.50,而原论文报告为86.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}
}