TheLethargicOwl / Melanoma-Skin-Lesion-Classification

Melanoma Skin Cancer Classification using Pytorch and Web App using Streamlit

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Melanoma-Skin-Lesion-Classification

Melanoma Skin Cancer Classification using Pytorch and Web App using Streamlit

The purpose of the following project is to correctly identify the benign and malignant cases of Melanoma in images of skin lesions

Demo

Demo Melanoma

Table of contents

Introduction :-

The objective of this project is to identify melanoma in images of skin lesions. In particular, we need to use images within the same patient and determine which are likely to represent a melanoma. In other words, we need to create a model which should predict the probability whether the lesion in the image is malignant or benign.Value 0 denotes benign, and 1 indicates malignant

Implemenetation_details

  • Making a custom class to integrate training of meta data and Images together
  • Used transfer learning on Image Net .

Training Process

  • Used EfficientNet B0-B3 and ResNeXt
  • Loss Function : BCE with logit Loss
  • Validation Metric : ROC-AUC Score
  • Best Score on validation data : 0.9671
  • Best Score on test data : 0.9620
  • Epochs Trained : 20* 5Folds with Early Stopping if score doesn't improve
  • Optimizer : Adam

Installation

Prerequisites

PIL
PyTorch
TorchVision
tqdm
OpenCV
Streamlit

Download the Model files from the links provided below in the appropriate locations.

  1. Model

Download repository

$ git clone https://github.com/TheLethargicOwl/Melanoma-Skin-Lesion-Classification

After adding the models, run the following command:

  1. Installing all the pre-requisite libraries.
pip install -r requirements.txt
  1. Executing model using streamlit script
streamlit run app.py

About

Melanoma Skin Cancer Classification using Pytorch and Web App using Streamlit


Languages

Language:Jupyter Notebook 99.8%Language:Python 0.2%