Untitled

From Abrupt Cat, 3 Months ago, written in Plain Text, viewed 46 times.
URL http://codebin.org/view/12a212ae Embed
Download Paste or View Raw
  1. from tensorflow.keras.preprocessing.image import ImageDataGenerator
  2. from tensorflow.keras.layers import Dense, Conv2D, Flatten, AvgPool2D
  3. from tensorflow.keras.models import Sequential
  4. from tensorflow.keras.optimizers import Adam
  5.  
  6.  
  7. def load_train(path):
  8.     datagen = ImageDataGenerator(validation_split=0.25,
  9.                                  rescale=1/255)
  10.     train_datagen = datagen.flow_from_directory(path,
  11.                                                 target_size=(150, 150),
  12.                                                 batch_size=16,
  13.                                                 class_mode='sparse',
  14.                                                 subset='training',
  15.                                                 seed=12345)
  16.     validation_datagen = datagen.flow_from_directory(path,
  17.                                                      target_size=(150, 150),
  18.                                                      batch_size=16,
  19.                                                      class_mode='sparse',
  20.                                                      subset='validation',
  21.                                                      seed=12345)
  22.     return train_datagen, validation_datagen
  23.  
  24.  
  25. def create_model(input_shape):
  26.     optimizer = Adam()
  27.     model = Sequential()
  28.     model.add(Conv2D(filters=6, kernel_size=(5,5), padding="same", activation="relu", input_shape=input_shape))
  29.     model.add(AvgPool2D(pool_size=(2,2)))
  30.     model.add(Conv2D(filters=12, kernel_size=(5,5), activation="relu"))
  31.     model.add(AvgPool2D(pool_size=(2,2)))
  32.     model.add(Flatten())
  33.     model.add(Dense(units=144, activation="relu"))
  34.     model.add(Dense(units=72, activation="relu"))
  35.     model.add(Dense(units=12, activation="softmax"))
  36.     model.compile(optimizer=optimizer, loss='sparse_categorical_crossentropy', metrics=['acc'])
  37.  
  38.     return model
  39.  
  40.  
  41. def train_model(model, train_data, test_data, batch_size=16, epochs=1, steps_per_epoch=None, validation_steps=None):
  42.     model.fit(train_data,
  43.                 validation_data=test_data,
  44.                 batch_size=batch_size,
  45.                 epochs=epochs,
  46.                 steps_per_epoch=steps_per_epoch,
  47.                 validation_steps=validation_steps,
  48.                 verbose=2)
  49.     return model

Reply to "Untitled"

Here you can reply to the paste above