ahmedshahriar / Customer-Churn-Prediction

Extensive EDA of the IBM telco customer churn dataset, implemented various statistical hypotheses tests and Performed single-level Stacking Ensemble and tuned hyperparameters using Optuna.

Home Page:https://share.streamlit.io/ahmedshahriar/Telco-Customer-Churn-Prediction-Streamlit-App/main/app.py

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

IBM Telco Customer Churn Prediction

Made with Jupyter Open in HTML Binder Live in Streamlit

The objective of this notebook is to present an extensive analysis of the IBM Customer Churn Dataset and to predict the customer churn rate.

Dataset Source

Streamlit App repository

You can also view this notebook on kaggle

  1. Churn Prediction I : EDA+Statistical Analysis
  2. Churn Prediction II : Triple Boost Stacking+ Optuna

This project also serves as assignments for the courses below -

  1. IBM Exploratory Data Analysis for Machine Learning
  2. IBM Supervised Machine Learning: Classification

Summary

  • Dataset mostly has categorical variables
  • Data is not normally distributed, performed Nonparametric Statistical tests
  • Performed statistical hypothesis test to check correlation , multicollinearity
  • Imbalanced dataset, did experiment with different sampling techniques(e.g stratifying, imblearn - SMOTE etc)
  • Tuned Hyperparameters using Optuna
  • Performed single level Stacking Ensemble with Triple Gradient boosting algorithms and classic algorithms
  • Number of months the customer has stayed with the company (tenure) and the contract term of the customer (contract) are the most important features that have strong correlation with churn of the customer
  • Results from statiscial hypotheses testing reflects similarity with model feature importance
  • With 80/20 train/test split triple boosting stacking ensemble model achieved an AUC of ~0.85

Built With

optuna==2.10.0
xgboost==0.90
catboost==1.0.1
lightgbm==2.2.3
plotly==4.4.1
scipy==1.7.1
scikit-learn==0.22.2.post1

About

Extensive EDA of the IBM telco customer churn dataset, implemented various statistical hypotheses tests and Performed single-level Stacking Ensemble and tuned hyperparameters using Optuna.

https://share.streamlit.io/ahmedshahriar/Telco-Customer-Churn-Prediction-Streamlit-App/main/app.py

License:Apache License 2.0


Languages

Language:HTML 54.1%Language:Jupyter Notebook 45.9%