项目介绍:efficientnet_b5.sw_in12k_ft_in1k
项目背景
efficientnet_b5.sw_in12k_ft_in1k是一个图像分类模型,采用EfficientNet架构。该模型在ImageNet-12k数据集上进行了预训练,然后在ImageNet-1k数据集上进行了微调。模型开发由Ross Wightman完成,并在timm
库中实现。
模型详情
模型类型
- 图像分类/特征提取骨干网络
模型统计
- 参数数量(百万):30.4
- 计算量(GMACs):9.6
- 激活数(百万):93.6
- 图像尺寸:448 x 448
使用数据集
- 预训练数据集:ImageNet-12k
- 微调数据集:ImageNet-1k
相关研究文献
- EfficientNet: 对卷积神经网络的模型缩放进行重新思考,该研究可在此处查看。
重要链接
- 原版地址:GitHub上的PyTorch图像模型
模型使用
图像分类
模型可以用于图像分类任务,使用Python代码如下:
from urllib.request import urlopen
from PIL import Image
import timm
# 加载图像
img = Image.open(urlopen('https://example.com/image.png'))
# 创建模型
model = timm.create_model('efficientnet_b5.sw_in12k_ft_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))
# 获取前5类概率和索引
top5_probabilities, top5_class_indices = torch.topk(output.softmax(dim=1) * 100, k=5)
特征映射提取
该模型还可以用于提取图像特征映射:
# 使用与上述相同的步骤加载图像
model = timm.create_model('efficientnet_b5.sw_in12k_ft_in1k', pretrained=True, features_only=True)
model = model.eval()
# 处理图像并获得特征映射
output = model(transforms(img).unsqueeze(0))
# 打印每个特征映射的形状
for o in output:
print(o.shape)
图像嵌入
模型也可以用于获取图像嵌入:
model = timm.create_model('efficientnet_b5.sw_in12k_ft_in1k', pretrained=True, num_classes=0)
model = model.eval()
# 获取不含分类层的嵌入结果
output = model.forward_features(transforms(img).unsqueeze(0))
output = model.forward_head(output, pre_logits=True)
模型比较
可以通过timm模型结果链接探索该模型的相关数据集和运行时指标。
引用信息
如果引用此模型,请参考以下文献:
@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}}
}
@inproceedings{tan2019efficientnet,
title={Efficientnet: Rethinking model scaling for convolutional neural networks},
author={Tan, Mingxing and Le, Quoc},
booktitle={International conference on machine learning},
pages={6105--6114},
year={2019},
organization={PMLR}
}
以上即是efficientnet_b5.sw_in12k_ft_in1k项目的详细介绍。该项目通过结合两种大型数据集的训练,旨在进行高效的图像分类和特征提取。