PyTorch环境配置常见报错的解决办法

目标

小白在最基础的环境配置里一般都会出现许多问题。

这里把一些常见的问题分享出来。希望可以节省大家一些时间。

最终目标是可以在cmd虚拟环境里进入jupyter notebook,new的时候有对应的环境,并且可以跑通所有的import code。

第一步: 在anaconda中创建一个专门的虚拟环境

bash 复制代码
conda create -n py37_torch131 python=3.7

第二步:激活环境

bash 复制代码
# 激活环境
source activate py37_torch131

## 如果source报错,改用conda 
conda activate py37_torch131

# 退出环境的指令
deactivate

以上两步一般都不会出现什么问题。

第三步:在虚拟环境下安装pytorch1.3.1及各种依赖库

原始安装代码:

bash 复制代码
# 安装pytorch1.3.1
conda install pytorch=1.3.1 torchvision cudatoolkit=10.0

# 安装其他依赖库
pip install jupyter tqdm opencv-python matplotlib pandas

这一步可能会遇到非常多的安装的问题。

安装的时候可能会遇到:

① channel找不到的,报错为 The following packages are not available from current channels;

②也可能文件比较大,或者下载速度非常慢。

此外,conda的安装目前不支持断点续传,一旦卡住了或者超时,就需要重头再来。

这里提供一种针对各种安装问题的通用解决方案: **尽量都通过清华源的镜像下载安装。**相比速度很快。

bash 复制代码
# 先添加清华的channels

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/

conda config --set show_channel_urls yes

# 安装pytorch
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
# conda install pytorch torchvision cudatoolkit=10.0 # 不指定版本的话,默认下载最新的,这样的话再baseline里可能会遇到需要将target类型转为long的报错提示

conda install pytorch=1.3.1 torchvision cudatoolkit=10.0


# 安装其他依赖包
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple jupyter tqdm opencv-python matplotlib pandas

如果要安装其他包,可以先网上搜索下清华镜像是否有,一般都会有的。然后尽量通过清华镜像资源下载。

第四步:启动notebook

bash 复制代码
jupyter-notebook
jupyter notebook
# 以上两种方式都可以启动notebook

本来要开始愉快的代码之旅了,结果发现在notebook里new的时候,并没有我们刚刚创建的那个虚拟环境。

原因是缺少nb_conda插件,以及没有导入虚拟环境。

bash 复制代码
# 安装nb_conda插件
conda install nb_conda
conda install ipykernel
  
# 导入虚拟环境
python -m ipykernel install --user --name py37_torch131 --display-name "py37_cv"

# 最后启动jupyter notebook
jupyter notebook

总结

要敲的指令按顺序如下:

bash 复制代码
conda create -n py37_torch131 python=3.7 
conda activate py37_torch131

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main/
conda config --set show_channel_urls yes
 

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud/pytorch/
conda install pytorch=1.3.1 torchvision cudatoolkit=10.0
   
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple jupyter tqdm opencv-python matplotlib pandas


conda install nb_conda
conda install ipykernel


python -m ipykernel install --user --name py37_torch131 --display-name "py37_cv"
jupyter notebook

在notebook里new file的时候记得选择 py37_cv那个环境。

最终效果如下:

相关推荐
想回家的一天13 小时前
ECONNREFUSED ::1:8000 前端代理问题
开发语言
cike_y13 小时前
Mybatis之解析配置优化
java·开发语言·tomcat·mybatis·安全开发
Jay_Franklin14 小时前
SRIM通过python计算dap
开发语言·python
是一个Bug14 小时前
Java基础50道经典面试题(四)
java·windows·python
Slow菜鸟14 小时前
Java基础架构设计(三)| 通用响应与异常处理(分布式应用通用方案)
java·开发语言
吴佳浩14 小时前
Python入门指南(七) - YOLO检测API进阶实战
人工智能·后端·python
消失的旧时光-194314 小时前
401 自动刷新 Token 的完整架构设计(Dio 实战版)
开发语言·前端·javascript
wadesir15 小时前
Rust中的条件变量详解(使用Condvar的wait方法实现线程同步)
开发语言·算法·rust
tap.AI15 小时前
RAG系列(二)数据准备与向量索引
开发语言·人工智能
阿蒙Amon15 小时前
C#每日面试题-重写和重载的区别
开发语言·c#