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

yipeiwu_com6年前Python基础

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

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

1. 为 PyTorch 创建虚拟环境

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

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

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

创建 PyTorch 虚拟环境步骤:

1.打开 Anaconda 自带的 Anaconda Prompt:


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

conda create --name pytorch python=3.6

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

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

activate pytorch


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

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

2. PyTorch 官网安装

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

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


可以看到页面里的这张图,非常简单。我们的环境是: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设计】。

相关文章

解决python3 安装完Pycurl在import pycurl时报错的问题

此次遇到的问题是在import pycurl 时报错 pycurl:libcurl link-time version is older than compile-time versi...

Python遍历目录中的所有文件的方法

os.walk生成器 os.walk(PATH), PATH是个文件夹路径,当然可以用.或者../这样啦. 返回的是个三元元组为元素的列表, 每个元素代表了一个文件夹下的内容.第一个就是...

wxpython 学习笔记 第一天

它是Python语言对流行的wxWidgets跨平台GUI工具库的绑定。而wxWidgets是用C++语言写成的。   和Python语言与wxWidgets GUI工具库一样,wxPy...

flask中主动抛出异常及统一异常处理代码示例

flask中主动抛出异常及统一异常处理代码示例

本文主要介绍的是flask中主动抛出异常及统一异常处理的相关内容,具体如下。 在开发时,后台出现异常 ,但不想把异常显示给用户或者要统一处理异常时,可以使用abort主动抛出异常,再捕获...

Python装饰器原理与基本用法分析

本文实例讲述了Python装饰器原理与基本用法。分享给大家供大家参考,具体如下: 装饰器: 意义:在不能改变原函数的源代码,和在不改变整个项目中原函数的调用方式的情况下,给函数添加新的功...