Code 1
Code 1
#Training model
model.add(Conv2D(32,kernel_size=(3,3),activation='relu',input_shape=(224,224,3)))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Conv2D(64,(3,3),activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Conv2D(128,(3,3),activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Conv2D(256,(3,3),activation='relu'))
model.add(MaxPooling2D(pool_size=(2,2)))
model.add(Dropout(0.5))
model.add(Dropout(0.5))
model.summary()
test_dataset = image.ImageDataGenerator(rescale=1./255)
train_generator = train_datagen.flow_from_directory(
'brain_tumor_dataset/train',
target_size = (224,224),
batch_size = 15,
class_mode = 'categorical')
validation_generator = test_dataset.flow_from_directory(
'brain_tumor_dataset/val',
target_size = (224,224),
batch_size = 15,
class_mode = 'categorical')
history = model.fit_generator(
train_generator,
steps_per_epoch=7,
epochs = 25,
validation_data = validation_generator)
print("Training Ended")
print(model.evaluate_generator(validation_generator))
plt.figure(figsize=(20,10))
plt.subplot(1, 2, 1)
plt.ylabel('Loss', fontsize=16)
plt.legend(loc='upper right')
plt.subplot(1, 2, 2)
plt.ylabel('Accuracy', fontsize=16)
plt.legend(loc='lower right')
plt.show()