Inspiration

  • The project is deeply personal to me. Over the past five generations, many members of the close relative family have been affected by cancer (not particularly skin cancer). Witnessing this recurring challenge sparked a strong desire to leverage. Modern technology to help in early detection and diagnosis. I envisioned on AI-powered solution that could assist doctors in identifying skin cancer at its earliest stages, potentially saving lives and reducing the burden of this disease on families like my relatives. * ## What I learned *Throughout this journey, I gained invaluable insights and skills, including:
  • Deep Learning and CNNs: I learned how to work with CNN and utilize trasfer learning with architecture like MobileNet, ResNet50, and VGG16 to build an image classification model.
  • Ensemble Methods: Combining multiple models using ensemble techniques taught me how to improve prediction robustness and accuracy. I experimented with both simple and weighted averaging to fuse the outputs of different models.
  • Data Preprocessing: I honed my skills in preprocessing image data, including resizing, normalization, and data augmentation. This was crucial for ensuring consistency between training and testing phases.
  • Web Development: I developed a simple yet effective web application using Flask. This allowed me to integrate the trained models into a platform where clinicians can upload images and receive immediate predictions.
  • Risk Stratification: By analyzing clinical data and building a predictive model for risk stratification, I learned how to integrate non-image data with image-based predictions to provide a comprehensive decision support tool.*

How we built it

*1. Data Collection and Preparation:

Collected already availble resource, appliedimage augmentation techniques to expand the training dataset and improve model generalization.

  1. Model Development:

Trained three different CNN models using MobileNetV2, ResNet50, and VGG16 architectures. Developed an ensemble approach to combine their predictions, improving overall accuracy. Saved the models using Keras, ensuring they could be loaded later for inference without retraining.

  1. Risk Stratification Module:

Utilized clinical datasets (clinical, pathology_Details, sample, portion) to develop a predictive model (using Random Forest) that stratifies patients into low, medium, or high risk for developing skin cancer. Merged and preprocessed the clinical data, engineered additional features, and trained the model on labeled data.

  1. Web Application Development:

Created a simple Flask web application where clinicians can upload an image for analysis. Integrated the ensemble image classifier and risk stratification model into the app. Developed API endpoints to accept image uploads and clinical data, returning predictions and risk scores in real time.

Challenges I ran into

  • Data Imbalance: One major challenge was the imbalance in the image dataset, where benign cases were more prevalent than malignant ones. I had to experiment with data augmentation and careful threshold tuning to address this issue.

Model Calibration: Ensuring that the ensemble model's probabilities accurately reflected the likelihood of malignancy required multiple iterations of tuning the ensemble weights and threshold values.

Integration Complexity: Combining multiple machine learning models into a seamless web application was a learning curve. From model deployment to handling file uploads and processing data in real time, each step brought its own set of challenges.

Personal Motivation vs. Technical Hurdles: Balancing personal motivation—driven by the impact on my family—with the technical challenges of building and integrating advanced AI models was demanding. However, it also kept me focused and committed throughout the project*

Built With

Share this project:

Updates