Skin cancer is one the most dangerous types of cancer and is one of the primary causes of death worldwide. The number of deaths can be reduced if skin cancer is diagnosed early. Skin cancer is mostly diagnosed using visual inspection, which is less accurate. Deep-learning-based methods have been proposed to assist dermatologists in the early and accurate diagnosis of skin cancers. This survey reviewed the most recent research articles on skin cancer classification using deep learning methods. We also provided an overview of the most common deep-learning models and datasets used for skin cancer classification.
1. Introduction
Skin cancer is one of the most common types of cancer that begins with the uncontrolled reproduction of skin cells. It can occur because of the ultraviolet radiation from sunshine or tanning beds, and it causes skin cells to multiply and form malignant tumors.
Skin cancer is one of the primary reasons for deaths worldwide. According to statistics published by , 97,160 Americans were diagnosed with skin cancer in 2023, which is 5.0% of the total cancer cases reported in the United States, and 7990 people died because of skin cancer which is 1.3% of the total deaths because of skin cancer in the United States. Melanoma is one of the most common and dangerous types of skin cancer that can spread quickly to other body parts. Approximately 21 out of 100,000 melanoma cases were diagnosed in the United States between 2016 and 2020. The death rate because of melanoma was 2.1 per 100,000 diagnosed cases, and 1,413,976 people were living with melanoma in 2020. The five-year survival rate of skin melanoma is 93.5% which is relatively high. The five-year survival rate is 99.6% when skin melanoma is diagnosed at an early stage. There are more chances of survival when skin melanoma is localized, which means it does not spread to other body parts, but only 77.6% of skin melanomas are diagnosed at the local stage. The number of deaths because of skin melanoma can be reduced if it is detected at its early stages.
The most common method of diagnosing skin cancer is by visual examinations by dermatologists, which has an accuracy of about 60%. The diagnostic accuracy of skin cancers increases to 89% by using dermoscopy. We also want to diagnose skin cancers with high sensitivity; dermoscopy has a sensitivity of 82.6% for detecting melanocytic lesions, 98.6% for basal cell carcinoma, and 86.5% for squamous cell carcinoma. Dermoscopy increases the accuracy of melanoma diagnosis, but it may still be challenging to diagnose some lesions, particularly early melanomas accurately, that lack distinctive dermoscopic features. Though dermoscopy diagnoses skin melanoma with very good accuracy, it is not well suited for diagnosing featureless melanoma, and there is still a need to improve accuracy further to increase the survival rate of patients. The problems with dermoscopy and the need to increase the diagnostic accuracy of skin cancer further laid the foundation for developing computer-aided detection methods for diagnosing skin cancers.
Here is a high-level overview of how you can implement this:
-
Data Collection and Preprocessing:
- Collect a dataset of skin images, labeled with their corresponding diagnoses (e.g., benign or malignant).
- Preprocess the images by resizing them to a uniform size, normalizing pixel values, and augmenting the dataset to increase variability (flipping, rotation, etc.).
-
Creating the Deep Learning Model:
- Choose a pre-trained convolutional neural network (CNN) like AlexNet, VGG16, or ResNet, which are available in MATLAB.
- Fine-tune the pre-trained model on your dataset.
-
Training the Model:
- Split the dataset into training and validation sets.
- Train the model using the training set and validate its performance using the validation set.
-
Evaluating the Model:
- Evaluate the model's performance using metrics such as accuracy, precision, recall, and the confusion matrix.
-
Deploying the Model:
- Once the model is trained and evaluated, deploy it to make predictions on new, unseen data.
Here's a basic implementation in MATLAB:
Step-by-Step Implementation
1. Data Collection and Preprocessing
First, ensure you have your dataset ready. Let's assume you have a dataset with images of skin lesions labeled as 'benign' or 'malignant'.
2. Creating the Deep Learning Model
Load a pre-trained network and modify it for your dataset.
3. Training the Model
4. Evaluating the Model
5. Deploying the Model