IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> PyTorch——应用一个已训练好的图片分类网络——AlexNet -> 正文阅读

[人工智能]PyTorch——应用一个已训练好的图片分类网络——AlexNet

1.识别一个图像主体的预训练网络

? ? ? ? ImageNet数据集是由一个Stanford大学维护的包含1400多万幅图像的非常大的数据集,所有的图像都用来自WordNet数据集的名词层次结构标记,而WordNet数据集又是一个大型的英语词汇数据库。

1.1获取一个预先训练好的网络用于图像识别

from torchvision import models

?可以看到很多实际的模型

1.2AlexNet

与先进的深度网络相比,AlexNet是一个非常小的模型,但是,它可以让我们初步学习神经网络处理计算机视觉任务的例子。

我们首先创建一个AlexNet对象,接下来利用resnet101来初始化一个具有101层的卷积神经网络,下载需要一定的时间,resnet101有4450万个参数需要自动优化。

?再次运行resnet来查看这些层的形式

我们可以像调用函数一样调用resnet变量,将图片作为输入。在此之前需要将我们输入的图片进行预处理使其大小正确、颜色处在相同的数值范围。TorchVision模块提供了转换的操作,允许我们快速的定义基本的预处理管道。

from torchvision import transforms
preprocess = transforms.Compose([
    transforms.Resize(256),
    transforms.CenterCrop(224),
    transforms.ToTensor(),
    transforms.Normalize(
        mean = [0.485, 0.456, 0.406],
        std = [0.229, 0.224, 0.225]
    )])

接下来我们导入图片

from PIL import Image
img = Image.open("bobby.jpg")
img

?

?也可以使用img.show()使用一个窗口来进行查看

接下来通过预处理管道传递图像,按照网络预期的方式对输入的张量进行重塑、裁剪和归一化处理

img_t = preprocess(img)
import torch
batch_t = torch.unsqueeze(img_t, 0)

接下来运行模型。首先将网络设置为eval模式,这种过程被称之为推理。如果不这样做的话,那么一些预先训练过的模型,如批归一化和Dropout将不会产生有意义的答案。

torch.set_printoptions(precision=4,sci_mode=False)
out = resnet(batch_t)
out

?加载标签文件,并进行匹配:

with open('imagenet_classes.txt') as f:
    labels = [line.strip() for line in f.readlines()]

_, index = torch.max(out, 1)

接下来输出结果和置信度,以及前五个比较大的预测结果:

percentage = torch.nn.functional.softmax(out, dim=1)[0] * 100
labels[index[0]], percentage[index[0]].item()
_,indices = torch.sort(out, descending=True)
[(labels[idx], percentage[idx].item()) for idx in indices[0][:5]]

可以看到,预测结果为一只金毛猎犬。?

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2022-12-25 11:10:20  更:2022-12-25 11:14:26 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/5 3:29:21-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码