在介绍完毕几个主流的深度学习框架之后,下面让我们把视角重新回到TensorFlow上,介绍一下TensorFlow的安装过程。由于TensorFlow并非全部由Python编写而成,它的很多底层代码仍然是由高性能的C++甚至CUDA编写而成,所以它的安装过程比较繁琐,可能导致部分初学者不能一次性安装成功。
TensorFlow为CPU和GPU两个版本。由于本书主要是面向初学者(而非生产环节的读者),在学习深度学习基本原理和TensorFlow的初级操作上,CPU版本已经够用。
此外,由于TensorFlow目前对Linux和Mac支持较好,而对Windows支持较弱(这是因为大部分的有关深度学习的项目都运行在类Unix环境之中),所以在下文,我们仅仅介绍Linux(以Ubuntu为载体)TensorFlowCPU版本的安装(在Mac环境下的安装,和Linux环境下安装基本类似,就不再赘述)。
为了避免在安装过程中的软件依赖牵制,我们推荐读者使用Anaconda来完成后续的所有软件的安装。
11.3.1 Anaconda的安装
“磨刀不误砍柴工”。下面我们首先介绍Anaconda的安装。首先,在浏览器上访问https://www.anaconda.com/download/#linux,鼠标点击下载Anaconda的Python 3.6版本(64 bit,525M)[1]。如果不指定下载路径,下载完毕后,它将保存在户家目录下的“Download”文件下。通常,我们用波浪号“~”代替具体的家目录,在终端,我们可以用“ls” 命令查看下载的文件。
yhilly@ubuntu:~/Downloads$ ls
Anaconda3-5.0.1-Linux-x86_64.sh
其中Anaconda3-5.0.1-Linux-x86_64.sh就是我们所需安装的文件。下载完毕后,为了防止下载过程中文件的“缺斤少两”,有个可选项操作就是检查文件的完整性:md5sum /path/filename。这里md5sum命令,表示的MD5校验和,“/path/filename”表示你下载Anaconda的实际存放路径。
从文件的后缀名“.sh”可以看出,这是一个shell文件。运行这类文件,通常需要bash(一个为GNU计划编写的Unix shell)来解释执行,如下所示。
bash ~/Downloads/Anaconda3-5.0.1-Linux-x86_64.sh
在安装过程中,需要输入回车键(Enter)来阅读并确认同意Anaconda的服务条款,过程中还要手动输入“yes”,明确表示同意该条款。之后,Anaconda才正式进入安装进程。
Anaconda的默认安装路径是“/home/<user>/anaconda3”。这里的<user>表示用户名,不同的Linux用户,安装路径稍有不同。
在尾声,安装程序会询问是否将安装路径“/home/<user>/.bashrc”是否添加到PATH环境变量中,选择输入“yes”。这样一来,在以后ipython等命令就可以直接使用Anaconda的环境。
打开~/.bashrc文件,就可以发现在文件最后两行,有如下所示的环境变量添加记录:
# added by Anaconda3 installer
export PATH="/home/<user>/anaconda3/bin:$PATH"
上述环境变量变量中,<user>可根据不同的用户名做相应调整。最后,当屏幕输出“Thankyou for installing Anaconda 3!”字样时,就表明Anaconda安装完毕。
Anaconda可视为Python的一个发行版。如果将Python比作一款纯净Linux的话,那么,Anancoda就可视为集成若干软件的Ubuntu或CentOS。利用它,可有效解决Python开发者的两大痛点:
首先,Anancoda提供Python环境下的若干软件包的管理,其功能类似于pip(或pip3)。在Python生态圈中,很多软件包之间相互依赖,稍有不慎,弄错安装次序,就可能导致安装失败,但Anaconda可有效解决这些冲突。
其次,Anancoda提供虚拟环境管理,其功能类似于Virtualenv(用来建立一个虚拟的Python环境,提供项目专属的Python环境[2]),从而解决多版本Python并存的问题。
而安装了Anancoda,可一并解决pip和virtualenv所能解决的问题。
-----《待续》---------
[1] 对于国内用户来说,清华大学的开源软件镜像站点下载速度更快。访问链接为:https://mirrors.tuna.tsinghua.edu.cn/help/anaconda/
[2] https://virtualenv.pypa.io/en/stable/
节选自 张玉宏《深度学习之美》章节,电子工业出版社,博文视点,2018年