What is Uplift modelling and how can it be done with CausalML?
Uplift modelling is a predictive modelling technique that uses machine learning models to estimate the treatment’s incremental effect at the user level. It’s frequently used for personalizing product offerings, as well as targeting promotions and advertisements. In the context of causal inference, in this article, we will discuss the uplift modelling, its types of modelling and lastly, we will see how a Python-based package called CausalML can be used to address the causal inference. Following are the major points to be discussed in this article. Table of contents What is Uplift modelling?Types of modellingCommon applicationsHow does CausalML do Uplifting?Features of CausalML Let’s start the discussion by understanding the uplift modelling. What is Uplift modelling? Uplift modelling is a predictive modelling technique that predicts the incremental influence of a therapy (such as a direct marketing campaign) on a person’s behaviour. Uplift modelling uses a randomized scientific control to test the efficacy of an intervention as well as build a predictive model that projects the incremental response to the activity. The response could be discrete (for example, a website visit) or continuous (for example, a phone call) (for example, customer revenue). Uplift modelling is a data mining approach that has mostly been utilized for up-sell, cross-sell, churn, and retention operations in the financial services, telecoms, and retail direct marketing industries. Machine learning is used to answer the question, “How likely is the consumer to purchase in the future?” in the propensity to purchase model, which essentially explains a customer’s behaviour toward a given action. This is improved by uplift modelling, which addresses more urgent issues: Did the buyer purchase from me because of my ad?Did I waste money by promoting to customers who had already decided to buy?Has my marketing had a negative impact (negative impact) on the likelihood of someone purchasing? To put it another way, a traditional propensity model (as well as most machine learning algorithms) predicts the outcome (y) based on a set of variables (x). Given certain variables, uplift seeks to determine the influence of therapy (t) on the target (y). The term “uplift” refers to the increased chance of the outcome with the treatment as compared to the outcome without the treatment. We cannot directly perceive this difference or causal effect but must deduce it through an experiment. As indicated in the picture below, it is highly beneficial to visualize a 2 x 2 matrix with four kinds of persons (say) to be classed as (a) Persuadable, (b) Sure Thing, (c) Do-Not-Disturb, and (d) Lost Cause. Uplift model matrix We target the “a” demographic, those who are Persuadable, in order to encourage the desired reaction. The treatment is either ineffective or wasteful for everyone else, including the Do-Not-Disturbs. It’s risky to “wake a sleeping dog” by contacting the Do-Not-Disturbs. Finding persuadable is the goal of uplift modelling. Of course, uplift modeling may be used to model any projected outcome, human or not, such as the influence of fertilizer on crop yields or the sending of political campaign emails. Uplift modelling focuses on the effectiveness of the treatment, whereas typical predictive modelling focuses on the result. Then you may focus your efforts on the cases that are most likely to benefit you. Types of modelling Direct modelling and indirect modelling are the two basic approaches here. The fundamental difference between the two approaches is how uplift models are measured and evaluated. Direct modelling In direct modelling, we “directly” model the difference in probabilities between two distinct groups. There are numerous approaches to this, almost all of which rely on tree-based algorithms that have been slightly modified to accommodate uplift modelling. Tree-based models are ideal because they naturally model at the group level by iteratively splitting a group into two groups with each splitting decision. Unlike traditional tree-based models, which are designed to divide data into smaller and smaller homogeneous groups, uplift models are designed to divide our customers into heterogeneous groups each time they split (by maximizing a measure of uplift). They employ various splitting criteria, such as Kullback-Leibler divergence, Euclidean Distance, p-value, and Chi-squared Distance. Hundreds of trees would be fitted in an ensemble fashion, similar to traditional tree-based methods. Indirect modelling Regular response models are repurposed to infer uplift using indirect uplift modelling techniques (meta-learners), which can be based on any base algorithm. We are modelling the expected value of the response for different treatments, rather than attempting to optimize some measure of uplift directly. For our Direct Mail campaign, we would calculate the probability that the customer will use their credit card if the DM is sent, and the probability that they will use their product if the DM is not sent. The estimated uplift is the difference between the two estimated probabilities. In practice, this can be a two-model approach (a separate model fitted to all control/treatment groups) or a unified model (a single model with the allocated treatment part of the feature space). Common applications Below are some of the possible applications that are briefed about various industries. Uplift modelling can help understand how treatments may impact certain groups differently than simply comparing the results to the entire treatment group vs control group. Also, how much do these effects differ? A company wants to save customers who are about to churn by reaching out to them. When reaching out to customers, the company wants to avoid upsetting them further by focusing only on high-risk savable customers. A corporation wants to execute a cross-sell campaign, but they don’t want to cross-sell to everyone because resources are limited and some customers may not need or want the other products. A corporation has a lead database, but it generates more leads than it can work, and many of the leads are a waste of time – agents may now work leads in any order they like. How does CausalML do Uplifting? CausalML is a Python module that provides a suite of uplift modelling and causal inference tools that are based on cutting-edge research and machine learning algorithms. Traditional causal analysis approaches, such as performing t-tests on randomized trials (A/B testing), can estimate the Average Treatment Effect (ATE) of a treatment or intervention. However, in many applications, estimating these impacts at a finer scale is frequently desirable and useful. CausalML can be used by the end-user to estimate the Conditional Average Treatment Effect (CATE), which is the effect at the individual or segment level. Such estimates can enable a wide range of applications for personalization and optimization by applying different treatments to various users. Uplift modelling is a crucial modeling approach made possible by CausalML. Uplift modeling is a causal learning approach for estimating an experiment’s individual treatment effect. Using experimental data, the end-user can calculate the incremental impact of a treatment (such as a direct marketing action) on an individual’s behaviour. For example, if a corporation is deciding between many product lines to up-sell / cross-sell to its clients, CausalML can be used as a recommendation engine to identify products that yield the maximum expected lift for each given user. CausalML provides a consistent API for running uplift algorithms, making it as simple as fitting a standard classification or regression model. The included metrics and visualization functions, such as uplift curves, can be used to assess model performance. The first version of CausalML includes eight state-of-the-art uplift modelling algorithms (shown in the below figure). Source Features of CausalML Targeting optimization, engagement personalization, and causal impact analysis are just a few of the use cases for CausalMLs. Targeting optimization We may use CausalML to target promotions to the people who will bring the most value to the company. For example, we can provide promotions to consumers who are more likely to utilize a new product as a result of exposure to the promotions in a cross-sell marketing campaign for existing customers. Causal impact analysis We can also use CausalML to examine the causal impact of a specific event using experimental or observational data with rich attributes. For example, we can examine how a customer cross-sells event influences long-term platform expenditure. Personalization To personalize engagement, CausalML can be employed. A corporation can communicate with its customers in a variety of ways, such as offering up-sell options or using message channels for interactions. CausalML can be used to assess the effect of each combination for each client and present customers with the most customized offers possible. Final words Through this article, we have discussed model uplifting which is basically a technique that models the user’s behaviour by applying some intervention along with input variables. We have also discussed its major types of modelling and some applications where it can be applied. In this article, we have discussed a python package called CausalML which gives a path to practically implement causal inference or uplifting. For more understanding of implementing the uplift modelling with CausalML, you can refer to their GitHub repository where they have listed many implementation examples. References Uplift modellingCausalML research paperCausalML repository
In this article, we will discuss the uplift modelling, its types of modelling, and Python-based package called CausalML can be used to address the causal inference.
In this article, we will discuss the uplift modelling, its types of modelling, and Python-based package called CausalML can be used to address the causal inference.
["causal inference", "Machine Learning", "predictive modelling"]
["Go", "API", "machine learning", "AI", "ML", "Machine Learning", "Git", "RAG", "Python", "causal inference", "predictive modelling", "GitHub", "R"]
["AI", "machine learning", "ML", "RAG", "Python", "R", "Go", "Git", "GitHub", "API"]
Vijaysinh is an enthusiast in machine learning and deep learning. He is skilled in ML algorithms, data manipulation, handling and visualization, model building.