从Torchvision预训练模型中获取模型类标签

如何解决从Torchvision预训练模型中获取模型类标签

我使用的是Torchvision提供的经过预先训练的Alexnet模型(无微调)。 问题是,即使我能够对某些数据运行模型并获得输出概率分布,也无法找到将其映射到的类标签

遵循此official documentation

import torch
model = torch.hub.load('pytorch/vision:v0.6.0','alexnet',pretrained=True)
model.eval()
AlexNet(
  (features): Sequential(
    (0): Conv2d(3,64,kernel_size=(11,11),stride=(4,4),padding=(2,2))
    (1): ReLU(inplace=True)
    (2): MaxPool2d(kernel_size=3,stride=2,padding=0,dilation=1,ceil_mode=False)
    (3): Conv2d(64,192,kernel_size=(5,5),stride=(1,1),2))
    (4): ReLU(inplace=True)
    (5): MaxPool2d(kernel_size=3,ceil_mode=False)
    (6): Conv2d(192,384,kernel_size=(3,3),padding=(1,1))
    (7): ReLU(inplace=True)
    (8): Conv2d(384,256,1))
    (9): ReLU(inplace=True)
    (10): Conv2d(256,1))
    (11): ReLU(inplace=True)
    (12): MaxPool2d(kernel_size=3,ceil_mode=False)
  )
  (avgpool): AdaptiveAvgPool2d(output_size=(6,6))
  (classifier): Sequential(
    (0): Dropout(p=0.5,inplace=False)
    (1): Linear(in_features=9216,out_features=4096,bias=True)
    (2): ReLU(inplace=True)
    (3): Dropout(p=0.5,inplace=False)
    (4): Linear(in_features=4096,bias=True)
    (5): ReLU(inplace=True)
    (6): Linear(in_features=4096,out_features=1000,bias=True)
  )
)

按照一些处理图像的步骤,我能够使用它来获取单个图像的输出,作为(1,1000)暗淡矢量,我将使用softmax来获得概率分布-

#Output - 

