AI & Data Science / MLOps

Telco Churn MLOps on AWS

Customer churn prediction with reproducible training, experiment tracking, a tested API and a documented AWS demonstration.

completedCompleted

Problem & context

Problem

Build and evaluate a reproducible customer-churn prediction workflow, then expose the selected model through a tested prediction API.

Intended users

Technical reviewers and teams evaluating a churn-model delivery workflow.

Role and contributions

End-to-end machine learning and MLOps implementation

Dataset / inputs

A telco churn dataset containing 7,043 customer records; the repository documents train, validation and test splits.

Methods & architecture

Comparable preprocessing pipelines were used for logistic regression and XGBoost. Experiments were tracked with MLflow; the selected XGBoost threshold was 0.37.

scikit-learnXGBoostMLflowFastAPIDockerGitHub ActionsAWS EC2

Implementation

  1. Prepare and split the 7,043-record dataset
  2. Compare logistic regression and XGBoost
  3. Track experiments with MLflow
  4. Package the FastAPI service in Docker
  5. Run checks locally, in Docker and in GitHub Actions
  6. Demonstrate a manual deployment on AWS EC2

Verified results

Metrics below are reported under the project's documented evaluation conditions.

0.660882Average precision
0.846847ROC AUC
0.582781Precision
0.705882Recall
0.638452F1

Limitations & next steps

Service availability
The EC2 instance was stopped after the demonstration. There is no currently available public API URL; remote access was verified through an SSH tunnel. Continuous integration is implemented, while AWS deployment remains manual.

A future iteration could automate a secure cloud deployment and add production monitoring after its operating context is defined.

Attribution & licence

See the repository for current attribution and licence information.