Back to Projects

Deep Learning · ML Engineer

View Code

CNN Skin Cancer Classifier

PythonTensorFlowKerasCNNMedical AI

A comprehensive deep learning pipeline for identifying and classifying skin cancer lesions. Processes 10,015 dermatoscopic images from the HAM10000 dataset across seven lesion categories, with emphasis on transparency, reproducibility, and practical clinical applicability.

The Problem

Early skin cancer detection can save lives, but requires specialist dermatologists. The challenge was building an automated classification system that can reliably distinguish between different types of skin lesions from dermatoscopic images, while being transparent about its limitations.

The Approach

Built a sequential CNN architecture with dropout regularization and data augmentation. Used ImageDataGenerator for augmentation, ReduceLROnPlateau for learning rate optimization, and comprehensive evaluation including confusion matrices and per-class analysis. Identified class imbalance as a key challenge and documented recommendations.

Technical Details

  • Sequential CNN architecture with dropout regularization
  • Data augmentation via ImageDataGenerator
  • Learning rate optimization with ReduceLROnPlateau callbacks
  • 10,015 images across 7 lesion categories (HAM10000 dataset)
  • Comprehensive evaluation with confusion matrices and classification reports

Outcomes

  • Achieved 77.7% validation accuracy across 7 skin lesion categories
  • Built a fully reproducible pipeline from preprocessing to evaluation
  • Identified limitations and recommended improvements (transfer learning, focal loss)

Interested in working together on something similar?

Let's Talk