再见Caffe,Pytorch比你美

本人因科研需要,于半年前开始深度学习,在试了无数坑之后,进入了caffe的泥泞路。虽然非常地膜拜贾大神,可是由于本人才疏学浅,实在无法实现一些自定义的网络。从入门到放弃血战caffe,差不多四个月,所以真爱是需要本钱的,真爱未必就能陪你走一生。四个月,虽然不长,可是也算是酸甜苦辣都尝过了。
下面就给大家介绍一下,我的新欢Pytorch,以下是文章的主要脉络:
- 版本千万要匹配
- Ubuntu显卡驱动
- Cuda和Cudnn
- Anaconda不要只认高版本
- 一行指令装好Pytorch
- 科研要乘早


  • 再见CaffePytorch比你美
  • 版本千万要匹配
  • Ubuntu显卡驱动
  • Cuda和Cudnn
  • 先装cuda
  • 接下来是cudnn
  • 说白了就是复制粘贴接下来执行以下命令
  • 再输入
  • Anaconda不要只认高版本
  • 一行指令装好Pytorch
  • 科研要乘早
  • 就是早起不了



版本千万要匹配

老铁,千万别相信网上那些什么处理版本不匹配问题,如果你跟我一样也想少点麻烦,或者说比较懒,那就跟我装一样的版本,老铁把实验室的机子都装遍了,这一套,完全没有问题。

Ubuntu

cuda

cudnn

anaconda

python

pytorch

pycharm

16.04

cuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb

cudnn-8.0-linux-x64-v5.1.tgz

Anaconda2-5.0.1-Linux-x86_64.sh

2.7

pytorch-0.2.0-py27hc03bea1_4cu80.tar.bz2

pycharm-professional-2017.2.4.tar.gz

Ubuntu显卡驱动

这个是最坑爹的一项,很多的博客说要根据显卡型号单独下载驱动安装,可是本人在尝试了N种方法之后,重装Ubuntu50次以后,我再也不相信大家的显卡会这么的奇葩,这么的不通用。不管你是什么显卡,只要支持cuda的,你就跟着我,在新系统装完后,输入一下指令:

sudo apt-get update 
 sudo apt-get upgrade
点击系统设置那个齿轮,点击软件更新,在选择第三方驱动,在联网的情况下,你就可以看到,Using NVIDIA binary driver vision ???反正是三百多,选择最新的版本,直接按下apply 应用修改。等待就是最美的姿态。

更改pytorch的安装路径 pytorch怎么装_更改pytorch的安装路径

千万要重启,驱动才能生效

Cuda和Cudnn

这个部分其实和血战caffe中的步骤是一样的,以上的步骤都是为了在Ubuntu系统下使用你的NVIDIA GPU而做的准备工作。所以下面简单说一下流程,详细可见血战caffe

先装cuda
>sudo apt-get install build-essential 
 sudo apt-get install libgtk2.0-dev
sudo dpkg -icuda-repo-ubuntu1604-8-0-local-ga2_8.0.61-1_amd64.deb
sudo apt-get updates
sudo apt-get install cuda
接下来是cudnn
cd cuda/include/
sudo cp cudnn.h /usr/local/cuda/include/
cd ../lib64
sudo cp lib* /usr/local/cuda/lib64/
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*
说白了就是复制粘贴,接下来执行以下命令:
cd /usr/local/cuda/lib64/
sudo rm -rf libcudnn.so libcudnn.so.5
sudo ln -s libcudnn.so.5.1.10 libcudnn.so.5
sudo ln -s libcudnn.so.5 libcudnn.so

在终端中输入以下命令进行环境变量的配置:

sudo gedit /etc/profile

在出现的文件中进行编辑,在末尾加上并保存:

PATH=/usr/local/cuda/bin:$PATH
export PATH
创建链接文件

sudo gedit /etc/ld.so.conf.d/cuda.conf

在该文件中,插入/usr/local/cuda/lib64并保存,然后使用

sudo ldconfig

使之生效。

在终端中进入CUDA 8.0 Samples默认安装路径,输入命令:

sudo make all -j8

此步可能会出错,我这里没有出错。完成后继续输入

cd bin/x86_64/linux/release
./deviceQuery
再输入
sudo apt-get install build-essential 
sudo apt-get install libgtk2.0-dev

如果符号链接报错:

sudo mv /usr/lib/nvidia-375/libEGL.so.1 /usr/lib/nvidia-375/libEGL.so.1.org
sudo mv /usr/lib32/nvidia-375/libEGL.so.1 /usr/lib32/nvidia-375/libEGL.so.1.org
sudo ln -s /usr/lib/nvidia-375/libEGL.so.375.66 /usr/lib/nvidia-375/libEGL.so.1
sudo ln -s /usr/lib32/nvidia-375/libEGL.so.375.66 /usr/lib32/nvidia-375/libEGL.so.1

注意其中的375要根据你自己的驱动版本替换,不要无脑跟着我复制
如果没有报错就不用管了

Anaconda不要只认高版本

https://www.anaconda.com/download/#linux
就选那个 2.7python 的下载就对了,文件命是Anaconda2-5.0.0-Linux-x86_64.sh
在这个文件所在的目录打一句

bash Anaconda2-5.0.0-Linux-x86_64.sh

安装完成之后输入

source ~/.bashrc
conda list

如果显示已经装的模块,就没问题,就像下面这个图一样

更改pytorch的安装路径 pytorch怎么装_bc_02


如果有问题,极有可能是下面的黑字出了问题

千万记住过程中都是yes和回车,最关键的加入环境变量一定要手打yes,不要只知道按回车

一行指令装好Pytorch

为什么我会爱上它而抛弃caffe,现在你们知道了吧,如果你按照我的版本,那么输入下面一句命令,

conda install pytorch torchvision cuda80 -c soumith

奇迹就会发生

如果等待迟迟未能完成,那么:

科研要乘早

conda 的服务器特别不稳定,本人到了中午以后几乎没有完成过安装,所以最简单的方法就是,早上6点速度绝对快,pytorch大概480M,看各位的想法了。

就是早起不了

那就离线安装吧,文件名如下
cuda80-1.0-0.tar.bz2
libgcc-7.2.0-h69d50b8_2.tar.bz2
pytorch-0.2.0-py27hc03bea1_4cu80.tar.bz2
torchvision-0.1.9-py27hdb88a65_1.tar.bz2
功能非常强大的Pytorhc 就依赖这几个包,是不是有种微言大义的感觉?
下载好了,使用conda 离线安装命令

conda install cuda80-1.0-0.tar.bz2
conda install libgcc-7.2.0-h69d50b8_2.tar.bz2
conda install pytorch-0.2.0-py27hc03bea1_4cu80.tar.bz2
conda install torchvision-0.1.9-py27hdb88a65_1.tar.bz2