ubuntu18系统anaconda安装tensorflow

当下深度学习框架特别多,但由于google强大的社区和技术,使得tensorflow从中脱颖而出。在官方文档中提到,TensorFlow的安装主要有以下五种形式:

  • Pip安装:这种安装形式类似于安装其他的Python安装包。会影响到机器上当前的Python环境,可能会与已安装的某些版本相冲突。Pip安装过程比较简单,按照官方文档中的步骤进行即可。
  • Virtualenv安装:将TensorFlow安装在指定路径下,与当前的Python环境相隔离。
  • Anaconda安装:以Anaconda为基础安装TensorFlow,和上面的形式相同,也与当前Python环境相隔离。在使用TensorFlow时不影响其他Python应用的使用。
  • Docker安装:在Docker中隔离安装TensorFlow
  • 从源码安装:编译源码生成TensorFlow的安装whell文件。

在这里,我主要推荐的是anaconda安装。原因有两点:

  • anaconda基本上包含了Python常用的科学计算包,比如numpy,scipy,matplotlib,scikit-learn等等。这就不用使你在单纯的python环境下一个一个的去用pip进行安装。
  • 想在anaconda上扩展其他应用时非常简单,只需要conda create一个的新的环境,就ok了,而且不会影响之前的使用。

下面我们将进入到正题。

一、nivida驱动、cuda以及cudnn的安装

若安装cpu版的tensorflow,这步跳过。但若时gpu版的tensorflow,则需要这步。

二、安装anaconda

三、安装tensorflow

1.首先conda一个新的环境,即输入以下命令:

conda create -n tensorflow pip python=2.7

因为Anaconda2-4.3.0-Linux-x86_64.sh默认的Python环境是python2.7,因此我们应该create一个python2.7的环境。创建成功后,输入conda info –envs可以查看我们create的环境,如下图所示:

注:上面这一句存疑,以后以可以试一下Anaconda2创建python3的环境,并安装适合版本的tensorflow。此处创建python2.7环境是因为想跑工程的教程用的是python2.7环境,为了保持一致。

ubuntu18系统anaconda安装tensorflow_第1张图片

 2.激活环境:

 source activate tensorflow

此时界面应该是这样的:

ubuntu18系统anaconda安装tensorflow_第2张图片

退出环境则需要输入:

source deactivate

 3.安装tensorflow

激活tensorflow环境后输入以下命令(需要漫长的等待):

pip install tensorflow-gpu==1.15.0

以下为扩展内容,不报错的话,证明已经安装成功,可以直接跳到四进行测试。

注意:选择版本tensorflow-gpu==1.15.0是因为之前所安装的cuda以及cudnn版本,须知CUDA与cudnn、tensorflow有严格的版本对应关系。

https://tensorflow.google.cn/install/source_windows#tested_build_configurations

ubuntu18系统anaconda安装tensorflow_第3张图片

 安装完成之后退出环境,即输入source deactivate。

若要下载最新版的tensorflow,则需输入: 

# cpu

pip install tensorflow

# gpu

pip install tensorflow-gpu

因为某些原因有时下载的很慢,但有时正常~~~为了保险起见,有两种解决办法:

  • 将tensorflow文件下载好,然后在进行安装;
  • 使用douban提供的pipy国内镜像服务,如果想手动指定源,可以在pip后面跟-i 来指定源
pip install tensorflow -i http://mirrors.aliyun.com/pypi/simple/

部分安装方式需要您提供 TensorFlow Python 软件包的网址。需要根据 Python 版本指定网址。

https://tensorflow.google.cn/install/pip#package-location
pip install --ignore-installed --upgrade https://storage.googleapis.com/tensorflow/linux/gpu/tensorflow-1.0.0rc0-cp27-none-linux_x86_64.whl -i http://pypi.douban.com/simple 


 

四、测试tensorflow

打开终端,激活环境,输入

import tensorflow as tf

不报错即可,如下图所示:

ubuntu18系统anaconda安装tensorflow_第4张图片

 以上已经可以证明安装成功,下面这一步是进一步测试,可以省略。

验证gpu是否可用:

import tensorflow as tf
tf.test.is_gpu_available()

返回true即可

官方文档中提供一段检查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
>>>

运行结果如下所示:

ubuntu18系统anaconda安装tensorflow_第5张图片

查看TensorFlow的版本:

>>> import tensorflow as tf
>>> tf.__version__
'0.11.0rc2'  

查看TensorFlow安装路径:

>>> tf.__path__
['/usr/local/ml/anaconda2/envs/tensorflow/lib/python2.7/site-packages/tensorflow']

测试,创建一空文件夹(不是工作空间),文件夹下创建python文件,比如test.py,在文件夹下打开终端,激活对应环境,执行python test.py:

# coding=utf-8

import tensorflow as tf
from numpy.random import RandomState

batch_size = 8

w1 = tf.Variable(tf.random_normal([2, 3], stddev=1, seed=1))
w2 = tf.Variable(tf.random_normal([3, 1], stddev=1, seed=1))

x = tf.placeholder(tf.float32, shape=(None, 2), name='x-input')
y_ = tf.placeholder(tf.float32, shape=(None, 1), name='y-input')

a = tf.matmul(x, w1)
y = tf.matmul(a, w2)

cross_entropy = -tf.reduce_mean(y_ * tf.log(tf.clip_by_value(y, 1e-10, 1.0)))
train_step = tf.train.AdamOptimizer(0.001).minimize(cross_entropy)

rdm = RandomState(1)
dataset_size = 128
X = rdm.rand(dataset_size, 2)
Y = [[int(x1 + x2 < 1)] for (x1, x2) in X]

with tf.Session() as sess:
    init_op = tf.global_variables_initializer()
    sess.run(init_op)
    print(sess.run(w1))
    print(sess.run(w2))

    STEPS = 5000
    for i in range(STEPS):
        start = (i * batch_size) % dataset_size
        end = min(start + batch_size, dataset_size)

        sess.run(train_step, feed_dict={x: X[start:end], y_: Y[start:end]})
        if i % 1000 == 0:
            total_cross_entropy = sess.run(cross_entropy, feed_dict={x: X, y_: Y})
            print("After %d training step(s),cross entropy on all data is %g" % (i, total_cross_entropy))
    print(sess.run(w1))
    print(sess.run(w2))

运行之:

tensorflow测试

可以看到启用了GPU。 

注:作者的结果有不同,Successfully opened dynamic library libcublas.so.10.0,不知道是否表示启用了GPU,还是仅仅启用了CPU。 

关于TensorFlow | TensorFlow中文官网

​​​​​​深度学习框架tensorflow配置(ubuntu14.04+cuda8.0+cudnn v5.1+anaconda2+tensorflow)_wyz6666的博客-CSDN博客

Ubuntu环境下Anaconda安装TensorFlow并配置Jupyter Notebook远程访问_Linux教程_Linux公社-Linux系统门户网站
ubuntu18.04 tensorflow-gpu1.13+cuda10.0+cudnn7.5安装配置_南派叁叔的博客-CSDN博客

你可能感兴趣的:(tensorflow,python,深度学习)