加载本地下载好的fashion_mnist数据集注意格式,否则会报错
RuntimeError: Dataset not found. You can use download=True to download it
表示无法识别出文件。尤其是我设置了download=False,他就不会自己去网络下载了。
如果你已经手动下载了 FashionMNIST 数据集,但 PyTorch 仍然无法识别它,这通常是因为数据集的文件结构或命名不符合 PyTorch 的期望,或者数据集文件没有放置在正确的位置。其中最主要的原因是文件结构问题:
在pytorch官网中给出了加载数据集的参考内容:
pytorch加载数据集
我们使用以下参数加载 FashionMNIST 数据集
root 是存储训练/测试数据的路径,
train 指定训练或测试数据集,
download=True 如果 root 中没有数据,则从互联网下载数据。
transform 和 target_transform 指定特征和标签转换
import torch
from torch.utils.data import Dataset
from torchvision import datasets
from torchvision.transforms import ToTensor
import matplotlib.pyplot as plttraining_data = datasets.FashionMNIST(root="data",train=True,download=True,transform=ToTensor()
)test_data = datasets.FashionMNIST(root="data",train=False,download=True,transform=ToTensor()
)
往往加载失败是代码root部分的本地文件结构没弄好
PyTorch 期望 FashionMNIST 数据集在指定的根目录下以特定的方式组织。通常,你需要有以下几个文件夹和文件:
root/FashionMNIST/raw/train-images-idx3-ubyte.gz
root/FashionMNIST/raw/train-labels-idx1-ubyte.gz
root/FashionMNIST/raw/t10k-images-idx3-ubyte.gz
root/FashionMNIST/raw/t10k-labels-idx1-ubyte.gz
确保这些文件存在于你指定的 root 路径下的 FashionMNIST/raw/ 文件夹中。
也就是说根目录,即root参数中的文件路径应该指向包含 FashionMNIST 文件夹的上一级目录。例如,我本地的 FashionMNIST 文件夹位于 F:\deeplearning\fashion_mnist\ 下,那么 root 应该设置为 F:\deeplearning\fashion_mnist\。
修改root后结果成功: