Pytorch: ModuleNotFoundError: No module named 'torch_scatter.scatter_cpu'
安装pytorch一些库的时候会遇到类似这样的错误;
ModuleNotFoundError: No module named 'torch_scatter.scatter_cpu'
ModuleNotFoundError: No module named 'torch_scatter.scatter_cuda'
或者;
往往都是因为CUDA配置不当造成的。请看我的博客,如何正确的配置CUDA,翻遍网上教程都没有本博客讲得通透。
CUDA配置一般情况下配置两个环境变量。但是为了防止出错,最好能够配置4个环境变量。
安装CUDA后会提醒配置两个:
Please make sure that
- PATH includes /usr/local/cuda-10.0/bin
- LD_LIBRARY_PATH includes /usr/local/cuda-10.0/lib64, or, add /usr/local/cuda-10.0/lib64 to /etc/ld.so.conf and run ldconfig as root
所以
vim ~/.bashrc
.bashrc是root权限用户才能访问管理的配置文件,乱配的话,系统会崩。
export CUDA_HOME=/usr/local/cuda-10.0
export PATH=/usr/local/cuda-10.0/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH
一般情况下,都会自动创建一个软连接到/usr/local/cuda
所以 export CUDA_HOME=/usr/local/cuda 也是可以的
当然配置到PATH里也比较好,export PATH=/usr/local/cuda-10.0/bin:$PATH
配置完了CUDA一般是要安装CUDNN,最权威的安装方法见:
https://blog.csdn.net/dongfangxiaozi_/article/details/89453992
然后可选配置下面的两个:
export CPATH=/usr/local/cuda/include:$CPATH
export DYLD_LIBRARY_PATH=/usr/local/cuda-10.0/lib:$DYLD_LIBRARY_PATH
基本上就没问题了。记得source ~/.bashrc使配置生效。
如果还不行,旧重启服务器或者重装pytorch。
有时候安装了多个Cuda确保是干净地安装,而且环境配置唯独一个,保证不会混乱,否则各类PATH可能对应了不同版本的Cuda。可以删除之前旧的cuda环境,尤其是以yum 安装的cuda环境,可以通过yum remove删除,例如;
rpm -qa | grep cuda 查询当前以rpm / yum安装的cuda环境,一律删除
yum remove cuda-repo-rhel7-9-0-local-9.0.176-1.x86_64
yum remove cuda-cublas-9-0-9.0.176-1.x86_64
推荐阅读
-
下载python中Crypto库报错:ModuleNotFoundError: No module named ‘Crypto’的解决
-
Python3中无法导入ssl模块的解决办法和python3.7 ModuleNotFoundError: No module named bz2解决办法
-
Centos7 执行firewall-cmd –permanent –add-service=mysql报错“ModuleNotFoundError: No module named 'gi'”
-
web.py设置SSL支持(HTTPS,解决错误 ModuleNotFoundError: No module named 'web.wsgiserver')
-
【昊鼎王五】执行python3脚本,报“ModuleNotFoundError: No module named 'dateutil'”错的解决方法
-
解决pycharm终端/cmd运行python脚本报错“ImportError/ModuleNotFoundError:No Module named ...”
-
ModuleNotFoundError: No module named 'scrapy.contrib'------使用ImagesPipeline时候--参考官方文档
-
ModuleNotFoundError: No module named 'torch'(anaconda安装好Pytorch却无法在Jupyter notebook使用)
-
Linux云服务ModuleNotFoundError: No module named 'MySQLdb'
-
ModuleNotFoundError: No module named 'resource'问题及解决方法