HuggingFace镜像/inception_v3.tf_adv_in1k
模型介绍文件和版本分析
下载使用量0

inception_v3.tf_adv_in1k 模型卡片

一个 Inception-v3 图像分类模型。由论文作者在 ImageNet-1k 上进行对抗训练。由 Ross Wightman 从 Tensorflow 移植而来。

模型详情

  • 模型类型: 图像分类 / 特征主干网络
  • 模型统计:
    • 参数(M):23.8
    • GMACs:5.7
    • 激活值(M):9.0
    • 图像尺寸:299 x 299
  • 论文:
    • Rethinking the Inception Architecture for Computer Vision: https://arxiv.org/abs/1512.00567
    • Adversarial Attacks and Defences Competition: https://arxiv.org/abs/1804.00097
  • 原始版本: https://github.com/tensorflow/models
  • 数据集: ImageNet-1k

模型使用

图像分类

from urllib.request import urlopen
from PIL import Image
import timm
import torch
import torch_npu

img = Image.open('beignets-task-guide.png')

model = timm.create_model('inception_v3.tf_adv_in1k', pretrained=True)
model = model.eval()

# get model specific transforms (normalization, resize)
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))  # unsqueeze single image into batch of 1

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
import torch
import torch_npu

img = Image.open('beignets-task-guide.png')
device = torch.device('npu:0')
model = timm.create_model(
    'inception_v3.tf_adv_in1k',
    pretrained=True,
    features_only=True,
)
model = model.eval()

# get model specific transforms (normalization, resize)
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))  # unsqueeze single image into batch of 1

for o in output:
    # print shape of each feature map in output
    # e.g.:
    #  torch.Size([1, 64, 147, 147])
    #  torch.Size([1, 192, 71, 71])
    #  torch.Size([1, 288, 35, 35])
    #  torch.Size([1, 768, 17, 17])
    #  torch.Size([1, 2048, 8, 8])

    print(o.shape)

图像嵌入

from urllib.request import urlopen
from PIL import Image
import timm
import torch
import torch_npu

img = Image.open('beignets-task-guide.png')
device = torch.device('npu:0')
model = timm.create_model(
    'inception_v3.tf_adv_in1k',
    pretrained=True,
    num_classes=0,  # remove classifier nn.Linear
)
model = model.eval()

# get model specific transforms (normalization, resize)
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))  # output is (batch_size, num_features) shaped tensor

# or equivalently (without needing to set num_classes=0)

output = model.forward_features(transforms(img).unsqueeze(0))
# output is unpooled, a (1, 2048, 8, 8) shaped tensor

output = model.forward_head(output, pre_logits=True)
# output is a (1, num_features) shaped tensor

模型对比

在 timm 的 model results 中探索该模型的数据集和运行时指标。

引用

@article{DBLP:journals/corr/SzegedyVISW15,
  author    = {Christian Szegedy and
               Vincent Vanhoucke and
               Sergey Ioffe and
               Jonathon Shlens and
               Zbigniew Wojna},
  title     = {Rethinking the Inception Architecture for Computer Vision},
  journal   = {CoRR},
  volume    = {abs/1512.00567},
  year      = {2015},
  url       = {http://arxiv.org/abs/1512.00567},
  archivePrefix = {arXiv},
  eprint    = {1512.00567},
  timestamp = {Mon, 13 Aug 2018 16:49:07 +0200},
  biburl    = {https://dblp.org/rec/journals/corr/SzegedyVISW15.bib},
  bibsource = {dblp computer science bibliography, https://dblp.org}
}
@article{Kurakin2018AdversarialAA,
  title={Adversarial Attacks and Defences Competition},
  author={Alexey Kurakin and Ian J. Goodfellow and Samy Bengio and Yinpeng Dong and Fangzhou Liao and Ming Liang and Tianyu Pang and Jun Zhu and Xiaolin Hu and Cihang Xie and Jianyu Wang and Zhishuai Zhang and Zhou Ren and Alan Loddon Yuille and Sangxia Huang and Yao Zhao and Yuzhe Zhao and Zhonglin Han and Junjiajia Long and Yerkebulan Berdibekov and Takuya Akiba and Seiya Tokui and Motoki Abe},
  journal={ArXiv},
  year={2018},
  volume={abs/1804.00097}
}