码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • PyTorch(四)Torchvision 与 Transforms


    文章目录

      • Log
    • 一、Torchvision
      • 1. CIFAR10
        • ① 介绍
        • ② 使用
      • 2. 与 Transforms 结合使用
    • 总结


    Log

    2022.11.28接着开启新的一章
    2022.11.29继续学习


    一、Torchvision

    • 视频教程中 Torchvision v0.9.0文档
    • Torchvision 官方文档
    • Torchvision Datasets API 文档

    1. CIFAR10

    ① 介绍

    • CIFAR10数据集介绍
    • 该数据集包括 60,000 张 32×32 像素的彩色图片,共有 10 个类别,每个类别有 6,000 张图像
    • 50,000 张是训练图片,10,000 张是测试图片
    • 图片示例如下:
      在这里插入图片描述

    ② 使用

    • 加载训练集和测试集:
    import torchvision
    
    train_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=True, download=True)
    test_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=False, download=True)
    
    • 1
    • 2
    • 3
    • 4
    • 其中的参数:
      • root:数据集的路径
      • train:如果为 True 则创建数据集,如果为 False 则创建测试集
      • download:为 True 则从网络上下载数据集到 root 路径下,如果该路径下已有数据集则不进行下载。
    • 输出测试集中的第一个:
    print(test_set[0])
    
    • 1
    • 得到:(, 3)。其中 3 代表的是该测试样例对应的映射到整数上的类别
    • 查看对应的类别:
    print(test_set.classes)
    ['airplane', 'automobile', 'bird', 'cat', 'deer', 'dog', 'frog', 'horse', 'ship', 'truck']
    
    • 1
    • 2
    • 将测试样例的图片和标签分开输出:
    img, target = test_set[0]
    print(img)		#
    print(target)	#3
    
    • 1
    • 2
    • 3
    • 先查看图片:
    img.show()
    
    • 1
    • 由于该数据集的图片是 32×32 像素的,所以不是很清晰:
      在这里插入图片描述

    • 再查看对应的类别的名称:

    print(test_set.classes[target])	# cat
    
    • 1

    2. 与 Transforms 结合使用

    • 在创建数据集的时候新增一个参数,用到上一章学到的内容将原始的 PIL 类型的图片转换成 ToTensor 类型的图片:
    dataset_transform = torchvision.transforms.Compose([
        torchvision.transforms.ToTensor()
    ])
    train_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=True, transform=dataset_transform, download=True)
    test_set = torchvision.datasets.CIFAR10(root="../dataset/CIFAR10", train=False, transform=dataset_transform, download=True)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 之后就可以将 ToTensor 类型的图片显示到 tensorboard 中了:
    writer = SummaryWriter("log-CIFAR10")
    for i in range(10):
        img, target = test_set[i]
        writer.add_image("test_set-CIFAR10", img, i)
    writer.close()
    
    • 1
    • 2
    • 3
    • 4
    • 5

    在这里插入图片描述


    总结

    • 本文以 C I F R 10 \rm CIFR10 CIFR10 为例介绍了 T o r c h v i s i o n \rm Torchvision Torchvision 中数据集的使用方法,以及如何结合 T r a n s f o r m s \rm Transforms Transforms 使用数据集。
  • 相关阅读:
    基于概率距离削减法、蒙特卡洛削减法的风光场景不确定性削减附Matlab代码
    day17-正则表达式作业
    UTONMOS利用区块链技术,帮助数字藏品实现“确权”与“溯源”
    DayDayUp:计算机技术与软件专业技术资格证书之《系统集成项目管理工程师》课程讲解之项目信息文档管理与配置管理
    统计物理中“无用”的过渡量
    PyInstaller库简介和运用
    Win11系统怎么找到445端口并关闭的方法教学
    从javascript到es6的函数、数组、对象、运算符升级
    初见物理引擎库Cannon.js(2)
    win10 + VS2015 + libtorch 环境搭建
  • 原文地址:https://blog.csdn.net/weixin_53312629/article/details/127562083
  • 最新文章
  • 攻防演习之三天拿下官网站群
    数据安全治理学习——前期安全规划和安全管理体系建设
    企业安全 | 企业内一次钓鱼演练准备过程
    内网渗透测试 | Kerberos协议及其部分攻击手法
    0day的产生 | 不懂代码的"代码审计"
    安装scrcpy-client模块av模块异常,环境问题解决方案
    leetcode hot100【LeetCode 279. 完全平方数】java实现
    OpenWrt下安装Mosquitto
    AnatoMask论文汇总
    【AI日记】24.11.01 LangChain、openai api和github copilot
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1
正则表达式工具 cron表达式工具 密码生成工具

京公网安备 11010502049817号