import tensorflow as tf
import numpy as np
(xtrain, ytrain), (xtest, ytest) = tf.keras.datasets.mnist.load_data()
xtrain, xtest = xtrain.reshape((-1,28,28,1))/255.0, xtest.reshape((-1,28,28,1))/255.0
model = tf.keras.Sequential()
model.add(tf.keras.layers.Conv2D(32,(3,3),input_shape=(28,28,1)))
model.add(tf.keras.layers.MaxPool2D((2,2)))
model.add(tf.keras.layers.Flatten())
model.add(tf.keras.layers.Dense(64,activation='relu'))
model.add(tf.keras.layers.Dense(10,activation='softmax'))
model.summary()
check_path = 'cnn/ckpt/cp-{epoch:04d}.ckpt'
save_mode_cp = tf.keras.callbacks.ModelCheckpoint(check_path, verbose=1, save_weights_only=True, period=2)
model.compile(optimizer='adam',
loss='sparse_categorical_crossentropy',
metrics=['accuracy'])
history = model.fit(xtrain,ytrain,epochs=7,callbacks=[save_mode_cp])
history.history
los, acc = model.evaluate(xtest,ytest)
print(los,acc)