一、建立深度学习工作站的步骤
(1)安装python科学套件(Numpy和SciPy),并确认安装了基础线性代数子程序(BLAS)库。
(2)安装HDF5(用于保存大型的神经网络文件) + Graphviz(用于将神经网络架构可视化)。
(3)安装CUDA驱动程序和cuDNN,确保能够使用GPU运行代码。
(4)安装一个Keras后端:Tensorflow、CNTK或Theano。
(5)安装Keras。
二、开始安装
1、确保在安装之前以已经安装了Ubuntu并配备了NVIDIA GPU。
安装ubuntu系统参考视频:https://www.bilibili.com/video/BV1554y1n7zv/?vd_source=92745212a3bb6fe90ce7a04c5662bc9d
安装ubuntu默认使用的Nouveau驱动,我们需要更换NVIDIA驱动。
更换驱动前先禁用Nouveau驱动,不禁用后面会与NVIDIA显卡驱动安装发生冲突报错。
终端输入:sudo gedit /etc/modprobe.d/blacklist.conf
会打开一个文档,在文档最后添加
blacklist nouveau
options nouveau modeset=0
保存,并退出。
终端输入以下命令更新:sudo update-initramfs -u
,然后重新启动电脑。
重启之后,在终端输入:lsmod | grep nouveau
查看是否成功禁用Nouveau,输入命令后如果没有输出则代表禁用成功,否则重新把第一步操作一遍。
打开软件与更新–>附加驱动–>选一个NVIDIA驱动,不要选版本太低的(版本和你能安装CUDA版本挂钩,参考此链接)。
2、更换镜像源
首先查看ubuntu版本内容lsb_release -a
,可以看到一个Codename的值,ubuntu18.04的值是bionic,不同版本对应的Codename值不同。
接着输入命令sudo gedit /etc/apt/sources.list
会打开一个文件,把文件内容清空,将下面内容复制进去,并保存。
#阿里源 ↓把下面所有的bionic换成你的ubuntu版本的Codename值
deb http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ bionic-backports main restricted universe multiverse
3、确认管理包是最新的(执行下面三条命令):
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install python3-pip python3-dev
在Ubuntu上安装python包时默认使用python2,若想使用python3需要我们自己指定。
4、安装BLAS库。
执行命令:sudo apt-get install build-essential cmake git unzip pkg-config libopenblas-dev liblapack-dev
5、安装Python科学套件:Numpy、SciPy和Matplotlib。
执行命令:sudo apt-get install python-numpy python-scipy python-matplotlib python-yaml
6、安装HDF5(它可以让你将Keras模型快速高效地保存到磁盘)。
执行命令:sudo apt-get install libhdf5-serial-dev python-h5py
7、安装Graphviz和pydot-ng(用于将Keras模型可视化,这一步不是必须的,可以在需要时在安装)。
执行下面两条命令:
sudo apt-get install graphviz
sudo pip3 install pydot-ng
三、设置GPU支持。
我的配置: ubuntu18.04、CUDA10.0、cuDNN7.6.5。
1、官网下载CUDA:
官方链接:https://developer.nvidia.com/cuda-toolkit-archive
2、下载对应CUDA版本的cuDNN:
官方链接:https://developer.nvidia.com/rdp/cudnn-archive
上面两项下载好之后,在下载CUDA的目录里鼠标右键打开终端,输入下面命令安装CUDA:
sudo sh cuda_10.0.130_410.48_linux.run
这里会需要等待一段时间,然后终端左下角会出现一个0%的进度,需要一直按回车键翻阅一些说明,直到出现下面描述:
按照上图输入命令,完成后关闭终端。
接下来在根目录重新打开终端输入命令:sudo gedit .bashrc
添加CUDA需要的环境变量,在打开的.bashrc文件的最后面将下面三行代码复制进去,然后保存。
export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
验证CUDA是否安装成功,在终端逐次输入以下三条命令:
cd /usr/local/cuda/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
这里看到CUDA版本和Result = PASS即安装成功。
3、接下来安装cuDNN。
把上面下载好的cuDNN的压缩包进行解压,在下载cuDNN的目录里打开终端,并输入下面命令:
tar -xzvf cudnn-10.0-linux-x64-v7.6.5.32.tgz
把解压后的文件复制到cuda的安装目录,继续执行下面命令:
sudo cp -d cuda/include/cudnn*.h /usr/local/cuda/include
sudo cp -d cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn*.h /usr/local/cuda/lib64/libcudnn*
最后查看一下CUDA目录下的cuDNN版本:
cudnn版本在8.0及以上的在cudnn_version.h中:
cat /usr/local/cuda/include/cudnn_version.h | grep CUDNN_MAJOR -A 2
cudnn版本低于8.0的在cudnn.h中:
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
到此CUDA安装成功。
四、安装Tensorflow
1、更新pip3,否则有可能安不上tensorflow。
重新打开终端输入命令:pip3 install --upgrade pip
2、安装tensorflow-gpu
pip3 install tensorflow-gpu==1.15.0 -i https://pypi.tuna.tsinghua.edu.cn/simple
3、测试
在终端输入:python3
进入python交互式解释器,接着输入以下代码:
import tensorflow as tf
print(tf.__version__)
print(tf.test.is_gpu_available())
看到没有报错并输出True即为成功。
五、安装Keras
重新打开终端输入命令:
pip3 install keras==2.3.1 -i https://pypi.tuna.tsinghua.edu.cn/simple
测试:
终端里输入python3
进入python交互式解释器,接着输入以下代码:
import keras
keras.__version__
from keras import backend as k
print(k.tensorflow_backend._get_available_gpus())
没有报错并看到successfully即为成功。
六、安装jupyter
重新打开终端输入命令:python3 -m pip install jupyter
给jupyter配置环境:(这里配置环境是为了以后启动jupyter更简便)
先输入命令:sudo gedit ~/.bashrc
打开bashrc文件,在文件末尾添加下面代码:
export PATH=~/.local/bin:${PATH}
保存并退出。
然后输入命令source ~/.bashrc
更新bashrc。
在终端输入jupyter notebook
即可打开jupyter。