Skip to content
Custom Churn

Custom Churn

An app that allows businesses or users to predict customer churn by providing customer features as input. A full-stack machine learning project starting from raw data, EDA to deployment.

Created on 11th May 2023

Custom Churn

Custom Churn

An app that allows businesses or users to predict customer churn by providing customer features as input. A full-stack machine learning project starting from raw data, EDA to deployment.

The problem Custom Churn solves

Customer Churn is a rising challenge faced by companies, where existing customers or users leave the company. This project provided an in-depth analysis of the features used to predict if a customer will churn from a company. Various insights about the data were obtained using frameworks like pandas and ydta-profiling. EDA was followed by a feature engineering stage, and the data was then ready for modelling using scikit-learn. Since the target classes showed an imbalance, the imblearn package was used to handle the skewed target feature. The performance of 4 models was compared; namely RandomForestRegressor, XGBoost, Gradientboost, and RidgeRegression. The XGBoost model was found to have the comparatively best performance. The model was then deployed using Streamlit, where live predictions can be obtained based on input feature values by the user.

Hence this is a great solution for businesses looking to use Machine Learning to decrease their customer churn. This project is a suitable business solution, due to its scalability, lightweight and user-friendly application. It uses a minimal set of features that can easily by extracted from customer data to provide the prediction. The EDA conducted was able to provide solutions to mitigate customer churn by identifying the precursors and conditions that make a customer more likely to churn. Hence this helps with preventing customers from churning, which is a far cheaper solution than bringing back customers who have already churned from the company. This project takes into account business strategies and goals while also developing the best possible solution for the problem. This project can be personalized to fit different companies, depending on the data and features they provide.

Challenges I ran into

The main challenge faced was the target feature imbalance. This was overcome using the imblearn package. The imblearn package allows you to work with data where the target features shows an imbalance.

Discussion

Builders also viewed

See more projects on Devfolio