Parkinson's Disease (PD) is a progressive neurodegenerative disorder that affects movement, with early detection being crucial for effective management. This research project leverages advanced machine learning techniques to detect Parkinson's Disease using vocal biomarkers, demonstrating the potential of artificial intelligence in medical diagnostics.
- Dataset: Parkinson's Disease Classification from the UCI Machine Learning Repository
- Data Type: Vocal feature measurements
- Objective: Binary classification (Parkinson's Disease: Yes/No)
-
CART (Classification and Regression Tree)
- Decision Tree-based classification
- Interpretable model with clear decision boundaries
-
Support Vector Machines (SVM)
- Kernel-based classification technique
- Effective for non-linear decision boundaries
- Multiple kernel options (linear, polynomial, radial basis function)
-
CatBoost
- Advanced gradient boosting algorithm
- Handles categorical features efficiently
- Robust to overfitting
-
All Features Approach
- Utilizes entire feature set without modification
- Baseline performance evaluation
-
Advanced Feature Selection Techniques used to identify most predictive features:
- Wrapper Method: Backward Elimination
- Embedding Method: LassoCV
- Statistical Method: ANOVA (Analysis of Variance)
-
Dimensionality Reduction
- Principal Component Analysis (PCA)
- Reduces feature space while preserving critical information
- Mitigates curse of dimensionality
- Leveraging standard machine learning libraries
- Custom algorithm implementations
- Comprehensive performance comparison
- Python 3.8+
- Git
- Basic machine learning knowledge
-
Repository Cloning:
git clone https://github.com/SecurDrgorP/ParkinsonML.git cd Parkinsons-Disease-Detection
-
Virtual Environment (Recommended):
python -m venv env # Activate # Windows: env\Scripts\activate # macOS/Linux: source env/bin/activate
-
Dependencies Installation:
pip install -r requirements.txt
Notebook | Algorithm | Key Focus |
---|---|---|
ImplCART.ipynb | Decision Tree | Interpretable Classification |
ImplSVM.ipynb | Support Vector Machine | Complex Decision Boundaries |
ImplCatBoost.ipynb | Gradient Boosting | Ensemble Learning |
# Install Jupyter
pip install jupyter
# Launch
jupyter notebook
- Accuracy
- Precision
- Recall
- F1 Score
- ROC-AUC Curve
- Early Parkinson's Disease detection
- Assistance in clinical decision-making
- Demonstrating machine learning's potential in medical diagnostics
Contributions, issues, and feature requests are welcome! Please check the issues page.
Note: This project is for research and educational purposes. Always consult healthcare professionals for medical advice.