Skip to content

prashanth316/ANN-Customer-Churn-Classification

Repository files navigation

🧠 ANN Customer Churn Classification 📖 Overview

This project implements an Artificial Neural Network (ANN) to predict customer churn for a subscription-based business. The model is trained on customer demographic and service usage data to classify whether a customer is likely to leave (churn) or stay (retain).

The project demonstrates how to preprocess categorical and numerical data, train a deep learning model, and deploy it using Streamlit for interactive predictions.

🛠️ Tech Stack 🔹 Programming & Libraries

Python

TensorFlow / Keras

NumPy, Pandas

Scikit-learn

🔹 Visualization

Matplotlib, Seaborn

🔹 Deployment

Streamlit

🔹 Model Files

ANN model saved as .h5

Encoders & scalers saved as .pkl

📂 Folder Structure ANN-Customer-Churn-Classification/ │── .devcontainer/ # Development container settings │── .streamlit/ # Streamlit configuration files │── Churn_Modelling.csv # Dataset │── LICENSE # Project license │── README.md # Project documentation │── app.py # Streamlit app for deployment │── experiments.ipynb # Notebook for model experimentation │── prediction.ipynb # Notebook for predictions │── model.h5 # Trained ANN model │── label_encoder_gender.pkl # Encoder for gender feature │── onehot_encoder_geo.pkl # Encoder for geography feature │── scaler.pkl # Feature scaler │── requirements.txt # Dependencies

🚀 Features

✅ Predicts whether a customer will churn or stay. ✅ Preprocessing of categorical (gender, geography) and numerical features. ✅ ANN built with multiple dense layers. ✅ Model deployed using Streamlit with a user-friendly interface. ✅ Encoders and scalers stored for consistent preprocessing.

▶️ Installation & Setup

Clone the repository

git clone https://github.com/prashanth316/ANN-Customer-Churn-Classification.git cd ANN-Customer-Churn-Classification

Install dependencies

pip install -r requirements.txt

Run the Streamlit app

streamlit run app.py

Open in browser:

http://localhost:8501

📊 Example Output

Input: Customer details (age, geography, gender, balance, credit score, etc.)

Output:

Churn Prediction: Yes / No

Probability Score: e.g., 78% chance of churn

🔮 Future Enhancements

Add more customer features for improved accuracy.

Implement XAI (Explainable AI) to explain predictions.

Deploy the model as a REST API for integration with other systems.

👤 Author

Developed by Prashanth Reddy Kondapuram

About

Artificial Neural Network (ANN) based customer churn prediction model with preprocessing, training, and deployment using Streamlit.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors