深度学习入门-鱼书P70安装MNIST数据集傻瓜式教程

考研复试无项目,紧急学习鱼书,卡在P70无法动手,代码是看不懂的,步骤执行不下去,琢磨了两小时, 终于安装成功,现一步一步教大家。

1.先从网盘下载这些文件(不用去官网下了,不然数据集一直下不动,我网盘里面是已经下载好的了) 
链接:https://pan.quark.cn/s/4f13c5943583

2.下载后解压这两个文件即可

3.先打开“【源代码】深度学习入门:基于Python的理论与实现_20240716” 下面的dataset文件夹,

4.把Mnist数据集解压到dataset文件夹里面

5.pycharm打开mnist.py直接运行即可,会直接显示

6.要注意,你要把【源代码】深度学习入门:基于Python的理论与实现_20240716这个文件夹直接当作pycharm的项目打开,类似于这样

7.现在就可以运行ch03里面的代码了

### 如何下载并安装MNIST库 #### 使用 PyTorch 的 torchvision 库下载 MNIST 数据集 PyTorch 提供了一个方便的工具 `torchvision`,可以用来快速下载和加载常见的数据集,其中包括 MNIST 数据集。通过使用 `torchvision.datasets.MNIST` 类,能够轻松实现自动化下载功能[^1]。 以下是具体的代码示例: ```python from torchvision import datasets, transforms from torch.utils.data import DataLoader # 定义数据预处理操作 transform = transforms.Compose([ transforms.ToTensor(), # 将图像转换为 Tensor transforms.Normalize((0.5,), (0.5,)) # 归一化到 [-1, 1] ]) # 下载训练集和测试集 train_dataset = datasets.MNIST(root='./data', train=True, transform=transform, download=True) test_dataset = datasets.MNIST(root='./data', train=False, transform=transform, download=True) # 创建数据加载器 train_loader = DataLoader(dataset=train_dataset, batch_size=64, shuffle=True) test_loader = DataLoader(dataset=test_dataset, batch_size=64, shuffle=False) ``` 这段代码会自动检查本地是否存在 MNIST 数据集文件夹 (`./data`),如果不存在,则会从官方源下载所需的数据文件[^1]。 --- #### 手动下载 MNIST 数据集 对于不依赖于特定框架的情况,也可以手动编写脚本来完成 MNIST 数据集的下载工作。以下是一个基于 Python 和标准库的简单实现方法[^2]: ```python from pathlib import Path import requests DATA_PATH = Path("data") PATH = DATA_PATH / "mnist" FILENAME = "mnist.pkl.gz" # 如果目标路径不存在则创建它 PATH.mkdir(parents=True, exist_ok=True) URL = "http://deeplearning.net/data/mnist/" if not (PATH / FILENAME).exists(): content = requests.get(URL + FILENAME).content with open(PATH / FILENAME, 'wb') as f: f.write(content) print(f"{FILENAME} 已成功保存至 {PATH}") ``` 此脚本利用了 `requests` 模块来获取远程资源,并将其存储在指定目录下。注意,在运行该脚本前需确认已安装必要的第三方模块(如未安装可通过命令 `pip install requests` 来解决)[^3]。 --- #### 解压缩与读取数据 下载完成后,通常还需要进一步解压 `.pkl.gz` 文件以便后续分析或建模用途。这里提供一段用于解压和加载数据的小程序片段: ```python import gzip import pickle with gzip.open(PATH / FILENAME, 'rb') as f: train_set, valid_set, test_set = pickle.load(f, encoding='latin1') print("训练集:", len(train_set[0])) print("验证集:", len(valid_set[0])) print("测试集:", len(test_set[0])) ``` 上述代码展示了如何打开 Gzip 压缩包以及解析其中的内容结构[^2]。 --- ### 注意事项 - **环境配置**:确保开发环境中具备所需的软件支持,比如 Python 版本兼容性、网络连接正常等条件。 - **磁盘空间**:考虑到可能产生的临时文件大小,请预留足够的硬盘容量给项目根目录下的子文件夹 `/data/`。 - **安全性考量**:当执行未知来源或者未经充分审查过的外部链接请求时要格外小心,防止潜在的安全隐患影响系统稳定性和个人隐私保护。
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值