Improving marketing campaigns by identifying hidden patterns in customer relationship

@ Orange


After the teams showcased a first ML project, we were entrusted with two projects, including this one, that we carried out for the Orange's B2B marketing department.


Clients can use multiple channels to obtain informations or contact Orange : Call customer service, visit the website or visit the mobile app.

According to statistcs and surveys, the habit of using digital channels (website, app) was still relatively low among Orange's B2B clients.

However, using digital channels would mean smoother experience for the client and savings for Orange.

We were asked to build an algorithm to automatically classify users in meaningful groups based on their interaction patterns. This classification could then be used to send personalized communications to help clients develop the habit of using digital channels.


We first tried to imagine a score to classify clients but it didn't prove to be successful.

We then used unsupervised learning to solve this problem.

An important part of the project was to engineer meaningful features that cound help the algorithm better undertand the clients's behavior.

We finally identified 4 meaningful classes of clients, and 10 sub-classes.


In this case, feature engineering and unsupervised learning proved more successful that human-designed scoring.

For each identified class we counld analyse the habits of the clients and identify actions to help each group progress toward more use of digital.

Personalized marketing campaigns were launched based on the results of this project.

Tools & methods :

Hadoop, Hive, Scala, Spark, Spark ML, Spark MLlib, Unsupervised learning, k-means.

Interested in cooperation or would like to discuss anything ?