pytorch 中报错:PermissionError: [WinError 5] 拒绝访问。: '…/data’

在学习李沐大神动手学习深度学习卷积神经网络章节中,调用d2l包中load_data_fashion_mnist报错,这可能是***权限***的问题。

batch_size = 256
train_iter, test_iter = d2l.load_data_fashion_mnist(batch_size,batch_size)

我的解决方法是 重新定义一下 load_data_fashion_mnist ,再调用就可以了。
需要改一下 mnish 路径。前面得加上相应的包名
在这里插入图片描述
新手建议还是不要去改变d2l包中的路径,一旦搞错就得崩溃。

如果还没有解决,复制下方代码模块即可。

import torchvision
from torch.utils import data
from torchvision import transforms
from d2l import torch as d2l
d2l.use_svg_display()


def get_dataloader_workers():
    """Use 4 processes to read the data.

    Defined in :numref:`sec_utils`"""
    return 4

def load_data_fashion_mnist(batch_size, resize=None): 
    #@save """下载Fashion-MNIST数据集,然后将其加载到内存中""" 
    trans = [transforms.ToTensor()]
    if resize:
        trans.insert(0, transforms.Resize(resize))
        trans = transforms.Compose(trans)
        mnist_train = torchvision.datasets.FashionMNIST(
            root="D:/Anaconda3/data", train=True, transform=trans, download=True)
        mnist_test = torchvision.datasets.FashionMNIST(
            root="D:/Anaconda3/data", train=False, transform=trans, download=True)
        return (data.DataLoader(mnist_train, batch_size, shuffle=True,
                                num_workers=get_dataloader_workers()),
                data.DataLoader(mnist_test, batch_size, shuffle=False,
                                num_workers=get_dataloader_workers()))
    
# train_iter, test_iter = load_data_fashion_mnist(32, resize=64)
# for X, y in train_iter:
    # print(X.shape, X.dtype, y.shape, y.dtype)
    # break

如果还没有解决,可以在下方留言。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