Skip to content

01 Overview

The problem

Machine learning is rarely “train a model and report the score”. Real data is messy, features are weak, and without rigorous validation results are misleading.

How do we move from messy raw data to a trustworthy, explainable and reproducible machine learning solution?

Raw data → EDA → Cleaning → Feature engineering → Model selection → Validation → Insight

CA1 — Exploration & preprocessing

Univariate and multivariate EDA, missing-value strategies, type conversion and date parsing, outlier detection and distribution analysis. What is in the data, and what must be fixed?

CA2 — Features & baselines

Feature creation and transformation, interactions, categorical encoding and pipeline-style preprocessing, compared against logistic regression and tree baselines with cross-validation.

CA3 — Tuning & evaluation

Grid and randomised search, validation and learning curves, ROC AUC, precision/recall and confusion matrices, bias–variance analysis and hold-out testing. Is the model real, or fitting noise?

CA4 — Pipelines & ensembles

Ensemble methods, full scikit-learn pipelines, feature importance and model persistence with joblib — structure that is reproducible and deployment-ready.

CA5 — End-to-end case study

Everything combined: problem definition, preparation, feature engineering, model selection, final evaluation and clear recommendations.

What I learned

  1. Data quality beats model complexity
  2. Feature engineering changes outcomes
  3. Validation is non-negotiable
  4. Reproducibility is professionalism
  5. Communication is part of the solution

Tech stack

  • Python
  • pandas
  • NumPy
  • scikit-learn
  • Matplotlib
  • Seaborn
  • joblib
  • Jupyter

Metrics

  • 5 – Coursework assignments
  • EDA → Deploy – Full lifecycle
  • CV – Cross-validated selection
  • ROC AUC – Metric-driven evaluation
Repo ↗