TensorFlow 在Centos6.0下安装

什么是TensorFlow

首先解释下什么是tensorflow,还是直接看下百度百科里面的说明:

TensorFlow是谷歌基于DistBelief进行研发的第二代人工智能学习系统,其命名来源于本身的运行原理。Tensor(张量)意味着N维数组,Flow(流)意味着基于数据流图的计算,TensorFlow为张量从流图的一端流动到另一端计算过程。TensorFlow是将复杂的数据结构传输至人工智能神经网中进行分析和处理过程的系统。
TensorFlow可被用于语音识别图像识别等多项机器深度学习领域,对2011年开发的深度学习基础架构DistBelief进行了各方面的改进,它可在小到一部智能手机、大到数千台数据中心服务器的各种设备上运行。TensorFlow将完全开源,任何人都可以用。

TensorFlow在Centos下安装

python安装

现在linux下面一般都安装了python,不过都是2.x版本的,虽然也可以用,最好还是安装3.x的,下面说明3.x的安装方法。

先安装python3依赖

yum install zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gdbm-devel db4-devel libpcap-devel xz-devel

安装python3

采用源码编译安装
1 wget https://www.python.org/ftp/python/3.5.3/Python-3.5.3.tgz
2 tar xvf Python-3.5.0.tgz
3 cd Python-3.5.0
4 ./configure --prefix=/home/aus/python3 --enable-shared
5 make && make install
6 ln -s /usr/local/bin/python3.5 /usr/bin/python
7 ln –s /usr/local/bin/python3.5 python

安装TensorFlow

pip install --upgrade https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-1.0.1-cp35-cp35m-linux_x86_64.whl

注意: cp35是适应python3.5版本,如果是python2.x记得更换下: tensorflow-0.6.0-cp27-none-linux_x86_64.whl (python2.7)

测试TensorFlow

本来以为很简单的就安装好了,谁知道import时候报错:
1)GLIBCXX版本不对报错信息

ImportError: /usr/lib64/libstdc++.so.6: version `GLIBCXX_3.4.19' not found (required by /usr/local/lib/python3.5/site-packages/tensorflow/python/_pywrap_tensorflow.so)

原因:
libstdc++.so.6的版本有点低不包含tensorflow运行需要的GLIBCXX_3.4.19库;
可以通过stings /usr/lib64/libstdc++.so.6|grep GLIBCXX查看现在支持的版本。

上网找了下,最后只能选择源码编译安装,主要参考:
这篇文章以及[另一篇文章] (http://blog.csdn.net/kuaile123/article/details/20848123)

重新连接:
ln -s /usr/local/lib64/libstdc++.so.6.0.18 /usr/lib64/libstdc++.so.6

2)GLIBC版本不对错误

Im
portError: /lib64/libc.so.6: version `GLIBC_2.16' not found (required by /usr/local/lib/python3.5/site-packages/tensorflow/python/_pywrap_tensorflow.so)

下载一个 glibc2.19版本的源码,编译安装。
../configure --prefix=/usr --disable-profile --enable-add-ons --with-headers=/usr/include --with-binutils=/usr/bin
参考文章

测试代码1:

import tensorflow as tf
hello = tf.constant('Hello,TensorFlow!')
sess = tf.Session()
print(sess.run(hello))
a = tf.constant(10)
b = tf.constant(32)
print(sess.run(a + b))

测试代码2:

cd /usr/local/lib/python3.5/site-packages/tensorflow/examples/tutorials/
import mnist.input_data as inputdata
mnist = input_data.read_data_sets("MNIST_data/", one_hot=True)
import tensorflow as tf
sess = tf.InteractiveSession()
x = tf.placeholder("float", [None, 784])
y_= tf.placeholder("float",shape=[None,10])
W = tf.Variable(tf.zeros([784,10]))
b = tf.Variable(tf.zeros([10]))
y = tf.nn.softmax(tf.matmul(x,W)+b)
cross_entropy = -tf.reduce_sum(y_*tf.log(y))
train_step = tf.train.GradientDescentOptimizer(0.01).minimize(cross_entropy)
for i in range(1000):
   batch = mnist.train.next_batch(50)
   train_step.run(feed_dict={x: batch[0], y_: batch[1]})
correct_prediction = tf.equal(tf.argmax(y,1), tf.argmax(y_,1))
accuracy = tf.reduce_mean(tf.cast(correct_prediction, "float"))
print (accuracy.eval(feed_dict={x: mnist.test.images, y_: mnist.test.labels}))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 网址 下载与安装 你可以使用我们提供的 Pip, Docker, Virtualenv, Anaconda 或 源...
    九七学姐阅读 4,800评论 3 11
  • Anaconda(Python) + TensorFlow 安装 (Ubuntu 16.04 & Python3 ...
    mozre阅读 1,224评论 0 2
  • 安装tensorflow的过程中遇到了很多大大小小的问题,下面总结一些自己的安装流程,也算是对自己在这方面的一个总...
    YoungManSter阅读 4,275评论 0 3
  • 一、环境准备 升级gcc版本到4.8.51)获取gcc4.8.5的源码包(不同的版本,基本是只需要换掉后面的版本号...
    下里巴人也阅读 435评论 0 1
  • 每个强势的女人背后,都有一个共同的特征,极度缺爱! 每个无法立起来的男人背后,都有一个共同的现象,没有遇到那个能彻...
    857da2143248阅读 155评论 0 0