Back to Projects
Skin Analyser — AI Skin Lesion Triage
Skin Analyser — AI Skin Lesion Triage
2025–2026
Machine Learning Developer

Skin Analyser — AI Skin Lesion Triage

Classification pipeline for dermoscopic images from the public HAM10000 dataset: OpenCV preprocessing, lesion-level splits with no data leakage, 8 CNN architectures compared with transfer learning, and evaluation by F1, recall, AUC and confusion matrix. Best result on the lesion-level test set: ResNet50, with 73% recall and 0.85 AUC for melanoma. A triage project: it does not diagnose.

Key Features

  • Train, validation and test sets split by lesion (lesion_id) with class stratification: photos of the same lesion never land in different partitions.

  • 8 architectures (MobileNetV2, EfficientNetB0, ResNet50, InceptionV3, DenseNet121, Xception, VGG19 and NASNetMobile) compared under an identical protocol, in a parameterized pipeline where only the configuration changes.

  • Runs and metrics persisted in Supabase, with a daily KPI dashboard — accuracy, sensitivity and specificity — built on PostgreSQL materialized views.

Technical Challenges

  • Designing validation so the numbers mean something: HAM10000 has several photos of the same lesion, so splits are lesion-level, and recall is prioritized for the class with the highest clinical risk.

  • Controlling overfitting with augmentation, dropout, L2 regularization, early stopping and learning-rate reduction on plateau, tracking the train/validation gap every epoch.

Other Projects

Explore other projects and solutions I have built.

View All Projects →

Portfolio

Featured Projects

Personal Portfolio

Modern, responsive personal portfolio with bilingual support (EN/PT), dark theme, smooth animations, and a secure contact form powered by EmailJS and reCAPTCHA v3.

Next.js 15TypeScriptReactTailwind CSSEmailJS
Transparência BR API

Async REST API built with FastAPI that exposes four datasets from Brazil's Federal Transparency Portal (CGU) — corporate card spending, official travel, contracts and public bids — through versioned /v1/ endpoints. Every page fetched is normalized and stored in PostgreSQL, and stored records can be filtered by agency, period and value range.

PythonFastAPIPostgreSQLSQLAlchemy 2Alembic
Local-LLM Email Triage Agent

Agent that sorts incoming email into 8 semantic categories with an LLM running locally (Ollama + llama3.1), orchestrated by self-hosted n8n on Docker Compose. Prompt, categories and thresholds live in versioned YAML, and no content is sent to third-party APIs.

Pythonn8nOllamallama3.1Docker Compose
Skin Analyser — AI Skin Lesion Triage

Classification pipeline for dermoscopic images from the public HAM10000 dataset: OpenCV preprocessing, lesion-level splits with no data leakage, 8 CNN architectures compared with transfer learning, and evaluation by F1, recall, AUC and confusion matrix. Best result on the lesion-level test set: ResNet50, with 73% recall and 0.85 AUC for melanoma. A triage project: it does not diagnose.

PythonTensorFlow/KerasScikit-learnOpenCVPandas
Skin Analyser — AI Skin Lesion Triage | Claudinei Alves