We're a major telecom operator. Just like pretty much any company in the world, we are concerned with keeping our customers happy, so they won't leave us. In other words, we want to reduce churn. To do this, we set up a task force of data analysts and people from our business teams who came up with several business goals to reduce churn.
- Get to know our customers better, by accessing the data about their plans and usage, and getting in touch with interesting profiles
- Target clients with more effective advertising based on their usage profiles
- Retrieve customers with very high likeliness of churn so we could get in touch and offer them special deals before they even thought of leaving
How did we do this ?
We had our data science team collect historic data from users on their phone usage, and work on creating features from very large log files. They specified which clients had churned.
They also built the same features for our current clients, so we could deploy the model and predict who would churn.
Because we wanted to do more than just answer the yes no question of "will they churn," we decided to build two models instead of one:
- A first model that segments our customers into relevant groups (by using clustering algorithms), for targeting.
- A second model that uses these segments (clusters) to predict the churn likeliness of each unlabeled customer (by using classification algorithms), so that business units can then check scores on a daily basis and target these customers.