Gut microbiome disease classification
Classifies individuals as healthy, Crohn's disease, ulcerative colitis or obese from gut microbiome taxonomy data.
What it is
Data science coursework, and one of my favourite projects. Given the bacterial species found in a person's gut, the model predicts one of four labels: healthy, Crohn's disease, ulcerative colitis or obese.
The notebook works through exploration, log transforms, dropping species that correlate above 0.85, and scaling fitted on the training split only. Five models were compared: logistic regression, random forest, SVM, Gaussian naive Bayes and XGBoost. XGBoost did best, at 88.6% accuracy and 0.83 macro F1 before tuning, with random forest close behind, and both reached a ROC AUC above 0.94.
- A four-class problem predicted from taxonomy data alone.
- The full pipeline: exploration, preprocessing, feature engineering, then a comparison across models.
- Random Forest and XGBoost came out ahead.
What I learnt
- Tree ensembles suit microbiome data, because they capture interactions across many features that the linear baseline missed.
- Tuning did not always help. Tuned XGBoost fell to 86.2% accuracy on the test split, below its untuned baseline.
What I would do next
Add pathway-level biological signals alongside the taxonomy profiles.
Try deep learning models and sharper feature selection, possibly toward a research paper.