pytorch如何导入本地数据集(CIFAR10为例)——详细教程

2024-02-29 12:59

本文主要是介绍pytorch如何导入本地数据集(CIFAR10为例)——详细教程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

pytorch导入本地数据集

  • 最近刚接触机器学习,发现运行别人的代码数据集每次都需要自动从外网下载,速度实在是太慢了!自己摸爬滚打了一天,最终自己下载了本地CIFAR10数据集,并且成功导入。

  • 数据集链接如下:如果失效私聊我即可

  • 链接:https://pan.baidu.com/s/1Tg1hOY8XqUL2Na5jwyP4WQ
    提取码:wgvx

  • 这里有一个特别要注意的点,就是下载的数据集一定要是正规的!就是不要别人那种已经解压好的,因为我们下载之后只需要修改名称即可。不能自己下载之后再压缩,他自己的压缩格式和我们的不一样!程序下载之后进行压缩会报错。

过程讲解

第一阶段

  • 首先就是将我们的数据集下载,然后随便放到一个文件夹中,但是注意这个文件夹的路径最好没有中文
    在这里插入图片描述
  • 这里我选择的路径是 I:\datasets
  • 之后我们需要在浏览器中打开这个路径
  • 在这里插入图片描述
  • 到此我们就先将此浏览器保持在这里,注意不要关闭

第二阶段

  • 我们需要找到我们安装pytorch包的目录中的torchvision包中,找到其中datasets中的cifar.py文件
  • 我这里由于使用的是anaconda 所以路径如下:
    在这里插入图片描述
  • 如果你没有使用anaconda,那么就找到安装python的路径,直接搜索cifar.py文件就可以轻松找到了
  • 之后我们修改cifar.py文件
  • 将我们刚刚打开浏览器的路径复制,并且后面加上我们下载的CIFAR10数据集的文件名,直接修改这个url的参数即可!
    在这里插入图片描述
    可能会出现的问题:
  • 我这里是将原来的注释掉了,我另起了一行 但是在运行的时候会报错,这个报错
    TabError: inconsistent use of tabs and spaces in indentation
  • 这是由于我们在修改的时候空格的地方其实没有空格导致的,可能是用了tab直接对齐!所以要将前面那些空格的地方全部删掉,然后自己打空格就好了!
  • 在网上还看到有人说直接用pycharm的代码重新格式,但是这样会导致代码原有格式变化,所以不要使用!

第三阶段

  • 此时我们就可以直接运行代码了 此时运行代码的时候会从我们刚刚指定的路径下进行下载压缩包,然后自动解压!
import torchvision
LOAD_CIFAR = True
DOWNLOAD_CIFAR = Truetrain_data = torchvision.datasets.CIFAR10(root='./data/',train=True,transform=torchvision.transforms.ToTensor(),download=DOWNLOAD_CIFAR,
)

结果如下:
在这里插入图片描述

这篇关于pytorch如何导入本地数据集(CIFAR10为例)——详细教程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/758896

相关文章

将Mybatis升级为Mybatis-Plus的详细过程

《将Mybatis升级为Mybatis-Plus的详细过程》本文详细介绍了在若依管理系统(v3.8.8)中将MyBatis升级为MyBatis-Plus的过程,旨在提升开发效率,通过本文,开发者可实现... 目录说明流程增加依赖修改配置文件注释掉MyBATisConfig里面的Bean代码生成使用IDEA生

Linux系统配置NAT网络模式的详细步骤(附图文)

《Linux系统配置NAT网络模式的详细步骤(附图文)》本文详细指导如何在VMware环境下配置NAT网络模式,包括设置主机和虚拟机的IP地址、网关,以及针对Linux和Windows系统的具体步骤,... 目录一、配置NAT网络模式二、设置虚拟机交换机网关2.1 打开虚拟机2.2 管理员授权2.3 设置子

使用Python实现快速搭建本地HTTP服务器

《使用Python实现快速搭建本地HTTP服务器》:本文主要介绍如何使用Python快速搭建本地HTTP服务器,轻松实现一键HTTP文件共享,同时结合二维码技术,让访问更简单,感兴趣的小伙伴可以了... 目录1. 概述2. 快速搭建 HTTP 文件共享服务2.1 核心思路2.2 代码实现2.3 代码解读3.

Elasticsearch 在 Java 中的使用教程

《Elasticsearch在Java中的使用教程》Elasticsearch是一个分布式搜索和分析引擎,基于ApacheLucene构建,能够实现实时数据的存储、搜索、和分析,它广泛应用于全文... 目录1. Elasticsearch 简介2. 环境准备2.1 安装 Elasticsearch2.2 J

Linux系统中卸载与安装JDK的详细教程

《Linux系统中卸载与安装JDK的详细教程》本文详细介绍了如何在Linux系统中通过Xshell和Xftp工具连接与传输文件,然后进行JDK的安装与卸载,安装步骤包括连接Linux、传输JDK安装包... 目录1、卸载1.1 linux删除自带的JDK1.2 Linux上卸载自己安装的JDK2、安装2.1

Linux卸载自带jdk并安装新jdk版本的图文教程

《Linux卸载自带jdk并安装新jdk版本的图文教程》在Linux系统中,有时需要卸载预装的OpenJDK并安装特定版本的JDK,例如JDK1.8,所以本文给大家详细介绍了Linux卸载自带jdk并... 目录Ⅰ、卸载自带jdkⅡ、安装新版jdkⅠ、卸载自带jdk1、输入命令查看旧jdkrpm -qa

Java使用Curator进行ZooKeeper操作的详细教程

《Java使用Curator进行ZooKeeper操作的详细教程》ApacheCurator是一个基于ZooKeeper的Java客户端库,它极大地简化了使用ZooKeeper的开发工作,在分布式系统... 目录1、简述2、核心功能2.1 CuratorFramework2.2 Recipes3、示例实践3

Java利用JSONPath操作JSON数据的技术指南

《Java利用JSONPath操作JSON数据的技术指南》JSONPath是一种强大的工具,用于查询和操作JSON数据,类似于SQL的语法,它为处理复杂的JSON数据结构提供了简单且高效... 目录1、简述2、什么是 jsONPath?3、Java 示例3.1 基本查询3.2 过滤查询3.3 递归搜索3.4

springboot简单集成Security配置的教程

《springboot简单集成Security配置的教程》:本文主要介绍springboot简单集成Security配置的教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录集成Security安全框架引入依赖编写配置类WebSecurityConfig(自定义资源权限规则

在java中如何将inputStream对象转换为File对象(不生成本地文件)

《在java中如何将inputStream对象转换为File对象(不生成本地文件)》:本文主要介绍在java中如何将inputStream对象转换为File对象(不生成本地文件),具有很好的参考价... 目录需求说明问题解决总结需求说明在后端中通过POI生成Excel文件流,将输出流(outputStre