|
FreeLeeGo Logo
Main project
Thumbnail 1
Thumbnail 2
Thumbnail 3
Thumbnail 4
Thumbnail 5

AI & Machine Learning

Skin Cancer Detection

Client: Self

The Challenge

The primary challenge was to develop a reliable and automated system to differentiate between malignant (cancerous) and benign (non-cancerous) skin lesions from images. Early detection of skin cancer is critical for patient survival, but visual diagnosis is complex, requires specialized expertise, and can be subjective. The goal was to create an accessible tool that could provide a rapid, data-driven “second opinion” to aid in early diagnosis.

Our Solution

We engineered a deep learning model using a Convolutional Neural Network (CNN) with TensorFlow and Keras. This solution automates the analysis of dermatologic images, providing an immediate binary classification (“skin_cancer” or “not_skin_cancer”) along with a quantifiable confidence score. The final, trained model is lightweight and integrated into a simple Python script, allowing anyone to get a prediction on a new image directly from the command line.

About the Project

This project is an end-to-end machine learning system for skin cancer detection. Starting with a dataset of skin lesion images, we built, trained, and evaluated a custom CNN model designed to identify the subtle visual patterns that distinguish malignant from benign lesions. The process involved comprehensive data preprocessing, extensive data augmentation (to prevent overfitting on a limited dataset), and model training using EarlyStopping to ensure peak performance. The final deliverable is not just the model, but a complete, usable application (predict.py) that loads the saved model and analyzes new, unseen images in real-time.

Project Owner

Mohammad Tahmim Tasin

Mohammad Tahmim Tasin

Co-Founder & Chief Technology Officer

Tasin is a full-stack web developer and a pivotal lead engineer within our team, known for spearheading the development of advanced web applications. He possesses a deep expertise in constructing modern, scalable digital solutions, demonstrating mastery across intricate frontend interfaces and robust, high-performance backend architectures. His advanced skill set prominently includes the seamless integration and deployment of cutting-edge Artificial Intelligence and Machine Learning models into live production environments. This is powerfully showcased through his leadership in developing interactive, data-driven prediction platforms, such as the Heart Risk Predictor and the Skin Cancer Detector, which transform complex algorithms into actionable insights for users. Tasin's unwavering passion for driving efficiency extends across all his endeavors. Beyond client-facing projects, he conceptualizes and develops powerful internal management tools and targeted Micro-SaaS products. He consistently leverages automation and intelligent, AI-enhanced solutions to create streamlined, high-value systems that not only solve complex problems but also significantly elevate operational effectiveness and deliver tangible, measurable results.

Our Process

Data Preprocessing & Augmentation

Data Preprocessing & Augmentation

The initial dataset was first preprocessed by resizing all images to a uniform 150×150 pixels and normalizing pixel values. To overcome the small dataset size, we used ImageDataGenerator to apply extensive, on-the-fly data augmentation (rotation, zooming, shearing, and flipping). This artificially expanded the training set and built a more robust model that can handle variations in real-world images.

CNN Model Development & Training

CNN Model Development & Training

A sequential CNN architecture was designed with three convolutional blocks (using 32, 64, and 128 filters) followed by MaxPooling layers. A Dropout(0.5) layer was included to prevent overfitting. The model was compiled with the adam optimizer and binary_crossentropy loss, then trained on the augmented data. The EarlyStopping callback monitored validation loss to automatically stop training and save the best-performing model.

Evaluation & Deployment of Predictor

Evaluation & Deployment of Predictor

After training, the model's performance was validated on a separate, unseen test dataset, generating a confusion matrix and classification report. To make the model usable, we created the predict.py script. This script loads the saved skin_cancer_model.keras file, processes any user-provided image to match the model's input requirements, and outputs a clear, human-readable diagnosis and confidence percentage.

Key Results

100%

Accuracy on Test Data

96.58%

Confidence in Live Prediction

Effective

Overfitting Mitigation

Want to share something with us? We’re here to listen to you.

Tell us about your plans, challenges, or ideas — we’re here to listen, understand, and find the best solution for you. Just fill out the form — reach out and see how we can truly help you.