A machine learning system that detects early signs of Parkinson's Disease from voice recordings, built at a hackathon in November 2025.
- Record a short voice sample (sustained "ahh" sound)
- Extract 18 acoustic features (jitter, shimmer, HNR, etc.)
- SVM classifier predicts: Healthy or Parkinson's
Voice Recording → Feature Extraction → SVM Classifier → Prediction
| Phase | Script | Description |
|---|---|---|
| 1 | src/pd_detector.py |
Load & scale UCI dataset, 80/20 split |
| 2 | src/model_trainer.py |
Train SVM (RBF kernel, RandomizedSearchCV) |
| 3 | src/model_evaluator.py |
Accuracy, confusion matrix, F1 score |
| 4 | src/feature_plotter.py |
Visualise healthy vs PD features |
- UCI Parkinson's Dataset (195 samples, 22 voice features)
- Custom recordings from 13 participants
- Python 3.11
- scikit-learn (SVM, StandardScaler, RandomizedSearchCV)
- librosa (audio feature extraction)
- pandas, numpy, matplotlib
SVM with RBF kernel, 5-fold cross-validation, 50 hyperparameter iterations.
# Train the model
python3 src/pd_detector.py
python3 src/model_trainer.py
# Evaluate
python3 src/model_evaluator.py
# Predict on new voice
python3 check_person.py