PROJECT CASE STUDY
Customer churn prediction
A trained model and an interactive interface for exploring customer churn scores.
Interactive prototype
Page updated:
Python · PyTorch · Pandas

The problem
The project explores churn prediction using the IBM Telco Customer Churn sample dataset. I prepared the data, trained an MLP and built an interface to inspect model outputs.
An easy-to-miss error
Encoding one customer independently with drop_first=True can remove the only category present in that row. The fix is to preserve the training feature schema, reindex inference inputs to it and reuse the saved scaler.
Why accuracy is not enough
When most customers stay, predicting that everyone stays gives deceptively high accuracy. Recall, precision, F1 and ROC-AUC answer different questions. Decision thresholds must be considered when comparing results.
Try the model
The demo runs the saved MLP v2 directly in your browser. It uses fictional examples and never uploads form values. Its 70% decision threshold is a saved model setting. Earlier screenshots and metrics may refer to a different model version or threshold.
Next objective
Compare models using the same data split and threshold-selection procedure.