python获取dataloader数据时报错:AttributeError: Caught AttributeError in DataLoader worker process 0.报错

报错截图
在这里插入图片描述

仔细查看了代码没有问题。数据集也没有问题,因为我使用的是torchvision里cifar100数据集。

网上看到了很多解决方法,比如设num_workers=0,但是还是无法解决。

其实是torchvision的版本问题,代码是从github上clone下来的,我的torch版本过高,torchvision版本也过高。我重新新建了一个环境。

conda creat -n my_env python=3.6.5

激活该环境

conda activate my_env

再安装0.4.0的torch版本(Linux系统下载):

conda install pytorch=0.4.1 cuda90 -c pytorch

此命令没有安装torchvision,所以需要手动安装:

conda install torchvision

此时torchvision版本是0.2.1(自动匹配了我的torch版本)
在这里插入图片描述
问题就解决了。

Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