在各个平台系统中安装Pytorch

本文系转载,出处:https://blog.csdn.net/sunqiande88/article/details/80085569

PyTorch简介

在2017年1月18日,facebook下的Torch7团队宣布PyTorch开源后就引来了剧烈的反响。PyTorch 是 Torch 在 Python 上的衍生版本。Torch 是一个使用 Lua 语言的神经网络库, Torch 很好用, 但是 Lua 流行度不够, 所以facebook开发团队将 Lua 的 Torch 移植到了更流行的语言 Python 上,推出了PyTorch 。

PyTorch是一个Python优先的深度学习框架,是一个和tensorflow,Caffe,MXnet一样,非常底层的框架。先说下PyTorch相比于Tensorflow的三大优势:

一.Python优先支持

PyTorch主推的特性之一,就是支持Python(官方的提法:puts Python first)。因为直接构建自 Python C API,PyTorch从细粒度上直接支持python的访问。相比于原生Python实现,引入的新概念很少,这不仅降低了 Python 用户理解的门槛,也能保证代码基本跟原生的 Python 实现一致。事实上,开发者可以直接用原生 Python 代码扩展 PyTorch 的 operation

Tensorflow总有一种用 Python 调用 C++ 写的第三方动态链接库的感觉;写模型需要更多代码,无法贯彻 Python的简约风格;而且写新的 operation 必须用 C++ 开发。

二.动态图的良好支持

Tensorflow运行必须提前建好静态计算图,然后通过feedrun重复执行建好的图。但是Pytorch却不需要这么麻烦:PyTorch的程序可以在执行时动态构建/调整计算图。相对来说,pytorch具有更好的灵活性。这得益于PyTorch直接基于 Python C API 构建的 Python接口。

TensorFlow饱受诟病的痛点就是只支持静态图模型。也就是说,在处理数据前必须预先定义好一个完整的模型。如果数据非常规整,那还好。但实际工程和研究项目中的数据,难免有一些边角的情况。很多项目,其实需要大量实验才能选择正确的图模型。这就很痛苦了。因此,很多项目转而采用了PyTorch等支持动态图模型的框架,以便在运行程序的时候动态修正模型。

不过在2017年10月31日万圣节这天,Google发布了TensorFlow Eager Execution(贪婪执行),为TensorFlow添加了命令式编程的接口。启用贪婪执行后,TensorFlow操作会立刻执行,不用通过Session.run()执行一个预先定义的图。相信在不久的TensorFlow1版本,谷歌会正式为TensorFlow加入动态图的支持!

三.易于Debug

Pytorch在运行时可以生成动态图,开发者就可以在堆栈跟踪中看到哪一行代码导致了错误。你甚至可以在调试器中停掉解释器并看看某个层会产生什么。

PyTorch的官方Windows支持

2018年4月25日,PyTorch 官方发布 0.4.0 版本,该版本的PyTorch 有多项重大更新,其中最重要的改进是支持 Windows 系统。Windows用户能直接通过condapip和源码编译三种方式来安装Pytorch,不过需要强调Windows下的Pytorch仅支持Python3.5Python3.6,不支持其他的Python3版本,也不支持Python2。我们在官网就能看到相应的安装方式:

这里写图片描述

方法一:pip安装

Python3.6+pip安装cpu版本

pip install http://download.pytorch.org/whl/cpu/torch-0.4.0-cp36-cp36m-win_amd64.whl 

Python3.5+pip安装cpu版本

pip install http://download.pytorch.org/whl/cpu/torch-0.4.0-cp35-cp35m-win_amd64.whl

Python3.6+pip安装gpu版本 
目前gpu版本支持cuda8.0,cuda9.0cuda9.1,请选择对应的版本下载安装,不要同时执行下面三个命令!

pip install http://download.pytorch.org/whl/cu80/torch-0.4.0-cp36-cp36m-win_amd64.whl  
pip install http://download.pytorch.org/whl/cu90/torch-0.4.0-cp36-cp36m-win_amd64.whl 
pip install http://download.pytorch.org/whl/cu91/torch-0.4.0-cp36-cp36m-win_amd64.whl 

Python3.5+pip安装gpu版本 
目前gpu版本支持cuda8.0,cuda9.0cuda9.1,请选择对应的版本下载安装,不要同时执行下面三个命令!

pip install http://download.pytorch.org/whl/cu80/torch-0.4.0-cp35-cp35m-win_amd64.whl
pip install http://download.pytorch.org/whl/cu90/torch-0.4.0-cp35-cp35m-win_amd64.whl
pip install http://download.pytorch.org/whl/cu91/torch-0.4.0-cp35-cp35m-win_amd64.whl

方法二:Conda安装

如果你是Anaconda|Python用户,就不需要区分Python3.5Python3.6,执行命令:

conda install pytorch -c pytorch 

就可以完成安装。不过这个默认安装的是cuda8.0gpu版本,如果你需要安装cuda9.0cuda1.0gpu版本,请执行:

conda install pytorch cuda90 -c pytorch 

或者

conda install pytorch cuda91 -c pytorch 

来进行安装。

测试安装是否成功

import torch
print(torch.__version__)

如果输出0.4.0,那么恭喜Windows下的PyTorch0.4.0安装成功!

最后需要安装 torchvision

pip install torchvision

一般gpu版本配置需要cuDNN,而cuDNN需要注册才能下载,下载速度太慢,有网友提供两个百度云的下载链接,cuDNN安装教程见这里

Win10-x64+CUDA8+cuDNN v7 
Win10-x64+CUDA8+cuDNN v6

原文地址:https://www.cnblogs.com/andingding-blog/p/9894417.html