安装tensorflow依赖项:
1,jdk-1.8以上版本
$ java -version
java version "1.7.0_45"
Java(TM) SE Runtime Environment (build1.7.0_45-b18)
Java HotSpot(TM) 64-Bit Server VM (build24.45-b08, mixed mode)
如何低于1.8的JDK就需要重新安装一个1.8版本的jdk,否则会报如下错误,
ERROR: JDK version (1.7) is lower than 1.8,please set $JAVA_HOME.
解决方法:
JDK官方下载链接:
http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
$ rpm -ivh jdk-8u121-linux-x64.rpm
$ rpm -qa | grep jdk
jdk1.8.0_121-1.8.0_121-fcs.x86_64
java-1.6.0-openjdk-1.6.0.35-1.13.7.1.el6_6.x86_64
java-1.7.0-openjdk-devel-1.7.0.121-2.6.8.1.el6_8.x86_64
java-1.7.0-openjdk-1.7.0.121-2.6.8.1.el6_8.x86_64
$ rpm -ql jdk1.8.0_121-1.8.0_121-fcs.x86_64
/usr/java/jdk1.8.0_121/release
/usr/java/jdk1.8.0_121/src.zip
添加环境变量,
$ export JAVA_HOME=/usr/java/jdk1.8.0_121/
测试添加成功,
$ echo $JAVA_HOME
/usr/java/jdk1.8.0_121/
证明环境变量配置成功。
2,Python包numpy,dev
$ yum install python-numpy swig python-dev
3,cuda8.0,cudnnv5
cuda8.0下载地址,https://developer.nvidia.com/cuda-downloads
cudnn v5.0下载地址,https://developer.nvidia.com/rdp/cudnn-download
$ sh cuda_8.0.61_375.26_linux.run.26_linux-run
$ vim /etc/profile
加入下面2行环境路径
exportLD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64/:/usr/local/cuda/lib64:$LD_LIBRARY_PATH
exportPATH=/usr/local/cuda-8.0/bin:/usr/local/cuda/bin:$PATH
$ source /etc/profile
$ tar xvf cudnn-8.0-linux-x64-v5.0-ga.tgz
$ cd cuda
$ cp lib64/lib* /usr/local/cuda-8.0/lib64/
$ cp include/*.h /usr/local/cuda-8.0/include
安装bazel:
$ git clone https://github.com/
bazelbuild/bazel.git
$ cd bazel
$ git checkout tags/0.1.0
$ ./compile.sh
安装tensorflow:
$ ./configure
$ bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer
$ bazel-bin/tensorflow/cc/tutorials_example_trainer --use_gpu
测试tensorflow:
$ python
>>> 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(32)
>>> print sess.run(a+b)
42
ps:
1.程序员们在接触一门新语言的时候,通常做的第一件事就是编写一个Hello World程序,这一惯例源自最初一批大神们对计算机程序的希冀,希望它们就像一个新生儿一样,能友善的对这个世界宣告它的到来。
2.数字42的含义非常深刻。据著名一本道科幻小说“银河系漫游指南”所说,42是一个关于“生命、宇宙以及一切”的问题的答案(哈?你问我问题是什么?)。谷歌的创始人很可能也是这本小说的狂热粉丝,因为谷歌把这个彩蛋也嵌入了它们的搜索引擎之中,而且谷歌的总部外面就有一个“42”的模型。
3.Tensor一词是张量的意思,张量是一种表示物理量的方式,这个方式就是用基向量与分量组合表示物理量(Combinationof basis vector and component)。由于基向量可以有丰富的组合,张量可以表示非常丰富的物理量。此外,张量所描述的物理量是不随观察者或者说参考系而变化的,当参考系变化时(其实就是基向量变化),其分量也会相应变化,最后结果就是基向量与分量的组合(也就是张量)保持不变。考虑到张量有如此强大的表示能力,又不随观察者不同而变化,能够有效的表示宇宙间的万物,LillianR. Lieber给了张量一个形象的称呼the fact of the universe.
至此有没有感觉你已经深深的爱上了tensorflow!
reference:
http://www.tensorfly.cn/tfdoc/get_started/os_setup.html
https://www.youtube.com/watch?v=f5liqUk0ZTw