Advertisement
PNiewiarowska

AI_Niewiarowska_lab8_zad2

Jan 13th, 2020
103
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.52 KB | None | 0 0
  1. import keras
  2. from keras.datasets import mnist
  3. from keras.models import Sequential
  4. from keras.layers import Dense, Flatten, Conv2D, MaxPooling2D
  5. from keras.utils import np_utils
  6.  
  7. import matplotlib.pyplot as plt
  8.  
  9. (X_train, y_train), (X_test, y_test) = mnist.load_data()
  10.  
  11. print(keras.backend.image_data_format())
  12.  
  13. X_train = X_train.reshape((X_train.shape[0], 28, 28, 1)).astype('float32')
  14. X_test = X_test.reshape((X_test.shape[0], 28, 28, 1)).astype('float32')
  15.  
  16. X_train = X_train / 255
  17. X_test = X_test / 255
  18.  
  19. y_train = np_utils.to_categorical(y_train)
  20. y_test = np_utils.to_categorical(y_test)
  21. num_classes = y_test.shape[1]
  22.  
  23. net = Sequential()
  24.  
  25. net.add(Conv2D(32, (3, 3), activation='relu', input_shape=(28, 28, 1)))
  26. net.add(Conv2D(64, (3, 3), activation='relu'))
  27. net.add(MaxPooling2D(pool_size=(2, 2)))
  28. net.add(Flatten())
  29. net.add(Dense(128, activation='sigmoid'))
  30. net.add(Dense(10, activation='softmax'))
  31.  
  32. net.compile(loss='categorical_crossentropy',
  33.             optimizer=keras.optimizers.adadelta(), metrics=['accuracy'])
  34.  
  35. history = net.fit(X_train, y_train, validation_data=(
  36.     X_test, y_test), epochs=2, verbose=2, batch_size=100)
  37.  
  38. num_images = 20
  39. images_and_predictions = list(
  40.     zip(X_test[:num_images], net.predict_classes(X_test[:num_images])))
  41.  
  42. for index, (image, prediction) in enumerate(images_and_predictions):
  43.     plt.subplot(1, 20, index + 1)
  44.     plt.axis('off')
  45.     plt.imshow(image.reshape(28, 28), cmap=plt.get_cmap(
  46.         'gray'), interpolation='nearest')
  47.     plt.title(prediction)
  48. plt.show()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement