YAML Metadata Warning: empty or missing yaml metadata in repo card

Check out the documentation for more information.

import tensorflow as tf from tensorflow.keras.preprocessing.image import ImageDataGenerator from tensorflow.keras.models import Sequential from tensorflow.keras.layers import Conv2D, MaxPooling2D, Flatten, Dense from google.colab import drive drive.mount('/content/drive')

Define constants

image_size = (150, 150) batch_size = 32

Data augmentation for the training set

train_datagen = ImageDataGenerator( rescale=1./255, shear_range=0.2, zoom_range=0.2, horizontal_flip=True )

Rescaling for the testing set

test_datagen = ImageDataGenerator(rescale=1./255)

Load the training set

train_set = train_datagen.flow_from_directory( '/content/drive/MyDrive/chest_xray/train', target_size=image_size, batch_size=batch_size, class_mode='binary' )

Load the testing set

test_set = test_datagen.flow_from_directory( '/content/drive/MyDrive/chest_xray/test', target_size=image_size, batch_size=batch_size, class_mode='binary' )

Build the CNN model

model = Sequential() model.add(Conv2D(32, (3, 3), input_shape=(image_size[0], image_size[1], 3), activation='relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Conv2D(64, (3, 3), activation='relu')) model.add(MaxPooling2D(pool_size=(2, 2))) model.add(Flatten()) model.add(Dense(units=128, activation='relu')) model.add(Dense(units=1, activation='sigmoid'))

Compile the model

model.compile(optimizer='adam', loss='binary_crossentropy', metrics=['accuracy'])

Train the model

model.fit(train_set, epochs=10, validation_data=test_set)

Save the model

model.save('pneumonia_model.h5')

Evaluate the model on the testing set

accuracy = model.evaluate(test_set)[1] print(f'Test Accuracy: {accuracy}')

Make predictions on new images

def predict_image(file_path): img = tf.keras.preprocessing.image.load_img(file_path, target_size=image_size) img_array = tf.keras.preprocessing.image.img_to_array(img) img_array = tf.expand_dims(img_array, 0) # Create a batch

predictions = model.predict(img_array)
if predictions[0] > 0.5:
    print("Prediction: Pneumonia")
else:
    print("Prediction: Normal")

Example usage:

image_path = "/content/drive/MyDrive/chest_xray/train/PNEUMONIA/BACTERIA-1033441-0001.jpeg" predict_image(image_path)

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model isn't deployed by any Inference Provider. 🙋 Ask for provider support