ChurnIQ is a Streamlit app that predicts customer churn based on inputted customer details. Using a trained machine learning model, it helps businesses anticipate whether customers will stay or leave Here's a sample README for your Streamlit application:
This application is built to predict customer churn based on customer demographics, account information, and usage patterns. It uses a machine learning model trained in Jupyter Notebook and saved with joblib
. This model is deployed within a Streamlit interface to make it accessible for non-technical users.
- Interactive form to collect customer information.
- Predictions based on various customer attributes (demographics, tenure, billing details, and service usage).
- Clear visual output indicating if a customer is likely to leave (churn) or stay.
- Python 3.8+
- Streamlit
- joblib
- pandas
-
Clone the repository:
git clone https://github.com/RijoSLal/ChurnIQ.git cd ChurnIQ
-
Install the required packages:
pip install -r requirements.txt
-
Run the application:
streamlit run app.py
- Open the application in your browser as directed by Streamlit.
- Enter customer details such as gender, age, tenure, internet service, monthly charges, etc.
- Click on the "Predict" button to get the churn prediction.
- The application will display whether the customer is likely to "stay" or "leave."
The machine learning model used in ChurnIQ was trained using a Jupyter Notebook and saved as model.joblib
. Key steps in the model training include:
- Data Preprocessing: Handling missing values, encoding categorical features, and feature scaling.
- Model Selection: Testing multiple algorithms and selecting the best-performing model based on accuracy and recall metrics.
- Evaluation: Using metrics like accuracy, precision, recall, and F1-score to evaluate the model performance.
The training notebook and additional details on model training are available in this repository.
- Python: Programming language
- Streamlit: Web framework for building interactive applications
- joblib: For model serialization
- pandas: Data manipulation library
- scikit-learn: For model building and evaluation
Feel free to fork the repository and make pull requests with improvements or new features.