1.Tensorflow的主要依赖包
(1) Protocol Buffer
Protocol Buffer是谷歌开发的处理结构化数据的工具,类似于XML和JSON这两种比较常用的结构化数据处理工具。但是Protocal Buffer格式的数据和XML或者JSON又有很大的区别:首先,使用Protocol Buffer时需要先定义数据格式schema(Protocol Buffer的具体编码方式),其序列化后得到的数据不是可读字符串,而是二进制流;其次,Protocol Buffer格式的数据不需要任何其他信息就能还原序列化之后的数据。Protcol Buffer序列化出来的数据要比XML格式的数据笑3到10倍,解析时间要快20到100倍。
Protocol Buffer是TensorFlow系统中使用到的重要工具,Tensorflow中的数据基本是通过Protocol Buffer来组织的。
(2)Bazel
Bazel是谷歌开源的自动化构建工具,谷歌内部大部分的应用都是通过它来编译的。相比传统的Makefile、Ant或者 Maven,Bazel在速度、可伸缩性、灵活性以及对不同程序语言和平台的支持上都要更加出色。TensorFlow本身以及谷歌给出的很多官方样例都是通过Bazel来编译的。
2.TensorFlow安装
TensorFlow只支持Nvidia计算能力(compute capability)大于3.0的GPU。如果要支持GPU,那么还需要安装Nvidia的Cuda Tookit(版本大于等于7.0)和cuDNN(版本大于等于v2)
(1) 使用Docker安装
Docker是新一代的虚拟化技术,他可以将TensorFlow以及TensorFlow的所有依赖关系统一封装到Docker镜像中,从而大大简化了安装过程。Docker支持大部分的操作系统,如:linux、Mac OS X、Windows。
(2)使用pip安装
pip是一个安装、管理Python软件包的工具,通过pip可以安装已经打包好的TensorFlow以及TensorFlow所需要的依赖关系。
在Ubuntu下的安装步骤如下:
注意:目前只有安装了CUDA toolkit7.5和CuDNN v4的64为Ubuntu下才可以通过pip安装支持GPU的TensorFlow,对于其他系统或者其他CUDA/CuDNN版本的用户需要从源码进行安装来支持GPU是使用。
第一步:安装pip
$ sudo apt-get install python-pip python-dev
第二步:找到合适的安装包URL,并安装
Python 2.7环境:
仅使用 CPU 的版本
$ pip install https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl
开启 GPU 支持的版本 (安装该版本的前提是已经安装了 CUDA sdk)
$ pip install https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl
问题:
You are using pip version 8.1.1, however version 9.0.1 is available.
You should consider upgrading via the 'pip install --upgrade pip' command.
解决:
$ pip install --upgrade pip
问题:
Failed to establish a new connection: [Errno 101] Network is unreachable',)': /tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl
解决:估计是网络的的问题
直接将链接: https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.5.0-cp27-none-linux_x86_64.whl.zip 放到迅雷里面下载,下载完之后放到相应的目录下,
$ mv tensorflow-0.5.0-cp27-none-linux_x86_64.whl.zip tensorflow-0.5.0-cp27-none-linux_x86_64.whl
$ sudo pip install tensorflow-0.5.0-cp27-none-linux_x86_64.whl
另外,这样也可以
$ pip install tensorflow
或者要获得gpu支持的话:
$ pip install tensorflow-gpu
3.第一个tensorflow程序:
$ python
Python 2.7.12 (default, Nov 20 2017, 18:23:56)
[GCC 5.4.0 20160609] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import tensorflow as tf
>>> hello = tf.constant('hello tensorflow')
>>> sess = tf.Session()
>>> print sess.run(hello)
hello tensorflow
>>>
>>> a = tf.constant(10)
>>> b = tf.constant(20)
>>> print sess.run(a+b)
30
直接:
sudo pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.3.0-cp27-none-linux_x86_64.whl