This machine learning project predicts customer churn using advanced data analysis and predictive modeling techniques. Deployed as an interactive web application using Streamlit, the project provides actionable insights into customer retention strategies.
- 🌟 Project Description
- 💻 Installation
- 🚀 Deployment
- 🗃️ Data
- 🤖 Model
- 🔍 Usage
- 📊 Results
- 🤝 Contributing
- 📜 License
Customer churn is a critical business challenge. This project offers:
Feature | Description |
---|---|
🔮 Churn Prediction | Machine learning model to forecast customer attrition |
📊 Interactive Dashboard | Streamlit web app for real-time predictions |
🕵️ Insights Generation | Detailed analysis of churn factors |
- Python
- Pandas
- Numpy
- Matplotlib
- Plotly
- Scikit-learn
- Streamlit
- TensorFlow
- Python 3.8+
- pip
- Clone the Repository:
git clone https://github.com/ItsTSH/Customer-Churn-Prediction
- Create Virtual Environment (optional but recommended):
python -m venv venv
source venv/bin/activate # On Windows, use `venv\Scripts\activate`
- Install Dependencies:
pip install -r requirements.txt
# Run the Streamlit app
streamlit run app.py
- Source: Kaggle
- Features:
- Customer demographics
- Usage patterns
- Service interactions
- Target Variable: Churn (Yes/No), Risk of Churn
- Random Forest Classifier (For Feature Importance Analysis)
- XGBoost Regressor (For Predictions)
- Mean Squared Error (MSE)
- Root Mean Squared Error (RMSE)
- Mean Absolute Error (MAE)
- R² Score
- Perform Data Analysis on the Dashboard Page
- View Model Predictions in the Predictions Page
- Receive churn prediction and insights
# Train the model
python ./model/Customer_Churn_Prediction.py
# Run predictions
python ./model/Customer_Churn_Prediction.py --input ./dataset/dataset.csv
- Evaluation Metrics (XGBoost Regression Model):
- Mean Squared Error (MSE): 0.0450
- Root Mean Squared Error (RMSE): 0.2120
- Mean Absolute Error (MAE): 0.1292
- R² Score: 0.8168
Contributions are welcome! Please follow these steps:
- Fork the repository
- Create a feature branch
git checkout -b feature/AmazingFeature
- Commit your changes
git commit -m 'Add some AmazingFeature'
- Push to the branch
git push origin feature/AmazingFeature
- Open a Pull Request
Distributed under the MIT License. See LICENSE
for more information.
-
📧 Email: [tejindersingh0784@gmail.com]
-
🔗 GitHub: [https://github.com/ItsTSH]
-
📧 Email: [sashankskmishra@gmail.com]
-
🔗 GitHub: [https://github.com/sskm664]
-
📧 Email: [suyashart30@gmail.com]
-
🔗 GitHub: [https://github.com/SuyashArt]
⭐ If you find this project helpful, please consider starring the repository! 🌟