写在前面
此篇博客转载自tensorflow官方教程中文翻译版:
https://www.tensorflow.org/tutorials/quickstart/beginner
笔者有删改,同时笔者会以注释的形式将可能由环境问题带来的BUG写出来
Note: TensorFlow 社区翻译了这些文档。因为社区翻译是尽力而为, 所以无法保证它们是最准确的,并且反映了最新的官方英文文档。如果您有改进此翻译的建议, 请提交 pull request 到 tensorflow/docs GitHub 仓库。 要志愿地撰写或者审核译文,请加入 [email protected] Google Group。 |
此博客教程可在tensorflow官方github 上下载:
https://github.com/tensorflow/docs-l10n/blob/master/site/zh-cn/tutorials/quickstart/beginner.ipynb
下载并安装 TensorFlow 2.0 稳定版包。将 TensorFlow 载入你的程序:
# 安装 TensorFlow后
import tensorflow as tf
查看 tensorflow 版本:
>>> tf.__version__
'2.1.0'
载入并准备好 MNIST 数据集。将样本从整数转换为浮点数:
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
将模型的各层堆叠起来,以搭建tf.keras.Sequential
模型。为训练选择优化器和损失函数:
model = tf.keras.models.Sequential([
tf.keras.layers.Flatten(input_shape=(28, 28)),
tf.keras.layers.Dense(128, 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, verbose=2)
运行模型:
Train on 60000 samples
Epoch 1/5
60000/60000 [==============================] - 4s 72us/sample - loss: 0.2919 - accuracy: 0.9156
Epoch 2/5
60000/60000 [==============================] - 4s 58us/sample - loss: 0.1439 - accuracy: 0.9568
Epoch 3/5
60000/60000 [==============================] - 4s 58us/sample - loss: 0.1080 - accuracy: 0.9671
Epoch 4/5
60000/60000 [==============================] - 4s 59us/sample - loss: 0.0875 - accuracy: 0.9731
Epoch 5/5
60000/60000 [==============================] - 3s 58us/sample - loss: 0.0744 - accuracy: 0.9766
10000/1 - 1s - loss: 0.0383 - accuracy: 0.9765
[0.07581128399563022, 0.9765]
现在,这个照片分类器的准确度已经达到 98%。想要了解更多,请继续阅读。
以上便是tensorflow官方教程《初学者的 TensorFlow 2.0 教程》全部内容:
https://www.tensorflow.org/tutorials/quickstart/beginner