PyTorch的深度学习入门之PyTorch安装和配置


Posted in Python onJune 27, 2019

前言

深度神经网络是一种目前被广泛使用的工具,可以用于图像识别、分类,物体检测,机器翻译等等。深度学习(DeepLearning)是一种学习神经网络各种参数的方法。因此,我们将要介绍的深度学习,指的是构建神经网络结构,并且运用各种深度学习算法训练网络参数,进而解决各种任务。本文从PyTorch环境配置开始。PyTorch是一种Python接口的深度学习框架,使用灵活,学习方便。还有其他主流的深度学习框架,例如Caffe,TensorFlow,CNTK等等,各有千秋。笔者认为,初期学习还是选择一种入门,不要期望全都学会。须知,发力集中才能深入挖掘。乱花渐欲迷人眼,选择适合自己的,从一而终,相信会对科研大有裨益!

***************************************************

说明:本文乃至本系列全部文章都是在PyTorch0.2版本下做的。现在版本更新了很多,会有一些API的更改,请大家注意Follow最新的变化,以免由于版本问题受到困扰。

***************************************************

1. 环境说明

PyTorch目前支持OSX和Linux两种系统,并且支持多种安装方式。在官网上介绍了基于conda,pip和源代码编译几种不同的安装方式。支持的Python版本有2.7,3.5和3.6。鉴于深度学习需要的计算量一般比较大,强烈建议找到一个有独立显卡的电脑来展开学习,当然没有显卡也能用,就是计算慢很多了。

如果你的电脑是Windows,那么可以安装一个虚拟机来运行Linux,但是性能可能会折扣。我的电脑操作系统是Ubuntu16.04,所以我会以此为例子来介绍后面的内容。

PyTorch的深度学习入门之PyTorch安装和配置

 2. Anaconda 和Python

PackageManager我们选择conda,于是我们需要安装Anaconda这个功能强大的包,下载地质:https://www.anaconda.com/download/ 。里面包含了conda工具,也有Python,以及很多Python需要的扩展工具包。选择2.7版本,下载并安装即可。接下来,如果有显卡,进入第3步;没有显卡直接到第4步。

PyTorch的深度学习入门之PyTorch安装和配置

3. 显卡驱动和CUDA

要使用显卡进行运算,你需要使用支持CUDA的NVIDIA显卡,目前比较好的显卡有NVIDIATITANX、GTX1080Ti 等。好的显卡将会是深度学习研究的有力武器。当然,普通的显卡例如GTX970、GTX1060等也是可以用的。实在没有显卡,那只能做简单的小数据量的实验,效果不会太好。

在Ubuntu16.04上可以采用以下方法安装显卡驱动,这种方式比较稳定。打开“SystemSettings”——“Software&Updates” —— “AdditionalDrivers”,联网状态会自动搜索可用的显卡驱动,选择可用的版本,点击“ApplyChanges”即可。可能重启动后显卡驱动才能生效。

接下来安装CUDAToolkit。因为最新的CUDA是9.0版本,但是PyTorch只能支持到8.0。所以转到该网址“https://developer.nvidia.com/cuda-80-ga2-download-archive”,选择对应的参数,下方会有对应的CUDA文件。例如,下图是我选择的版本。选择deb文件,发现有1.9G大小,下载下来,按照baseinstaller的指示来完成安装。附加的cuBLAS也可以下载下来安装上。

CUDA安装完成后,在主目录下打开“.bachrc”文件,在末尾添加如下代码:

export PATH=/usr/local/cuda-8.0/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

 PyTorch的深度学习入门之PyTorch安装和配置

4. 运行PyTorch的安装命令

如果你和我一样,采用8.0CUDA,2.7版本Python,可以运行以下命令:

conda install pytorch torchvision cuda80 -c soumith

如果没有显卡,2.7版本Python,可以这样:

conda install pytorch torchvision -c soumith

5. 验证安装是否成功

要显示显卡信息,在终端输入:

sudo lshw -c video

要显示CUDA信息,在终端输入:

nvcc -V

查看Phthon版本,在终端输入:

python --version

验证pytorch是否安装成功,在终端输入:

python

此时进入python环境。然后,继续输入

import torch

import torchvision

