WIn10+Anaconda环境下安装PyTorch(避坑指南)


Posted in Python onJanuary 30, 2019

这些天安装 PyTorch,遇到了一些坑,特此总结一下,以免忘记。分享给大家。

首先,安装环境是:操作系统 Win10,已经预先暗转了 Anaconda。

1. 为 PyTorch 创建虚拟环境

关于 Anaconda 的安装步骤这里就忽略不讲了,Win10 下安装 Anaconda 非常简单。

安装 Anaconda 完毕后,我们在安装 PyTorch 之前最好先创建一个 pytorch 的虚拟环境。之所以创建虚拟环境是因为 Python 为不同的项目需求创建不同的虚拟环境非常常见。在实际项目开发中,我们通常会根据自己的需求去下载各种相应的框架库,但是可能每个项目使用的框架库并不一样,或使用框架的版本不一样,这样需要我们根据需求不断的更新或卸载相应的库,管理起来相当麻烦。所以通过创建虚拟环境,相当于为不同的项目创建一块独立的空间,在这个空间里,你安装任何库和框架都是独立的,不会影响到外部环境。

总之就是想象成为 PyTorch 单独创建一个空间,这个空间与其它空间互不影响。我之前安装了 TensorFlow 了,也是创建了一个虚拟环境,且 Python 版本是 3.5 的。所以,这里当然也要创建虚拟环境了。

创建 PyTorch 虚拟环境步骤:

1.打开 Anaconda 自带的 Anaconda Prompt:

WIn10+Anaconda环境下安装PyTorch(避坑指南)

2.打开 Anaconda Prompt 之后,在命令行输入:

conda create --name pytorch python=3.6

注意,这里的 pytorch 是虚拟环境的名称,可随意取。

3.然后继续下列命令,进入 pytorch 虚拟环境:

activate pytorch

WIn10+Anaconda环境下安装PyTorch(避坑指南)

好了,pytorch 的虚拟环境创建好了。接下来就是安装 PyTorch 了。

其实,安装 PyTorch 还是非常简单的。接下来记录一些坑。

2. PyTorch 官网安装

PyTorch 的官网提供了简单的安装方法,只需简单的命令即可。

首先,打开 PyTorch 官网安装页面(需自备梯子):https://pytorch.org/get-started/locally/

WIn10+Anaconda环境下安装PyTorch(避坑指南)

可以看到页面里的这张图,非常简单。我们的环境是:Windows、Conda、Python 3.6、None CUDA,对应的命令是:

conda install pytorch-cpu torchvision-cpu -c pytorch

复制这条命令在 Anaconda Prompt 里输入,则 PyTorch “顺利”安装完成。

但是问题来了,在 Jupyter 里 import torch 没有问题,可 import torchvision 确报错了:

ImportError: DLL load failed: 找不到指定的模块。

可能是 pillow 模块有问题。尝试卸载 pillow 模块,但是会同时卸载 PyTorch,故为一坑。

3. pip 安装

上一种方法舍弃,这里尝试使用 pip 安装。

同样在 Anaconda Prompt 里输入以下命令:

# Python 3.6
pip3 install https://download.pytorch.org/whl/cpu/torch-1.0.0-cp36-cp36m-win_amd64.whl
pip3 install torchvision

安装顺利完成。

这时候在 Jupyter 里 import torch 没有问题,可 import torchvision 确仍然报错了:

ImportError: DLL load failed: 找不到指定的模块。

解决方案:

在 Anaconda Prompt 里输入以下命令:

conda uninstall pillow
pip install pillow

使用 pip 重新安装 pillow 模块即可。

至此,填坑。PyTorch 成功安装。以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
pygame学习笔记(4):声音控制
Apr 15 Python
一些常用的Python爬虫技巧汇总
Sep 28 Python
Python 通过URL打开图片实例详解
Jun 01 Python
python+pyqt实现右下角弹出框
Oct 26 Python
对Python 网络设备巡检脚本的实例讲解
Apr 22 Python
对python程序内存泄漏调试的记录
Jun 11 Python
Python之csv文件从MySQL数据库导入导出的方法
Jun 21 Python
Python测试网络连通性示例【基于ping】
Aug 03 Python
对Python实现累加函数的方法详解
Jan 23 Python
pytorch 自定义数据集加载方法
Aug 18 Python
python实现人机猜拳小游戏
Feb 03 Python
Python matplotlib绘制条形统计图 处理多个实验多组观测值
Apr 21 Python
对dataframe数据之间求补集的实例详解
Jan 30 #Python
如何在Django中添加没有微秒的 DateTimeField 属性详解
Jan 30 #Python
Pandas统计重复的列里面的值方法
Jan 30 #Python
自学python的建议和周期预算
Jan 30 #Python
python DataFrame 取差集实例
Jan 30 #Python
对python dataframe逻辑取值的方法详解
Jan 30 #Python
对Python中DataFrame选择某列值为XX的行实例详解
Jan 29 #Python
You might like
PHP读取txt文件的内容并赋值给数组的代码
2011/11/03 PHP
PHP实现定时执行任务的方法
2014/10/05 PHP
php中PDO方式实现数据库的增删改查
2015/05/17 PHP
FleaPHP框架数据库查询条件($conditions)写法总结
2016/03/19 PHP
PHP实现动态删除XML数据的方法示例
2018/03/30 PHP
Yii2.0 RESTful API 基础配置教程详解
2018/12/26 PHP
12款经典的白富美型—jquery图片轮播插件—前端开发必备
2013/01/08 Javascript
setInterval,setTimeout与jquery混用的问题
2013/04/08 Javascript
javascript中attribute和property的区别详解
2014/06/05 Javascript
jQuery版AJAX简易封装代码
2016/09/14 Javascript
jQuery实现select模糊查询(反射机制)
2017/01/14 Javascript
jquery ui sortable拖拽后保存位置
2017/04/27 jQuery
ReactNative 之FlatList使用及踩坑封装总结
2017/11/29 Javascript
javascript Function函数理解与实战
2017/12/01 Javascript
React如何实现浏览器打印部分内容详析
2019/05/19 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
vue使用一些外部插件及样式的配置代码
2019/11/18 Javascript
vue中用 async/await 来处理异步操作
2020/07/18 Javascript
Python解惑之True和False详解
2017/04/24 Python
python flask中静态文件的管理方法
2018/03/20 Python
Python通过属性手段实现只允许调用一次的示例讲解
2018/04/21 Python
PyGame贪吃蛇的实现代码示例
2018/11/21 Python
对DataFrame数据中的重复行,利用groupby累加合并的方法详解
2019/01/30 Python
详解Python3 基本数据类型
2019/04/19 Python
解析浏览器的一些“滚动”行为鉴赏
2019/09/16 HTML / CSS
Aveda美国官网:天然护发产品、洗发水、护发素和沙龙
2016/12/09 全球购物
加拿大最大的书店:Indigo
2017/01/01 全球购物
英国床垫和床架购物网站:Bedman
2019/11/04 全球购物
活动总结报告范文
2014/05/04 职场文书
反腐倡廉警示教育活动心得体会
2014/09/04 职场文书
《周恩来的四个昼夜》观后思想汇报范文两篇
2014/09/10 职场文书
党的群众路线教育实践活动个人剖析材料
2014/10/07 职场文书
体育教师个人总结
2015/02/09 职场文书
佛光寺导游词
2015/02/10 职场文书
创卫工作总结2015
2015/04/22 职场文书
Feign调用全局异常处理解决方案
2021/06/24 Java/Android