Skip to content

ravicoder01/ANN-churn-prediction

Repository files navigation

📊 ANN Customer Churn Prediction

Python TensorFlow Streamlit Machine Learning

🚀 Live Application

👉 Deployment Link

🚀 Live Application

Streamlit App

👨‍💻 Author

Name Education Specialization
Ravi Raj B.Tech 3rd Year Artificial Intelligence & Machine Learning

📌 Project Overview

Customer churn prediction helps businesses identify customers who are likely to leave their services.

This project uses an Artificial Neural Network (ANN) model built with TensorFlow/Keras to predict whether a bank customer will churn or not.

The model is deployed using Streamlit, allowing users to interactively input customer details and get predictions instantly.


🎯 Objective

The goal of this project is to:

  • Predict whether a customer will leave the bank
  • Help businesses reduce customer churn
  • Build a real-world Deep Learning application
  • Deploy the model as an interactive web app

🧠 Machine Learning Workflow

Steps Description
Data Collection Customer churn dataset
Data Preprocessing Encoding categorical features
Feature Scaling StandardScaler used
Model Building Artificial Neural Network
Model Training TensorFlow / Keras
Model Deployment Streamlit Web App

# 🏗️ Tech Stack

|      Technology    |        Usage        |
|--------------------|---------------------|
| Python             | Programming         |
| TensorFlow / Keras | Deep Learning       |
| Pandas             | Data processing     |
| NumPy              | Numerical operations|
| Scikit-Learn       | Preprocessing       |
| Streamlit          | Web App             |
| GitHub             | Version Control     |

---

📊 Features Used

Feature Description
CreditScore Customer credit score
Geography Customer location
Gender Male / Female
Age Customer age
Tenure Years with bank
Balance Account balance
NumOfProd. Number of bank products
HasCrCard Credit card ownership
IsAct.Member Active membership
EstimatedSalary Customer estimated salary

🧩 Model Architecture

Layer Details
Input Layer Customer Features
Hidden Layer 1 Dense + ReLU
Hidden Layer 2 Dense + ReLU
Output Layer Sigmoid (Binary Classification)

# 📂 Project Structure
ANN-churn-prediction
│
├── app.py
├── eda.ipynb
├── model.h5
├── scaler.pkl
├── label_encoder_gender.pkl
├── onehot_encoder_geo.pkl
├── requirements.txt
├── Churn_Modelling.csv
└── README.md


---

⚙️ Installation

Clone the repository

git clone https://github.com/ravicoder01/ANN-churn-prediction.git

Go to project directory

cd ANN-churn-prediction

Install dependencies

pip install -r requirements.txt

Run the Streamlit application

streamlit run app.py


📈 Example Prediction

Input Example
Credit Score 650
Geography France
Gender Male
Age 35
Balance 60000

Output

Prediction: Customer likely to stay

or

Prediction: Customer likely to churn


🌍 Real World Applications

Industry Use Case
Banking Predict customer account closure
Telecom Predict user switching
SaaS Subscription churn detection
E-commerce Identify inactive customers

📚 Learning Outcomes

Through this project I learned:

  • Artificial Neural Networks
  • Data preprocessing techniques
  • Model serialization
  • Machine Learning deployment
  • Building interactive apps with Streamlit

⭐ Support

If you found this project useful, please give it a star ⭐ on GitHub.

Repository Link:

https://github.com/ravicoder01/ANN-churn-prediction


About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors