Skip to content

dilnazuuuu/skin-lesion-classification

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Skin Lesion Classification (DermaMNIST)

Final project for CS-UH 2220: Machine Learning


Overview

This project performs multi-class classification of dermatological images using the DermaMNIST dataset.

The repository contains:

  • Exploratory Data Analysis (EDA)
  • Deep learning model training using ResNet-18 (transfer learning)

Dataset

  • 10,015 RGB images
  • 7 skin lesion classes
  • Significant class imbalance
  • Source: MedMNIST (DermaMNIST)

Repository Structure

skin-lesion-classification/
│
├── notebooks/
│   ├── 01_data_exploration.ipynb
│   └── 02_resnet18_training.ipynb
│
├── figures/
│   ├── class_distribution.png
│   ├── sample_images.png
│   ├── pixel_histogram.png
│   └── confusion_matrix.png
│
├── README.md
├── requirements.txt
└── .gitignore

Model

  • ResNet-18 (ImageNet pretrained)
  • CrossEntropyLoss
  • Cosine Learning Rate Scheduler
  • Data augmentation
  • Evaluation using precision, recall, and F1-score

Final Performance

  • Test Accuracy: ~80%
  • Weighted F1-score: ~0.79
  • Macro F1-score: ~0.63
  • Melanoma recall monitored separately

How to Run

Recommended: Google Colab

  1. Run 01_data_exploration.ipynb
  2. Run 02_resnet18_training.ipynb (GPU recommended)

Dependencies are listed in requirements.txt.


Key Takeaways

  • Severe class imbalance impacts minority class performance.
  • Transfer learning significantly improves generalization.
  • Monitoring per-class metrics is crucial in medical ML tasks.

About

Skin lesion classification using ResNet-18 on DermaMNIST (CS-UH 2220 Final Project)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors