File size: 4,482 Bytes
1872b08 65d9b24 1872b08 65d9b24 1872b08 65d9b24 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 | ---
language: en
license: mit
library_name: scikit-learn
pipeline_tag: tabular-classification
tags:
- healthcare
- parkinsons-disease
- random-forest
- multimodal
- machine-learning
- medical-ai
- scikit-learn
- hog
- speech-analysis
---
# Multimodal Parkinson's Disease Detection using Random Forest
## Overview
This repository provides a machine learning model for Parkinson's Disease detection using a multimodal approach that combines speech-based acoustic biomarkers and hand-drawn image features.
The model integrates clinically relevant voice features with Histogram of Oriented Gradients (HOG) extracted from spiral and wave drawings to improve diagnostic performance.
The classifier is a Grid Search optimized Random Forest model trained on fused multimodal features.
---
## System Architecture
```
Voice Recording
β
βΌ
Voice Feature Extraction
β
ββββββββββββββββ
β β
βΌ βΌ
Drawing Image HOG Feature Extraction
β β
ββββββββ¬ββββββββ
βΌ
Feature Concatenation
βΌ
Random Forest (Grid Search)
βΌ
Parkinson Prediction
```
---
## Problem Statement
Parkinson's Disease is a progressive neurological disorder where early diagnosis is essential for effective treatment.
Traditional diagnosis often depends on clinical examination. This project demonstrates how machine learning can assist clinicians by analyzing multiple patient modalities simultaneously.
---
## Model Details
| Property | Value |
|----------|-------|
| Model | Random Forest Classifier |
| Optimization | Grid Search CV |
| Task | Binary Classification |
| Framework | Scikit-learn |
| Input | Voice + Drawing Features |
| Output | Healthy / Parkinson's Disease |
---
## Dataset
### Voice Dataset
- Source: UCI Parkinson's Dataset
- Samples: 195
- Parkinson's: 147
- Healthy: 48
### Drawing Dataset
Spiral and Wave Drawing Dataset
- Total Images: 207
- Training Images: 147
- Testing Images: 60
### Multimodal Dataset
Voice and drawing features were combined into a single feature vector after preprocessing and class balancing using Random Oversampling / SMOTE.
---
## Input Features
### Voice Features
- Fundamental Frequency (Fo)
- Highest Frequency (Fhi)
- Lowest Frequency (Flo)
- Jitter
- Shimmer
- NHR
- HNR
- RPDE
- DFA
### Drawing Features
Histogram of Oriented Gradients (HOG)
Preprocessing includes:
- Grayscale conversion
- Image resizing (250Γ250)
- Otsu Thresholding
- HOG Feature Extraction
---
## Feature Fusion
The multimodal feature vector is generated by concatenating the processed voice features and HOG image descriptors.
```python
model_input = np.concatenate((voice_features, img_features), axis=1)
```
---
## Performance
| Metric | Score |
|---------|-------|
| Accuracy | 92.73% |
| Precision | 100.00% |
| Recall | 90.70% |
| F1 Score | 95.12% |
### Confusion Matrix
| | Predicted Healthy | Predicted Parkinson's |
|---|---:|---:|
| Actual Healthy | 12 | 0 |
| Actual Parkinson's | 4 | 39 |
---
## Installation
```bash
git clone https://github.com/yourusername/multimodal-parkinsons-random-forest.git
cd multimodal-parkinsons-random-forest
pip install -r requirements.txt
```
---
## Repository Structure
```
multimodal-parkinsons-random-forest/
βββ README.md
βββ parkinson_multimodal_random_forest.pkl
βββ requirements.txt
βββ LICENSE
βββ src/
βββ examples/
βββ images/
```
---
## Intended Use
This model is intended for:
- Educational purposes
- Academic research
- Machine Learning experimentation
- Healthcare AI demonstrations
It is **not intended for clinical diagnosis** or medical decision-making.
---
## Limitations
- Dataset size is relatively small.
- Performance depends on the quality of voice recordings and drawing images.
- The model has not been clinically validated.
- Predictions should not replace professional medical evaluation.
---
## Ethical Considerations
This project is developed solely for research and educational purposes.
Medical AI systems should always be validated by healthcare professionals before being used in real-world clinical settings.
---
## License
MIT License
---
## Author
**Sarthak.**
AI/ML Engineer
Specializing in Machine Learning, Computer Vision, NLP, LLMs, and Generative AI. |