Press "Enter" to skip to content

『TensorFlow2.0正式版』极简安装TF2.0正式版(CPU&GPU)教程

本站内容均来自兴趣收集,如不慎侵害的您的相关权益,请留言告知,我们将尽快删除.谢谢.

0 前言

 

TensorFlow 2.0,今天凌晨,正式放出了 2.0 版本。

 

不少网友表示,TensorFlow 2.0 比 PyTorch 更好用,已经准备全面转向这个新升级的深度学习框架了。

 

 

本篇文章就带领大家用最简单地方式安装 TF2.0 正式版本(CPU 与 GPU),由我来踩坑,方便大家体验正式版本的 TF2.0。

 

废话不多说现在正式开始教程。

 

1 环境准备

 

我目前是在 Windows10 上面,使用 conda 管理的 python 环境,通过 conda 安装 cuda 与 cudnn(GPU 支持),通过 pip 安装的 tensorflow2.0。经过尝试只是最简单地安装方式,无需配置复杂环境。

 

(关于 ubuntu 与 mac 版本的安装可以仿照此方法,因为 conda 支持多平台,应该没什幺问题,如果大家问题多的话,可以评论,我后面会会更新 ubuntu 安装教程)

 

1.0 conda 环境准备

 

conda 是很好用 python 管理工具,可以方便建立管理多个 python 环境。后面安装的步骤里我也会介绍一些常用的 conda 指令。

 

conda 我推荐使用安装 miniconda,大家可以理解为精简版的 anaconda,只保留了一些必备的组件,所以安装会比快上很多,同时也能满足我们管理 python 环境的需求。(anaconda 一般在固态硬盘安装需要占用几个 G 内存,花费 1-2 个小时,miniconda 一般几百 M,10 分钟就可以安装完成了)

 

miniconda 推荐使用清华源下载: mirrors.tuna.tsinghua.edu.cn/anaconda/mi…

 

选择适合自己的版本就可以,

windows 推荐地址: mirrors.tuna.tsinghua.edu.cn/anaconda/mi…
ubuntu 推荐地址: mirrors.tuna.tsinghua.edu.cn/anaconda/mi…
Mac os 推荐地址: mirrors.tuna.tsinghua.edu.cn/anaconda/mi…

下以 windows 版本来安装 miniconda 作为演示,从上述下载合适版本,下载好后以管理员权限打开点击安装。

 

 

注意这两个都要勾选,一个是让我们可以直接在 cmd 使用 conda 指令,第二个是把 miniconda 自带的 python3.7 作为系统 python。

 

安装好后就可以在 cmd 中使用 conda 指令了,cmd 打开方式,windows 键 + R 键,弹出输入框,输入 cmd 就进入了。也可以直接在 windows 搜索 cmd 点击运行。

 

下面介绍些 cmd conda 指令:

 

 

    1. 查看 conda 环境:conda env list

 

    1. 新建 conda 环境 (env_name 就是创建的环境名,可以自定义):conda create -n env_name

 

    1. 激活 conda 环境(ubuntu 与 Macos 将 conda 替换为 source):conda activate env_name

 

    1. 退出 conda 环境:conda deactivate

 

    1. 安装和卸载 python 包:conda install numpy # conda uninstall numpy

 

    1. 查看已安装 python 列表:conda list -n env_name

 

 

知道这些指令就可以开始使用 conda 新建一个环境安装 TF2.0 了。

 

1.1 TF2.0 CPU 版本安装

 

TF CPU 安装比较简单,因为不需要配置 GPU,所以 windows ubuntu macOS 安装方式都类似,缺点就是运行速度慢,但是用于日常学习使用还是可以的。

 

下面以 windows 版本做演示:一下均在命令行操作

 

1.1.0 新建 TF2.0 CPU 环境(使用 conda 新建环境指令 python==3.6 表示在新建环境时同时 python3.6)

 

conda create -n TF_2C python=3.6

 

当弹出 :Proceed ([y]/n)? 输入 y 回车

 

完成后就可以进入此环境

 

1.1.1 进入 TF_2C 环境

 

conda activate TF_2C

 

进入后我们就可以发现:(TF_2C) 在之前路径前面,表示进入了这个环境。使用 conda deactivate 可以退出。

 

 

我们再次进入 conda activate TF_2C ,便于执行下述命令

 

1.1.2 安装 TF2.0 CPU 版本(后面的 -i 表示从国内清华源下载,速度比默认源快很多)

 

pip install tensorflow==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

 

