项目介绍:deit_tiny_patch16_224.fb_in1k
项目概述
deit_tiny_patch16_224.fb_in1k
是一个用于图像分类任务的模型。这一模型基于DeiT架构,由论文作者使用ImageNet-1k数据集进行训练。DeiT(Data-efficient Image Transformers)是一种高效的图像转换器,通过注意力机制进行学习和蒸馏。
模型详情
- 模型类型:主要用于图像分类和特征提取
- 模型参数:总参数为5.7百万
- 计算量:每秒进行1.3亿次乘加运算
- 激活功能:激活功能数为6百万
- 输入图像大小:224 x 224像素
使用场景
图像分类
用户可以利用该模型对图像进行分类。模型的使用方法简单,只需将图像传入模型,便能获得图像类别的预测概率。例如,可以通过以下Python代码实现:
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('deit_tiny_patch16_224.fb_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))
top5_probabilities, top5_class_indices = torch.topk(output.softmax(dim=1) * 100, k=5)
图像嵌入
该模型还可以用于生成图像的嵌入特征。这意味着它可以将图像转换为数值特征向量,方便进行进一步的分析或处理。可以通过以下代码实现:
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(
'deit_tiny_patch16_224.fb_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
库中的模型结果页面查看数据集及运行时性能,与其他模型进行对比。
参考文献
该模型及其应用详细记载于以下引用文献:
@InProceedings{pmlr-v139-touvron21a,
title = {Training data-efficient image transformers & distillation through attention},
author = {Touvron, Hugo and Cord, Matthieu and Douze, Matthijs and Massa, Francisco and Sablayrolles, Alexandre and Jegou, Herve},
booktitle = {International Conference on Machine Learning},
pages = {10347--10357},
year = {2021},
volume = {139},
month = {July}
}
此外,timm
库的开发者Ross Wightman在2019年创建了该库,有兴趣的用户可以参考以下文献查阅更多信息:
@misc{rw2019timm,
author = {Ross Wightman},
title = {PyTorch Image Models},
year = {2019},
publisher = {GitHub},
journal = {GitHub repository},
doi = {10.5281/zenodo.4414861},
howpublished = {\url{https://github.com/huggingface/pytorch-image-models}}
}