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那个环境。

最终效果如下:

相关推荐
AI医影跨模态组学6 小时前
如何将深度学习MTSR与膀胱癌ITGB8/TGF-β/WNT机制建立关联,并进一步解释其与患者预后及肿瘤侵袭、免疫抑制的生物学联系
人工智能·深度学习·论文·医学影像
小糖学代码7 小时前
LLM系列:1.python入门:15.JSON 数据处理与操作
开发语言·python·json·aigc
yejqvow127 小时前
CSS如何控制placeholder文字的颜色_使用--placeholder伪元素
jvm·数据库·python
handler017 小时前
从源码到二进制:深度拆解 Linux 下 C 程序的编译与链接全流程
linux·c语言·开发语言·c++·笔记·学习
m0_743623927 小时前
HTML怎么创建多语言切换器_HTML语言选择下拉结构【指南】
jvm·数据库·python
pele7 小时前
Angular 表单中基于下拉选择动态启用字段必填校验的完整实现
jvm·数据库·python
HHHHH1010HHHHH7 小时前
Redis怎样判断节点是否主观下线_哨兵基于down-after-milliseconds参数的心跳超时判定
jvm·数据库·python
小白学大数据7 小时前
现代Python爬虫开发范式:基于Asyncio的高可用架构实战
开发语言·爬虫·python·架构
渔舟小调7 小时前
P19 | 前端加密通信层 pikachuNetwork.js 完整实现
开发语言·前端·javascript
不爱吃炸鸡柳7 小时前
数据结构精讲:树 → 二叉树 → 堆 从入门到实战
开发语言·数据结构