项目介绍:swinv2-base-patch4-window8-256
背景介绍
swinv2-base-patch4-window8-256是一个基于Swin Transformer v2架构的视觉模型,它是由Liu等人在论文《Swin Transformer V2: Scaling Up Capacity and Resolution》中提出并首次在GitHub中发布的。这个模型特别在ImageNet-1k数据集上进行预训练,图像分辨率为256x256像素。
模型描述
Swin Transformer是一种新型的视觉Transformer。与早期的视觉Transformer不同,Swin Transformer通过在更深的网络层次中合并图像补丁来构建分层特征图,这种结构使得它的计算复杂度仅与局部窗口内的图像大小成线性关系,而不像之前的模型那样是全局自注意力计算,导致复杂度与输入图像大小成平方关系。Swin Transformer因此能够成为图像分类和密集识别任务的通用骨干模型。
Swin Transformer v2在原有模型上引入了三项主要改进:
- 残差后归一化方法:结合余弦注意力以提高训练稳定性。
- 对数间隔的连续位置偏差方法:有效地将使用低分辨率图像预训练的模型迁移到高分辨率输入的下游任务中。
- 自监督预训练方法(SimMIM):减少对大量标注图像的需求。
模型的应用与局限
这个模型主要用于图像分类任务,用户可以直接使用该模型分类图像。更多关于模型的应用,可以在模型中心查看已针对特定任务微调的版本。
使用方法
以下是使用swinv2-base-patch4-window8-256模型对COCO 2017数据集中一张图像进行分类的示例代码:
from transformers import AutoImageProcessor, AutoModelForImageClassification
from PIL import Image
import requests
url = "http://images.cocodataset.org/val2017/000000039769.jpg"
image = Image.open(requests.get(url, stream=True).raw)
processor = AutoImageProcessor.from_pretrained("microsoft/swinv2-base-patch4-window8-256")
model = AutoModelForImageClassification.from_pretrained("microsoft/swinv2-base-patch4-window8-256")
inputs = processor(images=image, return_tensors="pt")
outputs = model(**inputs)
logits = outputs.logits
# 模型预测结果为ImageNet中的1000个类别之一
predicted_class_idx = logits.argmax(-1).item()
print("预测类别:", model.config.id2label[predicted_class_idx])
关于更多的代码示例和细节,可参考官方文档。
参考文献
以下是Swin Transformer V2原论文的参考文献格式:
@article{DBLP:journals/corr/abs-2111-09883,
author = {Ze Liu and
Han Hu and
Yutong Lin and
Zhuliang Yao and
Zhenda Xie and
Yixuan Wei and
Jia Ning and
Yue Cao and
Zheng Zhang and
Li Dong and
Furu Wei and
Baining Guo},
title = {Swin Transformer {V2:} Scaling Up Capacity and Resolution},
journal = {CoRR},
volume = {abs/2111.09883},
year = {2021},
url = {https://arxiv.org/abs/2111.09883},
eprinttype = {arXiv},
eprint = {2111.09883},
timestamp = {Thu, 02 Dec 2021 15:54:22 +0100},
biburl = {https://dblp.org/rec/journals/corr/abs-2111-09883.bib},
bibsource = {dblp computer science bibliography, https://dblp.org}
}