Skip to content
Snippets Groups Projects
Commit 7f8fe5c5 authored by Christof Kaufmann's avatar Christof Kaufmann
Browse files

Improve style in Keras3 test script

parent 58f02fed
No related branches found
No related tags found
No related merge requests found
import tensorflow as tf import tensorflow as tf
import keras import keras
from keras.models import Sequential from keras.models import Sequential
from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense from keras.layers import Conv2D, MaxPooling2D, Flatten, Dense, Input
from keras.utils import to_categorical from keras.utils import to_categorical
from keras.datasets import mnist from keras.datasets import mnist
...@@ -9,35 +9,38 @@ print('=========================') ...@@ -9,35 +9,38 @@ print('=========================')
print('TensorFlow Version', tf.__version__) print('TensorFlow Version', tf.__version__)
print('Keras Version ', keras.__version__) print('Keras Version ', keras.__version__)
print('=========================') print('=========================')
print(tf.config.list_physical_devices())
print('=========================')
(XTrain, yTrain), (XTest, yTest) = mnist.load_data() (X_train, y_train), (X_test, y_test) = mnist.load_data()
XTrain = XTrain.reshape(60000, 28, 28, 1) X_train = X_train.reshape(60000, 28, 28, 1)
XTest = XTest.reshape(10000, 28, 28, 1) X_test = X_test.reshape(10000, 28, 28, 1)
XTrain = XTrain / 255 X_train = X_train / 255
XTest = XTest / 255 X_test = X_test / 255
YTrain = to_categorical(yTrain, 10) y_train = to_categorical(y_train, 10)
YTest = to_categorical(yTest, 10) y_test = to_categorical(y_test, 10)
myANN = Sequential() model = Sequential()
myANN.add(Conv2D(9, kernel_size=(3, 3), activation='relu', kernel_initializer='he_uniform', input_shape=(28, 28, 1))) myANN.add(Input((28, 28, 1)))
myANN.add(MaxPooling2D(2)) model.add(Conv2D(9, kernel_size=(3, 3), activation='relu', kernel_initializer='he_uniform'))
myANN.add(Flatten()) model.add(MaxPooling2D(2))
myANN.add(Dense(20, activation='tanh')) model.add(Flatten())
myANN.add(Dense(10, activation='softmax')) model.add(Dense(20, activation='tanh'))
myANN.compile(loss='categorical_crossentropy', optimizer='nadam', metrics=['accuracy']) model.add(Dense(10, activation='softmax'))
myANN.fit(XTrain, YTrain, batch_size=500, epochs=5, verbose=True) model.compile(loss='categorical_crossentropy', optimizer='nadam', metrics=['accuracy'])
model.fit(X_train, y_train, batch_size=500, epochs=5, verbose=True)
mse, acc = myANN.evaluate(XTest, YTest, verbose=False) mse, acc = model.evaluate(X_test, y_test, verbose=False)
print('Test loss:', mse, 'Test accuracy:', acc) print('Test loss:', mse, 'Test accuracy:', acc)
import matplotlib.pyplot as plt import matplotlib.pyplot as plt
fig = plt.figure() fig = plt.figure()
for i in range(9): for i in range(9):
ax = fig.add_subplot(3, 3, i + 1) ax = fig.add_subplot(3, 3, i + 1)
ax.imshow(XTrain[i].squeeze(), cmap='gray', interpolation='none') ax.imshow(X_train[i].squeeze(), cmap='gray', interpolation='none')
ax.set_title(yTrain[i]) ax.set_title(y_train[i])
plt.tight_layout() plt.tight_layout()
plt.show() plt.show()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment