Task_4

From Igor, 2 Months ago, written in Python, viewed 37 times.
URL http://codebin.org/view/b8705462 Embed
Download Paste or View Raw
  1. from tensorflow.keras import Sequential
  2. from tensorflow.keras.layers import Conv2D, Flatten, Dense, AvgPool2D
  3. import matplotlib.pyplot as plt
  4. import numpy as np
  5. from tensorflow.keras.optimizers import Adam
  6. from tensorflow.keras.preprocessing.image import ImageDataGenerator
  7.  
  8. optimizer = Adam(lr=0.01)
  9. datagen = ImageDataGenerator(validation_split=0.25, rescale=1/255)
  10.  
  11.  
  12. def load_train(path):
  13.     train_datagen_flow = datagen.flow_from_directory(
  14.     '/datasets/fruits_small/',
  15.     target_size=(150, 150),
  16.     batch_size=16,
  17.     class_mode='sparse',
  18.     subset='training',
  19.     seed=12345)
  20.     return train_datagen_flow
  21.  
  22.  
  23. def create_model(input_shape):
  24.     model = Sequential()
  25.  
  26.     model.add(Conv2D(6, (5, 5), padding='same', activation='relu',
  27.                  input_shape=(28, 28, 1)))
  28.     model.add(AvgPool2D(pool_size=(2, 2)))
  29.     model.add(Conv2D(filters=16, kernel_size=(5, 5), padding='valid',
  30.                     activation="relu"))
  31.     model.add(AvgPool2D(pool_size=(2, 2)))
  32.  
  33.     model.add(Flatten())
  34.     model.add(Dense(units=120, activation='relu'))
  35.     model.add(Dense(units=84, activation='relu'))
  36.     model.add(Dense(units=10, activation='softmax'))
  37.  
  38.     model.compile(loss='sparse_categorical_crossentropy', optimizer=optimizer, metrics=['acc'])
  39.  
  40.     return model
  41.  
  42.  
  43. def train_model(model, train_data, test_data, batch_size=32, epochs=1,
  44.                steps_per_epoch=None, validation_steps=None):
  45.  
  46.     features_train, target_train = train_data
  47.     features_test, target_test = test_data
  48.     model.fit(features_train, target_train,
  49.               validation_data=(features_test, target_test),
  50.               batch_size=None, epochs=epochs,
  51.               steps_per_epoch=steps_per_epoch,
  52.               validation_steps=validation_steps,
  53.               verbose=2, shuffle=True)
  54.  
  55.     return model

Reply to "Task_4"

Here you can reply to the paste above