无法从 torchvision 加载数据集

时间:2021-03-23 15:14:06

标签: python pytorch torchvision

我正在尝试在 PyTorch 的 LSUN dataset 之后加载 code。我使用了他们的其他数据集,但这个数据集似乎给了我错误。

import torch
import torchvision.transforms as transforms

#convert the data to torch tensors
transform = transforms.Compose([transforms.ToTensor()])

from torchvision.datasets import LSUN
data = LSUN(root = './', transform=transform)

>>>Error: .//bedroom_train_lmdb: No such file or directory

我在这里做错了吗?该代码适用于 MNIST/CIFAR/等。 (稍作修改data = MNIST(root = './', train=False, download=True, transform=transform)

更新
克隆 repo 并下载数据集:

!git clone https://github.com/fyu/lsun.git
cd lsun
# Download testing set
!python3 download.py -c test

尝试像以前一样运行代码

data = LSUN(root = '',classes='test_lmdb.zip', transform=transform)

但现在收到此错误:

ValueError: Unknown value 'test_lmdb.zip' for argument classes. Valid values are {'train', 'val', 'test'}.

During handling of the above exception, another exception occurred:

ValueError                                Traceback (most recent call last)
/usr/local/lib/python3.7/dist-packages/torchvision/datasets/utils.py in verify_str_arg(value, arg, valid_values, custom_msg)
    348             msg = msg.format(value=value, arg=arg,
    349                              valid_values=iterable_to_str(valid_values))
--> 350         raise ValueError(msg)
    351 
    352     return value

ValueError: Unknown value '' for LSUN class. Valid values are {'bedroom', 'bridge', 'church_outdoor', 'classroom', 'conference_room', 'dining_room', 'kitchen', 'living_room', 'restaurant', 'tower'}.

当我把它改成

data = LSUN(root = '',classes='test', transform=transform)

我收到此错误:

Error: /test_lmdb: No such file or directory

1 个答案:

答案 0 :(得分:0)

与大多数其他 datasets offered by Torchvision 不同,LSUN 似乎没有 download 参数。您可以从这里手动将文件下载到指定目录:

https://www.yf.io/p/lsun

然后按照编写的方式运行您的代码。