Skip to content

Eswarpuli/bank-customer-churn-prediction

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

7 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ“Š Bank Customer Churn Prediction (ML Web App)

πŸ”— Live Demo on Streamlit Cloud

This project is a machine learning web application that predicts whether a bank customer is likely to churn. The app is built using Streamlit and powered by a Random Forest classifier trained on customer data.


πŸš€ Features

  • Upload a CSV file containing customer data
  • Predict churn using a trained ML model
  • View predictions in a simple web interface
  • Reusable .pkl model for fast inference
  • Organized project structure with dataset included

πŸ“‚ Project Structure

bank-customer-churn-prediction/ β”‚ β”œβ”€β”€ app.py # Streamlit app β”œβ”€β”€ random_forest_churn_model.pkl # Trained ML model β”œβ”€β”€ requirements.txt # Required Python libraries β”œβ”€β”€ README.md # Project documentation β”œβ”€β”€ streamlit_ui.png # Screenshot of the app β”œβ”€β”€ dataset/ # Folder containing data files β”‚ β”œβ”€β”€ churn_data.xlsx # Dataset used for training β”‚ └── sample_input.xlsx # Sample file for upload testing


Model Overview

I trained multiple classification models including:

  • Logistic Regression
  • Support Vector Machine (SVM)
  • Random Forest βœ…

Random Forest gave the best performance:

  • Accuracy: 85%
  • Precision: 83%
  • Recall: 81%

So it was selected for final deployment.


🧰 Tech Stack

  • Python
  • Pandas, Scikit-learn
  • Streamlit
  • Joblib

Dataset

The dataset includes customer demographic details, account activity, and churn labels. It's located in the dataset/ folder:

churn_data.xlsx – Used for training

sample_input.xlsx – Used for testing with the app

About

Machine learning app to predict bank customer churn using Streamlit and Random Forest

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages