👉 Deployment Link
| Name | Education | Specialization |
|---|---|---|
| Ravi Raj | B.Tech 3rd Year | Artificial Intelligence & Machine Learning |
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.
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
| 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 |
---
| 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 |
| 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
---
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
| 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
| Industry | Use Case |
|---|---|
| Banking | Predict customer account closure |
| Telecom | Predict user switching |
| SaaS | Subscription churn detection |
| E-commerce | Identify inactive customers |
Through this project I learned:
- Artificial Neural Networks
- Data preprocessing techniques
- Model serialization
- Machine Learning deployment
- Building interactive apps with Streamlit
If you found this project useful, please give it a star ⭐ on GitHub.
Repository Link:
https://github.com/ravicoder01/ANN-churn-prediction