Logo

The Data Daily

Modeling customer conversion with causality

Modeling customer conversion with causality

The curse of dimensionality is a well-known issue when modeling dataset with many features, particularly model which requires statistical significance. Features, however, could not be our enemy because they provided a description of customers, for example, to enrich our understanding of a business. Therefore, a reasonable way to select features for a particular task became the question that will be discussed in this article.

Auto-encoder or Principle Component Analysis (PCA) are some popular methods to capture the essence of the original set of features and produce a new set but with less number of features. However, they fall short in interpretation, as each of the converted features become a mixture of the original ones thus lose their physical meaning. My approach with causality, however, does not “compress” features but to offer a graphical view of relationship between the features and the predicting variable, such that one might select features that affect immediately the predicting variable as their modeling predictors.

A causal model has a directed graph representation to describe causal relations between the features, such as one below:

If such model is established with some rich statistics, then one might argue that instead of modeling the “income” with all other 3 features, perhaps using only “experience” and “education” would have been sufficient as they are the factors that causes the predicted variable “income”.

While the details may be referred to the book [1] by Pearl, the IC* algorithm begins with a graph where all features are inter-connected, then disconnects two features whenever a conditional independence for the two features is discovered, leaving a partially connected and undirected graph.

Simply connected does not speak which is causing which, therefore, the algorithm next discovers causal relationship.

Firstly, as long as there are three connected features (A — B — C) but A and C are conditionally independent given a set of features excluding B, then we can change the connections into arrows as (A -> B

Images Powered by Shutterstock