This project aims to develop a machine learning model using PySpark to accurately predict customer churn in a telecom company. The model will help proactively identify customers at risk of leaving, enabling the company to implement targeted retention strategies and improve overall business performance.
The telecom customer dataset used for this project contains the following features:
- Gender: Gender of the customer.
- Age: Age of the customer.
- Contract: Type of contract (e.g., Month-to-Month, One Year, Two Year).
- MonthlyCharges: Monthly charges paid by the customer.
- TotalCharges: Total charges paid by the customer.
- Churn: Churn status (Yes or No). Please refer to the "telecom.csv" file for the dataset.
To run the project, follow these steps:
- Install the necessary dependencies, including PySpark.
- Download the "telecom.csv" dataset and ensure it is in the same directory as the Python script.
- Open the "telecom_churn_prediction.py" file and review the code. * Modify the code as needed, such as adjusting the hyperparameter grid, feature engineering techniques, or trying different algorithms.
- Run the script using a PySpark environment.
- Once the script finishes execution, it will display the accuracy of the model on the testing data.
- Use the evaluation metrics to assess the performance of the model, including accuracy, precision, recall, and F1-score.
- Document the project findings, challenges faced, and lessons learned in a final report.
Document the project findings, challenges, and lessons learned in a final report. Include details about the dataset, preprocessing steps, feature engineering techniques applied, model selection process, hyperparameter tuning, and evaluation results. Summarize the project's outcome, highlighting the achieved accuracy and the effectiveness of the model in predicting customer churn. Provide recommendations for further improvements or areas of exploration.