不报错就表明安装成功。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
分享Python文本生成二维码实例
Jan 06 Python
python简单实现刷新智联简历
Mar 30 Python
对python 命令的-u参数详解
Dec 03 Python
python2.7实现邮件发送功能
Dec 12 Python
Python实现Event回调机制的方法
Feb 13 Python
Python3基础教程之递归函数简单示例
Jun 07 Python
Flask框架重定向,错误显示,Responses响应及Sessions会话操作示例
Aug 01 Python
python统计函数库scipy.stats的用法解析
Feb 25 Python
Python如何给你的程序做性能测试
Jul 29 Python
python 获取谷歌浏览器保存的密码
Jan 06 Python
详解Python类和对象内容
Jun 22 Python
Django实现WebSocket在线聊天室功能(channels库)
Sep 25 Python
解决pycharm remote deployment 配置的问题
Jun 27 #Python
python turtle库画一个方格和圆实例
Jun 27 #Python
Python实现的对一个数进行因式分解操作示例
Jun 27 #Python
python pytest进阶之xunit fixture详解
Jun 27 #Python
Python批量查询关键词微信指数实例方法
Jun 27 #Python
Django框架orM与自定义SQL语句混合事务控制操作
Jun 27 #Python
Pycharm保存不能自动同步到远程服务器的解决方法
Jun 27 #Python
You might like
福利彩票幸运号码自动生成器
2006/10/09 PHP
PHP编程开发怎么提高编程效率 提高PHP编程技术
2015/11/09 PHP
php集成开发环境详解
2019/09/24 PHP
PHP高并发和大流量解决方案整理
2019/12/24 PHP
PHP 对象继承原理与简单用法示例
2020/04/21 PHP
JavaScript Cookie显示用户上次访问的时间和次数
2009/12/08 Javascript
jQuery Mobile页面跳转后未加载外部JS原因分析及解决
2013/03/18 Javascript
不提示直接关闭网页窗口的JS示例代码
2013/12/17 Javascript
JS获取文本框,下拉框,单选框的值的简单实例
2014/02/26 Javascript
js立即执行函数: (function ( ){})( ) 与 (function ( ){}( )) 有什么区别?
2015/11/18 Javascript
JS仿hao123导航页面图片轮播效果
2016/09/01 Javascript
JS封装的三级联动菜单(使用时只需要一行js代码)
2016/10/24 Javascript
Javascript同时声明一连串(多个)变量的方法
2017/01/23 Javascript
vue2.0 如何把子组件的数据传给父组件(推荐)
2018/01/15 Javascript
vue2 前端搜索实现示例
2018/02/26 Javascript
Vue下拉框回显并默认选中随机问题
2018/09/06 Javascript
angularjs1.5 组件内用函数向外传值的实例
2018/09/30 Javascript
javascript实现商品图片放大镜
2019/11/28 Javascript
[01:25:09]2014 DOTA2国际邀请赛中国区预选赛 5 23 CIS VS DT第二场
2014/05/24 DOTA
[05:39]2014DOTA2国际邀请赛 DK晋级胜者组专访战队国士无双
2014/07/14 DOTA
[00:53]2015国际邀请赛 中国区预选赛一触即发
2015/05/14 DOTA
[05:09]2016国际邀请赛中国区预选赛淘汰赛首日精彩回顾
2016/06/29 DOTA
Mac中Python 3环境下安装scrapy的方法教程
2017/10/26 Python
django在接受post请求时显示403forbidden实例解析
2018/01/25 Python
用sqlalchemy构建Django连接池的实例
2019/08/29 Python
python创建ArcGIS shape文件的实现
2019/12/06 Python
Python 实现将数组/矩阵转换成Image类
2020/01/09 Python
css3弹性盒模型实例介绍
2013/05/27 HTML / CSS
Philosophy美国官网:美国美容品牌
2016/08/15 全球购物
汇科协同Java笔试题
2012/03/31 面试题
正隆泰信息技术有限公司上机题
2012/06/14 面试题
老教师工作总结的自我评价
2013/09/27 职场文书
小学生竞选班干部演讲稿
2014/04/24 职场文书
讲文明树新风演讲稿
2014/05/12 职场文书
消防宣传标语大全
2015/08/03 职场文书
spring IOC容器的Bean管理XML自动装配过程
2022/05/30 Java/Android