MLOps Skin Lesion Classification¶
Welcome to the MLOps Skin Lesion Classification Pipeline - a production-ready ML system by DTU Group 36 for the MLOps course (02476).
Overview¶
This pipeline classifies dermatoscopic images of skin lesions to estimate malignant vs. benign diagnosis, demonstrating MLOps best practices from data handling to cloud deployment.
Key Features¶
- EfficientNet Model: Transfer learning with ImageNet pretrained weights
- Modern ML Stack: PyTorch Lightning, Hydra, Weights & Biases
- Complete MLOps Pipeline: DVC versioning, CI/CD, containerized deployment
- Production Ready: FastAPI server, Google Cloud deployment
Training Pipeline¶

Quick Start¶
# Clone and setup
git clone https://github.com/Aryan-Mi/dtu-vibe-ops-02476.git
cd dtu-vibe-ops-02476
uv sync
# Train a model
uv run python -m mlops_project.train model=efficientnet
# Start inference server
uv run python -m mlops_project.api
Installation guide → | Tutorial →
Dataset¶
- Source: HAM10000 (Harvard Dataverse)
- Images: 10,015 dermatoscopic images
- Task: Binary classification (malignant vs. benign)
Technology Stack¶
| Category | Tools |
|---|---|
| ML Framework | PyTorch, PyTorch Lightning |
| Configuration | Hydra |
| Data/Model Versioning | DVC, Google Cloud Storage |
| Experiment Tracking | Weights & Biases |
| API | FastAPI, ONNX Runtime |
| Deployment | Docker, Google Cloud Run |
| Dev Tools | uv, Ruff, pytest, GitHub Actions |
Team - DTU Group 36¶
- Aryan Mirzazadeh
- Mohamad Marwan Summakieh
- Trinity Sara McConnachie Evans
- Vladyslav Horbatenko
- Yuen Yi Hui