Customer Churn

Introduction

This use case demonstrates a simple version of churn prediction, in the context of customer retention in telecom sector. We receive customer details such as demographics, customer category, usage history, and need to predict if customer is going to churn.

Video Walkthrough

Problem Description

  • Expanding customer base is key to a telecom company, both to survive, and to provide effective service to its customers
  • Retaining existing customers is important because it is easier and cheaper than acquiring new customers.

Customer can churn for many reasons such as bad customer service, incorrect plan, better plans from competitor, etc.

Data Schema

The following table describes the attributes used to train this model.

# Column Type Description
1 state Categorical State name
2 account_length Continuous Length of the account
3 area_code Categorical e.g. Bangalore 080
4 phone_number Continuous Phone number
5 international_plan Categorical Indicates if customer has opted for international plan
6 voice_mail_plan Categorical Indicates if customer has opted for voice mail plan
7 number_vmail_messages Continuous Number of voice mail messages for this customer
8 total_day_minutes Continuous Talk time (in minutes) during day time
9 total_day_calls Continuous Number of calls by this user during day time
10 total_day_charge Continuous Charge for calls during day time
11 total_eve_minutes Continuous Talk time (in minutes) during evening
12 total_eve_calls Continuous Number of calls by this user during evening
13 total_eve_charge Continuous Charge for calls during evening
14 total_night_minutes Continuous Talk time (in minutes) during day time
15 total_night_calls Continuous Number of calls by this user during day time
16 total_night_charge Continuous Charge for calls during day time
17 total_intl_minutes Continuous Talk time (in minutes) for international calls
18 total_intl_calls Continuous Number of international calls
19 total_intl_charge Continuous Charge for calls during day time
20 customer_service_calls Continuous Number of times the customer has called customer care

How to setup in platform

This is available as a sample project in Razorthink AI. Follow the steps below to run inference on this model:

  1. Sample inference file customer-churn-inference.csv is available in Community Space section of the Workspace. Copy this file to My Space by clicking on the copy-to-my-space button on the right. This file has the same attributes as described above.
  2. Open the sample project named CUSTOMER CHURN and run the pipeline named: Inference Pipeline.
  3. The result of this inference will be saved in My Space in a file named: customer-churn-result.csv with a column named churn_propensity.
  4. You can run inference with your own data (ensure that all the attributes listed above are present) by uploading your CSV file to My Space and updating fileName attribute of DataSource and DataTarget in the run parameters of Inference Pipeline. You can change the run parameters in the screen prompted when you click on the run icon of the pipeline.