gpt4 book ai didi

python - PyTorch 数据集类的子类找不到数据集文件

转载 作者:行者123 更新时间:2023-12-04 12:56:16 25 4
gpt4 key购买 nike

我正在尝试创建 PyTorch MNIST 数据集类的子类,我称之为 CustomMNISTDataset , 如下:

import torchvision.datasets as datasets

class CustomMNISTDataset(datasets.MNIST):

def __init__(self, root='/home/psando'):
super().__init__(root=root,
download=False)
但是当我执行时:
dataset = CustomMNISTDataset()
它失败并显示错误:“运行时错误:未找到数据集。您可以使用 download=True 下载它”。
但是,当我在同一个文件中运行以下命令时:
dataset = datasets.MNIST(root='/home/psando', download=False)
print(len(dataset))
它成功了 并按预期打印“60000”。
CustomMNISTDataset子类 datasets.MNIST 为什么行为不同? 我已经验证路径 '/home/psando' 包含带有原始和处理过的子目录的 MNIST 目录(否则,显式调用 datasets.MNIST() 的构造函数将失败)。当前行为意味着对 super().__init__() 的调用内 CustomMNISTDataset没有为 datasets.MNIST 调用构造函数这很奇怪!
其他细节:我使用 Python 3.6.8 和 torch==1.6.0torchvision==0.7.0 .任何帮助,将不胜感激!

最佳答案

这需要一些源头潜水,但您的问题是 this功能。数据集的路径取决于类的名称,因此当您创建子类时 MNIST根文件夹更改为 /home/psando/CustomMNISTDataset所以如果你重命名 /home/psando/MNIST/home/psando/CustomMNISTDataset有用。

关于python - PyTorch 数据集类的子类找不到数据集文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66936111/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com