Inspiration

Skin cancer is a growing concern worldwide, but many existing datasets lack diversity in skin tones, leading to less effective models for darker-skinned individuals. We were inspired to create a solution that improves inclusivity in skin cancer and enables better generalization for AI models across different skin types, contributing to more equitable healthcare.

What it does

SkinSense is an AI-powered platform that allows users to upload images of skin lesions for classification. It identifies 7 different types of skin cancers by analyzing the image and provides probability scores for each type. The platform uses a deep learning model trained on an augmented dataset that includes images with diverse skin tones, ensuring robust performance for all users.

How we built it

We used Neural Style Transfer (NST) to augment the HAM10000 dataset with darker skin tones. An EfficientNetV2 model was then trained on this augmented dataset to achieve high classification accuracy. The front end of the platform was built using ReactJS, providing drag-and-drop image upload functionality and real-time feedback. The back end, built with Flask, processes the uploaded images, applies necessary preprocessing, and communicates with the trained model to retrieve predictions.

Challenges we ran into

One major challenge was ensuring that the neural style transfer results looked realistic and maintained the lesion’s integrity after augmentation. Balancing content and style in NST required careful tuning. Another challenge was the class imbalance present in the HAM10000 dataset. We tested techniques such as focal loss and weighted loss functions, and ended up using a weighted cross entropy loss function to mitigate the effects of the imbalance.

Accomplishments that we're proud of

We are proud to have created a robust, 91% accurate skin cancer classification model that performs well on diverse skin tones. The integration of neural style transfer for dataset augmentation is a novel aspect of this project, and we’re excited about its potential to improve healthcare equity. We also make progress in 3 of the UN's 17 SGDs:

  1. No Poverty: we reduce the potential cost of the treatment of skin cancer by providing an early detection solution free of cost.
  2. Good Health and Well Being: our solution will allow early care of skin cancer and prevent it from reaching life-threatening stages, promoting well being and saving lives.
  3. Reduced Inequalities: our model can generalize very well to darker skin tones, using our neural style transfer technique. This reduces in skin-color based inequalities for early detection of skin cancer.

What we learned

Through this project, we learned the importance of dataset diversity in AI models, especially in healthcare applications. We also deepened our understanding of neural style transfer, EfficientNet architectures, and the challenges of building generalizable models. We learned how to deploy models in a Flask backend.

What's next for SkinSense

We plan to further enhance the accuracy and fairness of the model by incorporating additional datasets and more advanced augmentation techniques. We’re also considering expanding the platform to support real-time mobile diagnostics and improving the user interface to provide more detailed explanations for the classification results. Our ultimate goal is to make SkinSense accessible to medical professionals and individuals around the world, especially in underrepresented communities.

Built With

Share this project:

Updates