tensor([-1.6531e+00,-4.3505e+00,-1.8172e+00,-4.2143e+00,-3.1914e+00,3.4163e-01,1.0877e+00,5.9350e+00,8.0425e+00,-7.0242e-01,-9.4130e-01,-6.0822e-01,-2.4097e-01,-1.9946e+00,-1.5288e+00,-3.2656e+00,-5.5800e-01,1.0524e+00,1.9211e-01,-4.7202e+00,-3.3880e+00,4.3048e+00,-1.0997e+00,4.6132e+00,-5.7404e-03,-5.3437e+00,-4.7378e+00,-3.3974e+00,-4.1287e+00,2.9064e-01,-3.2955e+00,-6.7051e+00,-4.7232e+00,-4.1778e+00,-2.1859e+00,-2.9469e+00,3.0465e+00,-3.5882e+00,-6.3890e+00,-4.4203e+00,-3.3685e+00,-5.0983e+00,-4.9006e+00,-5.5235e+00,-3.7233e+00,-4.0204e+00,2.6998e-01,-4.4702e+00,-5.6617e+00,-5.4880e+00,-2.6801e+00,-3.2129e+00,-1.6294e+00,-5.2289e+00,-2.7495e+00,-2.6286e+00,-1.8206e+00,-2.3196e+00,-5.2806e+00,-3.7652e+00,-3.0987e+00,-4.1421e+00,-5.2531e+00,-4.6505e+00,-3.5815e+00,-4.0189e+00,-4.0008e+00,-4.5512e+00,-3.2248e+00,-7.7903e+00,-1.4484e+00,-3.8347e+00,-4.5611e+00,-4.3681e+00,2.7234e-01,-4.0162e+00,-4.2136e+00,-5.4524e+00,1.1744e+00,-4.7785e+00,-1.8335e+00,4.1288e-01,2.2239e+00,-9.9919e-02,4.8216e+00,-8.4304e-01,5.6911e-01,-4.0484e+00,-3.3013e+00,2.8698e+00,-1.1419e+00,-9.1690e-01,-2.9284e+00,-2.6097e+00,-1.8213e-01,-2.5429e+00,-2.1095e+00,2.2419e+00,-1.6280e+00,7.4458e+00,2.3184e+00,-5.7408e+00,-7.4332e-01,-5.4066e+00,1.5177e+01,-4.4737e-02,1.8237e+00,-3.7741e+00,9.2271e-01,-4.3687e-01,-1.4003e+00,-4.3026e+00,6.3782e-01,-1.0808e+00,-1.4173e+00,2.6194e+00,-3.8418e+00,1.1598e+00,-2.6876e+00,-3.6103e+00,-4.9281e+00,-4.1411e+00,-3.3603e+00,-3.4296e+00,-1.4997e+00,-2.8381e+00,-1.2843e+00,1.5745e+00,-1.7449e+00,4.2903e-01,3.1234e-01,-2.8206e+00,3.6688e-01,-2.1033e+00,1.6481e+00,1.4222e+00,-2.7303e+00,-3.6292e+00,1.2864e+00,-2.5541e+00,-2.9663e+00,-4.1575e+00,-3.1954e+00,-4.6487e-01,1.8916e+00,-7.4721e-01,4.5986e+00,-2.5443e+00,-6.2003e+00,-1.3215e+00,-2.6225e+00,9.9639e+00,9.7772e+00,9.6715e+00,9.0857e+00,...

我从哪里获得课程标签?我找不到任何可以从模型对象中获取方法的方法。

解决方法

不幸的是,您不能直接从Torchvision模型获取类标签名称。但是,这些模型是在ImageNet数据集上训练的(因此有1000个类)。

据我所知,您必须从网络上获取类名映射;没有办法把它从火炬上拿下来。以前,您可以使用torchvision.datasets.ImageNet直接下载ImageNet,它具有一个内置的标签到类名转换器。现在,下载链接不再公开可用,需要手动下载,然后才能被数据集使用。ImageNet。

因此,您可以简单地在线搜索类以标记ImageNet的标签,而无需下载数据或尝试使用手电筒。 Try here for example

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


依赖报错 idea导入项目后依赖报错,解决方案:https://blog.csdn.net/weixin_42420249/article/details/81191861 依赖版本报错:更换其他版本 无法下载依赖可参考:https://blog.csdn.net/weixin_42628809/a
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下 2021-12-03 13:33:33.927 ERROR 7228 [ main] o.s.b.d.LoggingFailureAnalysisReporter : *************************** APPL
错误1:gradle项目控制台输出为乱码 # 解决方案:https://blog.csdn.net/weixin_43501566/article/details/112482302 # 在gradle-wrapper.properties 添加以下内容 org.gradle.jvmargs=-Df
错误还原:在查询的过程中,传入的workType为0时,该条件不起作用 <select id="xxx"> SELECT di.id, di.name, di.work_type, di.updated... <where> <if test=&qu
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct redisServer’没有名为‘server_cpulist’的成员 redisSetCpuAffinity(server.server_cpulist); ^ server.c: 在函数‘hasActiveC
解决方案1 1、改项目中.idea/workspace.xml配置文件,增加dynamic.classpath参数 2、搜索PropertiesComponent,添加如下 <property name="dynamic.classpath" value="tru
删除根组件app.vue中的默认代码后报错:Module Error (from ./node_modules/eslint-loader/index.js): 解决方案:关闭ESlint代码检测,在项目根目录创建vue.config.js,在文件中添加 module.exports = { lin
查看spark默认的python版本 [root@master day27]# pyspark /home/software/spark-2.3.4-bin-hadoop2.7/conf/spark-env.sh: line 2: /usr/local/hadoop/bin/hadoop: No s
使用本地python环境可以成功执行 import pandas as pd import matplotlib.pyplot as plt # 设置字体 plt.rcParams['font.sans-serif'] = ['SimHei'] # 能正确显示负号 p
错误1:Request method ‘DELETE‘ not supported 错误还原:controller层有一个接口,访问该接口时报错:Request method ‘DELETE‘ not supported 错误原因:没有接收到前端传入的参数,修改为如下 参考 错误2:cannot r
错误1:启动docker镜像时报错:Error response from daemon: driver failed programming external connectivity on endpoint quirky_allen 解决方法:重启docker -> systemctl r
错误1:private field ‘xxx‘ is never assigned 按Altʾnter快捷键,选择第2项 参考:https://blog.csdn.net/shi_hong_fei_hei/article/details/88814070 错误2:启动时报错,不能找到主启动类 #
报错如下,通过源不能下载,最后警告pip需升级版本 Requirement already satisfied: pip in c:\users\ychen\appdata\local\programs\python\python310\lib\site-packages (22.0.4) Coll
错误1:maven打包报错 错误还原:使用maven打包项目时报错如下 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-resources-plugin:3.2.0:resources (default-resources)
错误1:服务调用时报错 服务消费者模块assess通过openFeign调用服务提供者模块hires 如下为服务提供者模块hires的控制层接口 @RestController @RequestMapping("/hires") public class FeignControl
错误1:运行项目后报如下错误 解决方案 报错2:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.8.1:compile (default-compile) on project sb 解决方案:在pom.
参考 错误原因 过滤器或拦截器在生效时,redisTemplate还没有注入 解决方案:在注入容器时就生效 @Component //项目运行时就注入Spring容器 public class RedisBean { @Resource private RedisTemplate<String
使用vite构建项目报错 C:\Users\ychen\work>npm init @vitejs/app @vitejs/create-app is deprecated, use npm init vite instead C:\Users\ychen\AppData\Local\npm-