如果网不好的,多执行几次。然后过一会就安装好啦。下面我们做下简单测试。

 

1.1.3 测试 TF2.0 CPU 版本 (把下面代码保存到 demo.py 使用 TF_2C python 运行)

 

gpu_ok = tf.test.is_gpu_available()
print("tf version:",version,"\nuse GPU",gpu_ok)

 

如果没有问题的话输出结果如下:可以看到 tf 版本为 2.0.0 因为是 cpu 版本,所以 gpu 为 False

 

1.2 TF2.0 GPU 版本安装

 

GPU 版本和 CPU 类似,但是会多一步对于 GPU 支持的安装。下面来一步步实现。安装之前确认你的电脑拥有 Nvidia 的 GPU

 

1.2.0 新建 TF2.0 GPU 环境(使用 conda 新建环境指令 python==3.6 表示在新建环境时同时 python3.6)

 

conda create -n TF_2G python=3.6

 

当弹出 :Proceed ([y]/n)? 输入 y 回车

 

完成后就可以进入此环境

 

1.1.1 进入 TF_2G 环境

 

conda activate TF_2G

 

1.1.2 安装 GPU 版本支持,拥有 Nvidia 的 GPU 的 windows 一般都有默认驱动的,只需要安装 cudatoolkit 与 cudnn 包就可以了,要注意一点需要安装 cudatoolkit 10.0 版本,注意一点,如果系统的 cudatoolkit 小于 10.0 需要更新一下至 10.0

 

conda install cudatoolkit=10.0 cudnn

 

1.1.3 安装 TF2.0 GPU 版本(后面的 -i 表示从国内清华源下载,速度比默认源快很多)

 

pip install tensorflow-gpu==2.0.0 -i https://pypi.tuna.tsinghua.edu.cn/simple

 

如果网不好的,多执行几次。然后过一会就安装好啦。下面我们做下简单测试。

 

1.1.3 测试 TF2.0 GPU 版本 (把下面代码保存到 demo.py 使用 TF_2G python 运行)

 

gpu_ok = tf.test.is_gpu_available()
print("tf version:",version,"\nuse GPU",gpu_ok)

 

如果没有问题的话输出结果如下:可以看到 tf 版本为 2.0.0 因为是 gpu 版本,所以 gpu 为 True,这表示 GPU 版本安装完成了。

 

1.2 最后我们测试一个使用 TF2.0 版本方式写的线性拟合代码

 

把下述代码保存为 main.py

 

X = tf.constant([[1.0, 2.0, 3.0], [4.0, 5.0, 6.0]])
y = tf.constant([[10.0], [20.0]])
class Linear(tf.keras.Model):
        self.dense = tf.keras.layers.Dense(
            kernel_initializer=tf.zeros_initializer(),
            bias_initializer=tf.zeros_initializer()
        output = self.dense(input)
optimizer = tf.keras.optimizers.SGD(learning_rate=0.01)
with tf.GradientTape() as tape:
        loss = tf.reduce_mean(tf.square(y_pred - y))
    grads = tape.gradient(loss, model.variables)    
    optimizer.apply_gradients(grads_and_vars=zip(grads, model.variables))

 

输出结果如下:

 

[<tf.Variable 'linear/dense/kernel:0' shape=(3, 1) dtype=float32, numpy=
       [1.9742855 ]], dtype=float32)>, <tf.Variable 'linear/dense/bias:0' shape=(1,) dtype=float32, numpy=array([0.78322077], dtype=float32)>]

 

-1. 后记

 

回复两个评论区问的较为多的问题:

 

新建 tf 环境了之后在安装,是必须的嘛?我几次都是直接在 root 里安装了

 

回复: 不新建环境直接安装时使用的是默认的环境安装。不建议这幺操作,都在默认环境安装新的模块后面可能会有冲突。建议不同任务使用不同环境。。

 

使用 conda install 就不需要事先配置 cudatoolkit 和 cudnn 了。(cudatoolkit 和 cudnn 版本问题)

 

回复: 目前 tf2.0 还不支持 conda install,只能使用 pip install。windows 可以直接使用 conda install cudatoolkit cudnn。要注意一点,tf1.14 以上要使用 cudatoolkit >= 10.0。由于 windows10 默认 cudatoolkit 是 9 版本的,需要手动安装 10 版本。其实他们关系是向下包容,就是如果你装了 10 版本,那幺 9,8,7 版本都可以用 conda 安装

 

Be First to Comment

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注