# Python 3.12 recommended — facenet-pytorch has compatibility issues on 3.13+ # conda create -n drl python=3.12 (or equivalent venv) # ── Deep learning ───────────────────────────────────────────────────────────── torch>=2.0.0 torchvision>=0.15.0 # ── Image processing ────────────────────────────────────────────────────────── pillow>=10.0.0 # ── Data / evaluation ───────────────────────────────────────────────────────── numpy>=1.24.0 scikit-learn>=1.3.0 # roc_auc_score, confusion_matrix, train_test_split tqdm>=4.65.0 # progress bars during training and data loading torchmetrics>=0.11.0 # metrics for training and evaluation torch-fidelity>=0.3.0 # required by torchmetrics FrechetInceptionDistance # ── Visualisation ───────────────────────────────────────────────────────────── matplotlib>=3.7.0 seaborn>=0.12.0 # heatmaps and statistical plots in notebooks # ── Notebooks ───────────────────────────────────────────────────────────────── jupyter>=1.0.0 # ── Dataset download ────────────────────────────────────────────────────────── huggingface-hub>=0.20.0 # tools/download_data.py pulls DFF from HuggingFace # ── Face detection (optional) ───────────────────────────────────────────────── # Required only for the face-crop preprocessing tools: # classifier/tools/facecrop.py (bbox crop -> cropped/classifier/) # generator/tools/facecrop.py (landmark alignment -> cropped/generator/) # Skip if you don't run these — saves ~200 MB and avoids the # pytorch-lightning transitive dependency. facenet-pytorch>=2.5.0 scikit-image>=0.21.0 # similarity-transform alignment in generator/tools/facecrop.py