How reskyz1/pad-ufes-20-experiments works
PAD-UFES-20 is a PyTorch research project for skin-lesion classification and controlled label-noise experiments. Its main workflow prepares patient-separated data, trains a cross-entropy or robust-method model, evaluates predictions per lesion, and can fit temperature scaling on validation predictions before test-set analysis. The graph also preserves noise-manifest generation and decision-curve analysis. Relationships are limited to those visible in excerpts, the source index, or the README; unsampled implementation details are not assumed.
Main entry points: train.py CE training · robust_train.py Robust training · evaluate.py Run evaluation · data.py Datasets and transforms
Components 18
Data preparation
- Prepare data
pad_ufes20_idn64/src/pad_idn/prepare.py - Patient splits
pad_ufes20_idn64/src/pad_idn/splits.py - Datasets and transforms
pad_ufes20_idn64/src/pad_idn/data.py - IDN generation
pad_ufes20_idn64/src/pad_idn/noise.py - Noise manifests
pad_ufes20_idn64/src/pad_idn/noise_manifest.py
Model experiments
- CE training
pad_ufes20_idn64/src/pad_idn/train.py - Robust training
pad_ufes20_idn64/src/pad_idn/robust_train.py - Robust losses
pad_ufes20_idn64/src/pad_idn/robust_methods.py - ResNet models
pad_ufes20_idn64/src/pad_idn/models.py - Train and predict loops
pad_ufes20_idn64/src/pad_idn/engine.py
Evaluation and calibration
- Run evaluation
pad_ufes20_idn64/src/pad_idn/evaluate.py - Lesion metrics
pad_ufes20_idn64/src/pad_idn/metrics.py - Temperature scaling
pad_ufes20_idn64/src/pad_idn/calibration.py - Decision curves
pad_ufes20_idn64/src/pad_idn/decision_curve.py - Experiment results
pad_ufes20_idn64/src/pad_idn/results.py
Shared runtime
- Shared utilities
pad_ufes20_idn64/src/pad_idn/utils.py
Other components
- Researcher
- PAD-UFES-20 data
Connections 22
- Researcher → Prepare data: prepares data
README.md - PAD-UFES-20 data → Prepare data: provides images
- Researcher → CE training: runs training
README.md - Prepare data → Patient splits: creates inputs
- Patient splits → Datasets and transforms: defines partitions
- IDN generation → ResNet models: extracts features
pad_ufes20_idn64/src/pad_idn/noise.py - IDN generation → Noise manifests: uses manifests
pad_ufes20_idn64/src/pad_idn/noise.py - CE training → Datasets and transforms: builds loaders
pad_ufes20_idn64/src/pad_idn/train.py - CE training → ResNet models: builds model
pad_ufes20_idn64/src/pad_idn/train.py - CE training → Train and predict loops: trains and predicts
pad_ufes20_idn64/src/pad_idn/train.py - Robust training → Datasets and transforms: builds loaders
pad_ufes20_idn64/src/pad_idn/robust_train.py - Robust training → ResNet models: builds models
pad_ufes20_idn64/src/pad_idn/robust_train.py - Robust training → Robust losses: uses losses
pad_ufes20_idn64/src/pad_idn/robust_train.py - Robust training → Train and predict loops: uses training loops
pad_ufes20_idn64/src/pad_idn/robust_train.py - Run evaluation → Datasets and transforms: loads evaluation data
pad_ufes20_idn64/src/pad_idn/evaluate.py - Run evaluation → ResNet models: builds model
pad_ufes20_idn64/src/pad_idn/evaluate.py - Run evaluation → Train and predict loops: predicts images
pad_ufes20_idn64/src/pad_idn/evaluate.py - Run evaluation → Lesion metrics: computes metrics
pad_ufes20_idn64/src/pad_idn/evaluate.py - Researcher → Temperature scaling: calibrates predictions
README.md - Temperature scaling → Lesion metrics: reports metrics
pad_ufes20_idn64/src/pad_idn/calibration.py - Temperature scaling → Decision curves: computes curves
pad_ufes20_idn64/src/pad_idn/calibration.py - CE training → Lesion metrics: evaluates predictions
pad_ufes20_idn64/src/pad_idn/train.py