This is the implementation of my project for the course machine-learning-zoomcamp from DataTalksClub. The goal of this project is to deploy a web service for a machine learning model for customer churn in a Telco company.
Customer churn is a important topic for the bottom line of most companies providing Business-to-Customer (B2C) services.
The dataset used for this project has been sourced from Kaggle (see link).
This repository has the following files:
- The
data
folder contains the dataset used in this project. - The
src
folder contains the source code for the project. - The
web-service
folder contains the code for deploying the trained model as a web service withDocker
andFlask
. - The
images
folder contains screenshots and other images used in thisREADME.md
file. - The
Dockerfile
defines the Docker image for the project, specifying the environment and dependencies required to run the code. - The
requirements.txt
lists all the Python dependencies required for the project.
To get started with this project, do the following in the terminal:
- Clone the repository:
git clone https://github.com/victornemenike/telco-customer-churn-prediction.git
- Navigate to the project directory:
cd telco-customer-churn-prediction/
To prepare the project and install all dependencies, run the following:
- Set up the environment:
Ensure you have a Python environment set up. You can create a virtual environment using:
python3.11 -m venv venv
source venv/bin/activate # On Windows use `venv\Scripts\activate`
For more details on how the project was implemented, please see the Implementation Details section below.
Amazon Web Services was used as the cloud provider for the model deployment.