Skip to content

Repository files navigation

IAA Blood Cell Anomaly Detection

Group project for the Introduction to Machine Learning course. Classical ML applied to blood cell anomaly detection using a synthetic dataset of 5880 samples described by morphological and clinical features without relying on image-based approaches.

Problem(s) Studied

  • Binary classification: normal (0) vs anomaly (1) - anomaly_label column
  • Multiclass classification: predict disease_category across 8 classes (Anemia, Artefact, Infection, Leukemia, Normal_Platelet, Normal_RBC, Normal_WBC, Sickle_Cell_Anemia)

Dataset

blood_cell_anomaly_detection.csv - 5880 rows × 36 columns. Not available in this repository, download it from Kaggle and place it at the repo root.

Models

Six models evaluated on both tasks:

Category Models
Baseline Logistic Regression, Decision Trees, Non-linear SVM
Ensemble Random Forest, Gradient Boosting, AdaBoost

Repository Structure

├── binary-classification/          # Binary task notebooks
│   ├── adaboost.ipynb
│   ├── adaboost_two_stage_multiclass.ipynb
│   ├── binary_classification.ipynb
│   ├── decision_trees.ipynb
│   ├── gradient_boosting.ipynb
│   ├── logistic_regression.ipynb
│   ├── nonlinear_svm.ipynb
│   ├── random_forests.ipynb
│   ├── summary_visualization.ipynb
│   └── voting_ensemble.ipynb
├── multi-class-classification/     # Multiclass task notebooks
│   ├── adaboost.ipynb
│   ├── decision_trees.ipynb
│   ├── gradient_boosting.ipynb
│   ├── logistic_regression.ipynb
│   ├── nonlinear_svm.ipynb
│   ├── oversampling_experiment.ipynb
│   ├── random_forest.ipynb
│   ├── summary_visualization.ipynb
│   └── voting_ensemble_adaboost_svm.ipynb
├── data-exploration/            # EDA notebooks
├── Documentation/               # Deliverables + Final Report + Presentation PDFs
└── README.md

Setup

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt   # or install manually: scikit-learn, pandas, numpy, matplotlib, seaborn, imbalanced-learn, jupyter

Place blood_cell_anomaly_detection.csv at the repo root, then:

jupyter notebook

Notebooks in binary-classification/ and multi-class-classification/ load data from ../blood_cell_anomaly_detection.csv.

About

Repository for the IAA Group Project, on Blood Cell Anomaly Detection

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages