twins_svt_large.in1k项目介绍
项目背景
twins_svt_large.in1k是一个用于图像分类的模型,由研究人员基于ImageNet-1k数据集训练而成。该项目由Meituan AutoML团队原创,模型基于Spatial Attention的Vision Transformers设计,相关论文发表在NeurIPS 2021年会议上。
模型详情
- 模型类型: 图像分类/特征骨架
- 模型参数:
- 参数数 (M): 99.3
- GMACs: 15.1
- 激活数 (M): 35.1
- 图像尺寸:224 x 224
该模型致力于通过使用图像中的空间注意力机制,改善视觉Transformer模型的设计与性能。
数据集
twins_svt_large.in1k使用ImageNet-1k数据集进行训练。ImageNet-1k是一个广泛使用的大规模视觉数据集,包含各种不同类别的图像,适用于多种图像识别任务。
模型使用
图像分类
用户可以使用timm库进行图像分类。在进行图像分类时,可以通过一段Python代码加载预训练的twins_svt_large.in1k模型,对输入的图像进行处理并得到预测结果。为了实现图像分类,用户需要对图像进行归一化和调整尺寸等特定的转换操作,然后通过模型计算获得图像的分类概率。
from urllib.request import urlopen
from PIL import Image
import timm
img = Image.open(urlopen(
'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))
model = timm.create_model('twins_svt_large.in1k', pretrained=True)
model = model.eval()
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)
output = model(transforms(img).unsqueeze(0))
图像特征提取
除了图像分类,twins_svt_large.in1k还能用于提取图像特征。这对于需要提取特征以进一步进行机器学习或深度学习任务的用户十分有用。通过去除分类层,可以直接获得模型的特征输出。
from urllib.request import urlopen
from PIL import Image
import timm
img = Image.open(urlopen(
'https://huggingface.co/datasets/huggingface/documentation-images/resolve/main/beignets-task-guide.png'
))
model = timm.create_model(
'twins_svt_large.in1k',
pretrained=True,
num_classes=0, # 去除分类层
)
model = model.eval()
data_config = timm.data.resolve_model_data_config(model)
transforms = timm.data.create_transform(**data_config, is_training=False)
output = model(transforms(img).unsqueeze(0))
性能对比
用户可以在timm的模型结果页面中探索该模型与其他模型的数据集性能及运行时指标进行对比。
学术引用
如果在研究中使用了twins_svt_large.in1k模型,请引用以下文献:
@inproceedings{chu2021Twins,
title={Twins: Revisiting the Design of Spatial Attention in Vision Transformers},
author={Xiangxiang Chu and Zhi Tian and Yuqing Wang and Bo Zhang and Haibing Ren and Xiaolin Wei and Huaxia Xia and Chunhua Shen},
booktitle={NeurIPS 2021},
url={https://openreview.net/forum?id=5kTlVBkzSRx},
year={2021}
}
通过以上内容,用户能够对twins_svt_large.in1k模型有更深入的了解,并能在各种图像处理任务中应用此模型。