Customer Churn Prediction - Programming & Databases Project
Github Link: github.com/MetinUnlu/customer_churn
This study is prepared as a first semester project for the Programming and Databases course. It focuses on predicting customer churn, a critical metric in business analytics, indicating the percentage of customers who end their relationship with a company in a given period.
Objectives
The primary aim of this project is to develop a predictive model that can accurately identify potential customer churn. This model can assist in strategizing customer retention initiatives effectively.
Data Source
The dataset for this project is sourced from the BCG Virtual Internship on the Forage platform. It includes features like customer usage patterns, contract details, and demographic information. Key preprocessing steps included handling missing values, feature engineering, and data normalization.
Technologies Used
- Python
- Pandas and Numpy for data manipulation
- Matplotlib and Seaborn for data visualization
- Scikit-learn for model building
- TensorFlow for neural network models
- Streamlit for deploying the web app
Model Information
Various models were explored, including Random Forest Classifier and Sequential Neural Networks. The final model choice was based on the balance between accuracy and computational efficiency.
Results and Observations
The final model achieved a notable precision score in predicting customer churn. Further details and insights are available in the interactive Streamlit application.
How to Run
To run this project locally:
- Clone the repository.
- Install the required dependencies:
pip install -r requirements.txt
- Run the Streamlit app:
streamlit run app.py
Project Demo
The project can be viewed live at Customer Churn Prediction Project.
Contact
For any inquiries or collaboration opportunities, feel free to reach out.