当前位置: 首页 > article >正文

PyTorch入门教学——torchvision中数据集的使用

1、torchvision.datasets

  • datasets是torchvision工具集中的一个工具。
  • 可以理解为调用官方数据集的一种方式,其中有很多开源的数据集,可供我们学习使用。
  • datasets官网:Datasets — Torchvision 0.16 documentation (pytorch.org)
  •  

2、使用

  • 这里以使用CIFAR10中的数据为例。
  • 其中有这个数据集的使用方法和具体介绍。
  • 参数:(每个数据集的参数大致相同)
    • root:数据集下载后存放的目录。
    • train:如果为True,则从训练集创建数据集,否则从测试集创建。
    • transform:接收PIL图像的转换方式,并返回转换后的版本。
    • download:如果为True,则从互联网下载数据集,然后将其放在设置的目录中。如果数据集已下载,则不会再次下载。
  • 代码演示——查看数据集中图片的信息
    • import torchvision
      
      train_set = torchvision.datasets.CIFAR10(root="./Dataset/CIFAR10", train=True, download=True)  # root:数据集要存放在什么位置
      test_set = torchvision.datasets.CIFAR10(root="./Dataset/CIFAR10", train=False, download=True)
      
      print(test_set[0])  # 第一张图片的信息,包含格式和标签
      print(test_set.classes)  # 数据集中所包含的图片类别
      
      img, target = test_set[0]
      print(img)
      print(target)  # 标签
      print(test_set.classes[target])  # 第一张图片的标签为猫
      img.show()  # 显示图片
  • 代码演示——将数据集中的前10张图片在tensorboard中展示出来。
    • import torchvision
      from torch.utils.tensorboard import SummaryWriter
      
      test_set = torchvision.datasets.CIFAR10(
          root="./Dataset/CIFAR10",
          transform=torchvision.transforms.ToTensor(),  # 将图片转换为totensor数据类型
          train=False,
          download=True)
      
      writer = SummaryWriter('logs')  # writer把summary内容写在哪个目录下
      for i in range(10):
          img, target = test_set[i]
          writer.add_image('test_set', img, i)
      
      writer.close()
    • 运行程序后,打开终端,输入下列命令打开tensorboard。
    • tensorboard --logdir=logs --port=6007
    • (该数据集的图片像素为32*32,所以比较模糊)

http://www.kler.cn/a/106132.html

相关文章:

  • Restful API接⼝简介及为什么要进⾏接⼝压测
  • FastGPT部署通义千问Qwen和智谱glm模型|OneAPI配置免费的第三方API
  • Vue2教程002:Vue指令
  • 酒店行业数据仓库
  • 量化交易系统开发-实时行情自动化交易-3.4.3.3.期货市场深度数据
  • TypeORM在Node.js中的高级应用
  • vue+iView 动态侧边栏菜单保持高亮选中
  • 2023-8-20 CVTE视源股份后端开发实习一面
  • 初级前端面试题(一) 之 html/css/js
  • 美摄AR人像美颜,全新视觉体验
  • 集成电路自动化测试的优势是什么?
  • 出租屋智能视频监控系统方案:全面保卫租客安全
  • 【微信小程序】数字化会议OA系统之投票模块(附源码)
  • C语言数据结构之链表
  • Spring Cloud Gateway + Knife4j 4.3 接口文档整合和网关聚合
  • Kafka-Java二:Spring配置kafka消息发送端的缓冲区
  • Prevalence and prevention of large language model use in crowd work
  • MySQL Insert 后獲得主鍵
  • 基于docker的Mysql版本升级
  • 行情分析——加密货币市场大盘走势(10.27)
  • 行业追踪,2023-10-26
  • 设计模式—创建型模式之单例模式
  • 分布式日志和链路追踪
  • 【Linux】MAC帧协议 + ARP协议
  • Painter:使用视觉提示来引导网络推理
  • 图的应用4.0-----关键路径(AOE网)