Tensorflow2.0的深度学习第一个例子
Tensorflow深度学习入门的例子是“MNIST数据“学习。
主要包括四个部分:
1)数据加载和预处理
2)建立深度学习模型
3)训练
4)评估
import tensorflow as tf
# data load and preprocess
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
#build model
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.3),
tf.keras.layers.Dense(10, activation='softmax')
])
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy']
)
# train
model.fit(x_train, y_train, epochs=5)
# evaluate
model.evaluate(x_test, y_test)
Tensorflow和python、keras的关系
Tensorflow是张量计算和深度学习框架,提供了python、C++和Java三种语言的API;
Keras是基于Tensorflow学习框架的深度学习模型封装,上面的例子就是keras封装,所以代码非常简洁。
1)mnist是keras封装并做了大量处理的数据集
2)模型的建立、训练和评估,keras也做了封装
Tensorflow2.0
当前网上大量tensorflow的学习文章都是tensorflow1.x,2.x和1.x之间差别很大,在学习过程中很容掉坑,这一点特别要注意。