top of page

Ensemble Convolution Neural Network for Malaria Cell Detection using Transfer-Learning

Project associated with:

Lancaster University

Context

This project aims to develop automated methods for medical diagnostics using deep learning models, specifically focusing on detecting malaria parasites from microscopic blood smear images. The research explores the use of transfer learning with convolutional neural network (CNN) architectures, particularly EfficientNet and VGG19, to create ensemble models for improved accuracy in malaria cell classification.

Requirements

Accurate Classification: Develop deep learning models capable of accurately classifying malaria-infected and uninfected cells from microscopic images.


Transfer Learning: Implement transfer learning techniques using pre-trained CNN architectures.


Ensemble Models: Create ensemble models to improve classification accuracy beyond individual model performance.


Performance Evaluation: Evaluate model performance using various metrics including accuracy, precision, recall, and F1-score.


Practical Application: Develop a practical application to demonstrate the model's real-world utility.

Approach

Data Preparation:

  • Dataset:Utilize a dataset of 27.6K images, evenly split between parasitized and uninfected malaria cell images.

  • Image Preprocessing:Rescale images to 130x130 pixels.
    Normalize pixel values.

  • Data Splitting:Split data into 80% training, 10% validation, and 10% testing sets.


Model Development:

  • Transfer Learning:Implement transfer learning using EfficientNet and VGG19 architectures as base models.

  • Fine-Tuning:Fine-tune models using binary cross-entropy loss and RMSprop or Adam optimizers.

  • Individual Models:Create individual models using EfficientNet and VGG19.

  • Ensemble Models:Develop ensemble models using bagging (with EfficientNet) and stacking (combining EfficientNet and VGG19) techniques.


Model Evaluation:

  • Metrics:Assess models using accuracy, precision, recall, F1-score, ROC curve, and confusion matrix.

  • Comparison:Compare the performance of individual models against ensemble models.


Practical Application:

  • Web Application:Develop a Flask-based web application to demonstrate the model's use in practice.

  • User Interaction:Allow users to upload images for classification and display results.

Technologies Used

  • Programming Language:Python


  • Deep Learning Framework:TensorFlow/Keras


  • CNN Architectures:EfficientNet, VGG19


  • Image Processing:Keras ImageDataGenerator


  • Model Evaluation:Scikit-learn (for metrics calculation)


  • Web Application Framework:Flask


  • Data Manipulation:NumPy, Pandas


  • Visualization:Matplotlib (for plotting loss curves and ROC)

bottom of page