Command Palette

Search for a command to run...

Command Palette

Search for a command to run...

Projects

Customer churn prediction three-repository pipeline overview
Github
Website
Post

Customer Churn Prediction Pipeline

Live
RoleML Engineer
TeamSolo / Modular Repository Series
TimelineSep 2025-Present

Overview

Customer Churn Prediction Pipeline is a three-repository ML lifecycle project for churn prediction, split into data preparation, model training, and production-oriented pipeline structure.

The flow starts with churn-prediction-data-pipeline for EDA, missing-value handling, outlier treatment, binning, encoding, scaling, and processed datasets. It then moves into churn-prediction-model-training, which covers baseline training, K-fold validation, multi-model comparison, hyperparameter tuning, threshold optimization, and saved artifacts.

The main portfolio link points to churn-prediction-production-pipeline, which turns the earlier notebook work into reusable source modules, pipelines, config.yaml, artifacts, Makefile automation, and a FastAPI-ready inference direction.

This is separate from the Telco Churn MLOps Pipeline: this project shows the cleaner modular progression, while Telco is the heavier Kafka/Airflow/MLflow/PySpark/Docker implementation. Current status is honest: the production repo documents the data pipeline as functional, with training and streaming inference still being built out.

Architecture

Rendering diagram...
pinch · drag

Challenges & Solutions

1

The project spans three repositories, which can look fragmented if the portfolio entry treats them as unrelated work.

Framed them as one lifecycle project: preprocessing first, model-training second, and production-oriented pipeline structure third.

2

The production repository is not the same thing as the heavier Telco Churn MLOps Pipeline already in the portfolio.

Positioned this project as the clean modular ML progression, while the Telco project remains the full MLOps implementation with Kafka, Airflow, MLflow, PySpark, and Docker.

3

The production repo README marks the data pipeline functional but training and streaming inference as under development.

Kept the copy accurate: production-oriented architecture, functional data pipeline, and documented training/inference paths that are still being built out.

Project Progression

Repo 1

Data Pipeline

EDA and preprocessing notebooks for missing values, outliers, feature binning, encoding, scaling, and ML-ready datasets.

Repo 2

Model Training

Logistic regression baseline, K-fold validation, multi-model comparison, hyperparameter tuning, and threshold optimization.

Repo 3

Production Pipeline

Config-driven project structure with reusable data, training, evaluation, artifact, and FastAPI-ready inference modules.

Features

  • Separated the churn workflow into three repositories: data preprocessing, model training/evaluation, and production-oriented pipeline architecture
  • Built progressive preprocessing notebooks for missing-value handling, outlier treatment, feature binning, categorical encoding, and feature scaling
  • Used Python, pandas, Pydantic, Groq/OpenAI-assisted imputation, Matplotlib, Seaborn, and scikit-learn across the data preparation phase
  • Created model-training notebooks for data preparation, logistic regression baseline, K-fold validation, multi-model comparison, hyperparameter tuning, and threshold optimization
  • Structured the production repository around `pipelines/`, `src/`, `utils/`, `config.yaml`, artifacts, raw/processed data folders, and Makefile commands
  • Designed the production repo to support data preprocessing first, with training and streaming inference modules documented as active development areas
  • Prepared a FastAPI-ready streaming inference path with `/predict` deployment documentation for future real-time churn scoring
  • Documented the relationship between the three repos so the portfolio project reads as one lifecycle instead of three disconnected notebook repositories