天天看点

python安装tensorflow2.0_安装 tensorflow2.0

谷歌发布了tensorflow2.0的alpha 版本,让我们来一睹为快.

作者的系统是ubuntu,为了简化安装,使用了官方的docker镜像

sudo docker pull tensorflow/tensorflow:2.0.0a0-gpu-py3

2.0.0a0-gpu-py3-jupyter是镜像的标签,它代表是tensorflow的2.0.0a0版本,支持GPU加速,python的版本是3.x.

可以根据自己的实际情况选择其他标签

latest-py3  最新的python3 CPU版本

2.0.0a0-gpu-py3-jupyter 版本为2.0.0a0,支持CPU python3.x 预装了jupyter

在镜像文件下载完之后,可以查看确认

sudo docker image ls

可以看到刚才我们pull的镜像文件。现在我们来运行

sudo docker run --runtime=nvidia -it --rm tensorflow/tensorflow:2.0.0a0-gpu-py3 \

python -c "import tensorflow as tf; print(tf.__version__)"

如果没什么意外,终端会显示

2.0.0-alpha0

到此,安装完毕,接下来我们可以试试这个新玩具。

为了方便,我们把系统文件目录~/Documents挂载到容器里/data

sudo docker run --runtime=nvidia --rm -it -v ~/Documents:/data tensorflow/tensorflow:2.0.0a0-gpu-py3 bash

这个命令运行后会打开一个交互式终端,由于完成了文件目录的挂载, 我们可以在系统中编辑文件,在容器中运行。

现在可以用你喜欢的编辑器输入以下代码

from __future__ import absolute_import, division, print_function

import tensorflow as tf

from tensorflow.keras.layers import Dense, Flatten, Conv2D

mnist = tf.keras.datasets.mnist

(x_train, y_train), (x_test, y_test) = mnist.load_data()

x_train, x_test = x_train/255.0, x_test/255.0

model = tf.keras.models.Sequential([

tf.keras.layers.Flatten(input_shape=(28, 28)),

tf.keras.layers.Dense(64, activation='relu'),

tf.keras.layers.Dropout(0.2),

tf.keras.layers.Dense(10, activation='softmax')

])

model.compile(optimizer='adam',

loss='sparse_categorical_crossentropy',

metrics=['accuracy'])

model.fit(x_train, y_train, epochs=5)

model.evaluate(x_test, y_test)

这段代码来自tensorflow官网,完成了手写图像的识别。

一些简单的注解

把28*28大小的图像数据变成一维度(压扁,  tf.keras.layers.Flatten)

使用的是全连接的网络tf.keras.layers.Dense, 最后用softmax完成分类。中间加入了 tf.keras.layers.Dropout(0.2)来减少过拟合。 大家可以改动其中的参数, 然后在容器的终端运行这个程序,看看结果有什么不同。

接下来,我们会用卷积神经网络来实现同样的功能。