Hello! 欢迎来到小浪云!


【TensorFlow实战——笔记】第3章:TensorFlow第一步_TensorFlow的编译及安装


【TensorFlow实战——笔记】第3章:TensorFlow第一步_TensorFlow的编译及安装

3.1 tensorflow的编译及安装

安装TensorFlow有两种主要情况:

  • 使用CPU,安装相对简单。
  • 使用GPU,需要先安装CUDA和cuDNN,过程较为复杂。

无论哪种情况,我们都建议使用Anaconda作为Python的环境管理工具,因为它可以有效避免许多兼容性问题。

TensorFlow目前在Linux和Mac系统上支持较为完善(对Windows的支持尚不全面)。在Mac系统上,主要使用CPU版本(因为Mac系统很少使用NVIDIA显卡,而TensorFlow对CUDA的支持较好,对AMD的OpenCL支持仍处于实验阶段),其安装方式与Linux的CPU版本基本一致。

安装Anaconda

Anaconda是一个用于科学计算的Python发行版,内置了数百个常用的Python库,包括用于机器学习和数据挖掘的库,如Scikit-learn、numpyscipypandas等,其中一些可能是TensorFlow的依赖库。

Anaconda的下载地址:

在Mac上,有两种安装方式:一种是图形界面的安装程序(.pkg),另一种是命令行安装程序(.sh),通常选择后者。下载后,执行以下命令:

bash Anaconda3-4.4.0-MacosX-x86_64.sh

TensorFlow CPU版本的安装

TensorFlow的CPU版本安装相对简单,分为两种情况:

  1. 安装预编译的release版本,推荐大多数用户使用这种方式。
  2. 使用分支源码进行编译安装。

第一种:安装release版本

https://github.com/tensorflow/tensorflow下载最新的release版本(.whl)到本地,然后执行:

pip install --gpgrade tensorflow-1.3.0rc0-py3-none-any.whl

第二种:使用源码编译安装

首先,确保系统已安装gcc(版本最好在4.8到5.4之间),并安装构建工具bazel。bazel是Google的编译工具,以其快速、可扩展、灵活和可靠著称,下载和安装方式如下:

安装步骤:

(1) 下载源码包并解压:

wget https://github.com/tensorflow/tensorflow/archive/v1.3.0-rc0.tar.gztar -zxvf v1.3.0-rc0.tar.gz

(2) 进入源码目录并配置:

cd tensorflow-1.3.0-rc0./configure

选择Python路径,确保使用Anaconda的Python路径;选择CPU编译优化选项,默认-march=native即可;是否使用jemalloc作为默认的malloc实现(仅Linux),默认即可;是否开启Google云平台支持,选择否;是否需要支持hadoop File System,如果需要读取hdfs数据,选择yes;是否开启XLA JIT编译功能,建议选择no;选择Python的Library路径,依然使用Anaconda的路径;不选择使用GPU,包括OpenCL和CUDA。

(3) 执行编译:

bazel build --copt=-march=native -c opt //tensorflow/tools/pip_package:build_pip_package

(4) 编译结束后,生成pip安装包:

bazel-bin/tensonflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg

(5) 最后安装:

pip install /tmp/tensorflow_pkg/tensorflow-xxx-xxx-xxx-xxx.whl

TensorFlow GPU版本的安装

TensorFlow的GPU版本安装相对复杂。首先需要NVIDIA显卡,然后安装显卡驱动、CUDA和cuDNN。

CUDA的安装

CUDA是NVIDIA推出的用于通用计算(General Purpose GPU)的SDK,安装包通常包含显卡驱动。

先下载NVIDIA CUDA:

(1) 暂停NVIDIA驱动的X server:

sudo init 3

(2) 将CUDA的安装包权限设置为可执行,并安装:

chmod u+x cuda_8.0.61_375.26_linux.runsudo ./cuda_8.0.61_375.26_linux.run

(3) 按q键跳过协议说明,接受协议后选择安装驱动程序。

(4) 选择安装路径,通常默认/usr/local/cuda-8.0。

(5) 不安装CUDA例子。

(6) 安装完毕。

cuDNN的安装

cuDNN是NVIDIA推出的深度学习中cnnrnn的高度优化的实现。

下载cuDNN:

进入安装目录并解压包:

cd /usr/localsudo tar -zxvf cudnn-8.0-linux-x64-v5.1.tgz

这样就完成了cuDNN的安装。

CUDA的环境变量设置

vim ~/.bashrcexport LD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64:/usr/local/cuda-8.0/extras/CUPTI/lib64:$LD_LIBRARY_PATHexport CUDA_HOME=/usr/local/cuda-8.0export PATH=/usr/local/cuda-8.0/bin:$PATHsource ~/.bashrc

安装TensorFlow

从https://github.com/tensorflow/tensorflow下载最新的GPU release版本(.whl)到本地,执行:

pip install --gpgrade tensorflow_gpu-1.3.0rc0-cp35-cp35m-linux_x86_64.whl

然后一步步选择安装完成。

相关阅读