How akshayetukuri/customer-churn-predictor works
This is a telecom customer-churn prediction dashboard backed by a trained XGBoost model. The primary workflow is customer profile entry, feature preparation and scaling, churn-risk inference, and a SHAP explanation. The README also describes a notebook-based data and model-development workflow. The notebook’s individual implementation details were not sampled, so those stages and their sequence are included only as documented.
Main entry points: app.py Streamlit dashboard · xgb_model.pkl XGBoost model · Telco_customer_churn.xlsx Customer dataset · churn_prediction.ipynb EDA and modeling
Components 16
Data and modeling
- Customer dataset
archive/Telco_customer_churn.xlsx - EDA and modeling
churn_prediction.ipynb - Feature engineering
churn_prediction.ipynb - SMOTE balancing
churn_prediction.ipynb - Model comparison
churn_prediction.ipynb
Risk prediction
- XGBoost model
xgb_model.pkl - Feature scaler
scaler.pkl - Feature schema
feature_names.pkl - Streamlit dashboard
app.py - Customer profile
app.py - Encode and scale
app.py - Churn probability
app.py - Risk result
app.py
Prediction explanation
- SHAP analysis
app.py - Feature impact plot
app.py
Other components
- Analyst
Connections 24
- Analyst → Streamlit dashboard: uses
- Streamlit dashboard → Customer profile: collects
- Streamlit dashboard → Feature schema: loads
- Streamlit dashboard → XGBoost model: loads
- Streamlit dashboard → Feature scaler: loads
- Streamlit dashboard → Encode and scale: prepares features
- Customer profile → Encode and scale: provides values
- Feature schema → Encode and scale: defines columns
- Feature scaler → Encode and scale: scales values
- Streamlit dashboard → XGBoost model: predicts probability
- Encode and scale → XGBoost model: provides features
- Streamlit dashboard → Risk result: renders
- XGBoost model → Churn probability: returns probability
- Churn probability → Risk result: sets risk band
- Streamlit dashboard → SHAP analysis: explains prediction
- XGBoost model → SHAP analysis: explains with model
- Encode and scale → SHAP analysis: provides features
- SHAP analysis → Feature impact plot: produces
- Analyst → Customer dataset: provides data
- Customer dataset → EDA and modeling: analyzes
- EDA and modeling → Feature engineering: performs EDA
- Feature engineering → SMOTE balancing: creates features
- SMOTE balancing → Model comparison: balances data
- Model comparison → XGBoost model: selects XGBoost