Example of a deep convolutional network with TensorFlow and Keras
In the first example, we want to consider the complete MNIST handwritten digit dataset again, but instead of using an MLP, we are going to employ a small deep convolutional network. The first step consists of loading and normalizing the dataset:
import tensorflow as tf
import numpy as np
(X_train, Y_train), (X_test, Y_test) = \
tf.keras.datasets.mnist.load_data()
width = height = X_train.shape[1]
X_train = X_train.reshape(
(X_train.shape[0], width, height, 1)).\
astype(np.float32) / 255.0
X_test = X_test.reshape(
(X_test.shape[0], width, height, 1)).\
astype(np.float32) / 255.0
Y_train = tf.keras.utils.to_categorical(
Y_train, num_classes=10)
Y_test = tf.keras.utils.to_categorical(
Y_test, num_classes=10)
We can now define the model architecture. The data points are quite small (28...