How mdareeb01/customer-churn-prediction-system works
This is a telecom customer churn analytics product: users enter customer details in the Streamlit app, receive an XGBoost prediction with probability and risk, can request an AI interpretation, and can save and explore predictions. The documented data workflow also covers cleaning, feature engineering, model comparison, and evaluation; Power BI provides broader business dashboards. Notebook-to-artifact implementation details were not sampled, so those workflow links follow the README rather than inspected code.
Main entry points: app.py Streamlit application · Telco-Customer-Churn-Clean.csv Cleaned data · customer_churn_dashboard.pbix Power BI dashboards · 01_Data_Understanding_&_Cleaning.ipynb Cleaning and EDA
Components 17
Data and modeling
- Raw telecom data
data/raw/Telco_Customer_Churn.csv - Cleaning and EDA
notebooks/01_Data_Understanding_&_Cleaning.ipynb - Cleaned data
data/processed/Telco-Customer-Churn-Clean.csv - Feature engineering
notebooks/03_Feature_Engineering.ipynb - Model comparison
app/model_comparison.py - Comparison results
artifacts/model_comparison.csv - XGBoost predictor
app/prediction.py - Model and scaler
models/xgboost_model.pkl
Streamlit application
- Streamlit application
app/app.py - Churn explanation
app/ai_assistant.py - Prediction history
app/database.py
Business insights
- Model performance
app/model_performance.py - Evaluation artifacts
artifacts/model_metrics.pkl - Power BI dashboards
powerbi/customer_churn_dashboard.pbix
External services
- MySQL predictions
- Groq API
Other components
- Business user
Connections 17
- Raw telecom data → Cleaning and EDA: clean and explore
- Cleaning and EDA → Cleaned data: produce cleaned data
- Cleaned data → Feature engineering: engineer features
- Feature engineering → Model comparison: evaluate models
- Comparison results → Model comparison: load comparisons
- Business user → Streamlit application: enter customer details
- Streamlit application → XGBoost predictor: request prediction
- Model and scaler → XGBoost predictor: load model assets
- Streamlit application → Churn explanation: request explanation
- Churn explanation → Groq API: request analysis
- Streamlit application → Prediction history: save or retrieve
- Prediction history → MySQL predictions: write and read
- Streamlit application → Model performance: show evaluation
- Evaluation artifacts → Model performance: load metrics and curves
- Business user → Power BI dashboards: explore dashboards
- MySQL predictions → Power BI dashboards: provide prediction insights
- Cleaned data → Power BI dashboards: support customer analytics