A deep learning solution for detecting nine types of skin cancer, including melanoma, using a custom Convolutional Neural Network (CNN). This project aims to improve early detection of melanoma and other skin cancers by automating the classification of dermoscopic images.
-
Project Background:
Skin cancer is one of the most common forms of cancer, and melanoma accounts for 75% of skin cancer deaths. Early detection is critical to improving survival rates. However, manual diagnosis by dermatologists is time-consuming and prone to human error. This project provides an automated solution using a custom CNN to classify skin cancer types based on dermoscopic images.
-
Business Problem:
The goal is to build a machine learning model that can evaluate skin lesion images and accurately classify them into one of nine categories, reducing the workload on dermatologists and enabling quicker diagnosis.
-
Dataset Information:
The dataset used in this project contains 2,357 images of nine different skin cancer types. It was sourced from the International Skin Imaging Collaboration (ISIC). The dataset includes:
- Actinic keratosis
- Basal cell carcinoma
- Dermatofibroma
- Melanoma
- Nevus
- Pigmented benign keratosis
- Seborrheic keratosis
- Squamous cell carcinoma
- Vascular lesion
Images were augmented to balance class distribution and improve model generalization.
Augmenting underrepresented classes using the Augmentor library reduced overfitting and improved validation accuracy slightly.
The current CNN architecture shows signs of underfitting, indicating the need for a more sophisticated model to capture complex features.
Validation accuracy reached ~49%, which suggests further improvements are needed in both data preprocessing and model design.
The automated classification system demonstrates the feasibility of using CNNs for dermatological applications, though further refinement is required to achieve clinically relevant accuracy levels.
- Python - version 3.10
- TensorFlow - version 2.12
- Augmentor - version 0.2.10
- Matplotlib - version 3.7
- NumPy - version 1.23
- Pandas - version 1.4
Give credit here.
- This project was inspired by the need to enhance medical diagnostics with AI.
- Dataset: International Skin Imaging Collaboration (ISIC).
- Based on tutorials from TensorFlow documentation and Augmentor library documentation.
Created by [@ManisCodeBase] - feel free to contact me!