[arbre.dl--001] tensorflow的安装方式综述(ubuntu+anaconda)

TensorFlow(以下简称tf)有两个巨大的问题:第一,代码复杂,冗长;第二,各版本之间api变化剧烈。这两个问题导致各种大坑。解决这两个问题,优先使用docker部署,其次,必须写requirements指定版本。

tf、python、cuda、cudnn必须严格匹配,否则行为会不可预计。对应关系可以参考:TensorFlow版本配套关系表

由匹配表可知,所有版本都支持python2.7和python3.6,考虑到兼容性问题,优先统一使用anaconda 进行安装:1)cpu版tf,anaconda可以创建多个虚拟环境,每个虚拟环境均使用python3.6,安装不同的tf版本;2)gpu版tf,anaconda创建多个虚拟环境,每个虚拟环境均使用python3.6,对照版本配套关系表,根据tf的版本选择对应的cuda和cudnn的版本。

1.安装cpu版的tf

1.1 下载anacodna3

wget https://repo.anaconda.com/archive/Anaconda3-2020.02-Linux-x86_64.sh

1.2 安装anaconda3,参考文档 https://docs.anaconda.com/anaconda/install/linux/

apt-get install libgl1-mesa-glx libegl1-mesa libxrandr2 libxrandr2 libxss1libxcursor1 libxcomposite1 libasound2 libxi6 libxtst6

bash Anaconda3-2019.03-Linux-x86_64.sh

选择安装目录/home/xxxx/usr/anaconda/anaconda3

由conda进行初始化

安装完毕后,开一个新的terminal,提示符号前有(base),运行“conda -h”,有帮助信息出现,表明安装成功。

2.安装tensorflow

2.1 先创建一个新的环境,该环境python版本3.6,准备安装tf1.8.0

conda create -n tf1.8.0 python=3.6

2.2 安装cpu版的tf

conda acitvate tf1.8.0

pip install tensorflow=1.8.0

2.3 列出所有虚拟环境

conda env list

3.一个极简单的例子a.py,出自tf官网,稍微改动循环和print语句

import tensorflow as tf
import numpy as np

# 使用 NumPy 生成假数据(phony data), 总共 100 个点.
x_data = np.float32(np.random.rand(2, 100)) # 随机输入
y_data = np.dot([0.100, 0.200], x_data) + 0.300

# 构造一个线性模型
# 
b = tf.Variable(tf.zeros([1]))
W = tf.Variable(tf.random_uniform([1, 2], -1.0, 1.0))
y = tf.matmul(W, x_data) + b

# 最小化方差
loss = tf.reduce_mean(tf.square(y - y_data))
optimizer = tf.train.GradientDescentOptimizer(0.5)
train = optimizer.minimize(loss)

# 初始化变量
init = tf.initialize_all_variables()

# 启动图 (graph)
sess = tf.Session()
sess.run(init)

# 拟合平面
for step in range(0, 201):
    sess.run(train)
    if step % 20 == 0:
        print( step, sess.run(W), sess.run(b))


运行 python a.py

输出:

0 [[ 0.73350215 -0.35192442]] [0.51274]
20 [[0.21187824 0.11603166]] [0.28335908]
40 [[0.12922443 0.19301133]] [0.2881235]
60 [[0.10951589 0.20137715]] [0.29429254]
80 [[0.10355849 0.20123121]] [0.29750484]
100 [[0.10142089 0.2006139 ]] [0.2989421]
120 [[0.10058274 0.20027132]] [0.2995563]
140 [[0.10024147 0.20011549]] [0.29981458]
160 [[0.10010044 0.20004849]] [0.29992265]
180 [[0.10004186 0.2000203 ]] [0.29996774]
200 [[0.10001743 0.20000844]] [0.29998657]
 

4.要解决的问题

anaconda3的安装,涉及到一堆问题,以及各种配置。把一台机器上的anaconda目录和.barch的conda配置部分,复制到另一台机器上,是不是可以直接使用?有待验证。按理来说是可以的。因为安装过程只涉及这两个东西。如果能做到这样,方便程度应该会好很多。可以进行批量自动化的安装。

 

你可能感兴趣的:(arbre.dl)