Advertisement
Step8rother

Свёрточные слои Keras, задача 1

Jul 9th, 2023 (edited)
1,236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.95 KB | Source Code | 0 0
  1. #В конце прошлой темы вы обучили полносвязную сеть для решения задачи классификации одежды. Замените эту сеть на свёрточную со слоями: Conv2D + relu + Flatten + Dense. Примените в свёрточном слое 4 фильтра размером 3x3.
  2. #Обучать свёрточную сеть не нужно. Вызовите у модели функцию summary(): она напечатает на экране информацию об устройстве сети.
  3.  
  4. from tensorflow.keras import Sequential
  5. from tensorflow.keras.layers import Conv2D, Flatten, Dense
  6. import matplotlib.pyplot as plt
  7. import numpy as np
  8.  
  9.  
  10. features_train = np.load('/datasets/fashion_mnist/train_features.npy')
  11. target_train = np.load('/datasets/fashion_mnist/train_target.npy')
  12. features_test = np.load('/datasets/fashion_mnist/test_features.npy')
  13. target_test = np.load('/datasets/fashion_mnist/test_target.npy')
  14.  
  15. # Меняем размерности изображений и приводим числа к диапазону [0, 1].
  16. # При изменении размера одну из размерностей можно указать равной -1,
  17. # чтобы она вычислялась автоматически
  18. features_train = features_train.reshape(-1, 28, 28, 1) / 255.0
  19. features_test = features_test.reshape(-1, 28, 28, 1) / 255.0
  20.  
  21. model = Sequential()
  22.  
  23. model.add(Conv2D(filters=4, kernel_size=(3, 3), activation='relu', input_shape=(28, 28, 1)))
  24. model.compile(loss='sparse_categorical_crossentropy', optimizer='sgd', metrics=['acc'])
  25.  
  26. model.add(Flatten())
  27. model.compile(loss='sparse_categorical_crossentropy', optimizer='sgd', metrics=['acc'])
  28.  
  29. model.add(Dense(10, activation='softmax',input_dim=features_train.shape[1]))
  30. model.compile(loss='sparse_categorical_crossentropy', optimizer='sgd', metrics=['acc'])
  31.  
  32. model.summary()
  33.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement