A Peek Behind the Curtain of AI for Personalization in Adobe Target

Image source: Adobe Stock / Marqs.

At Adobe Summit in Las Vegas this spring, my colleague and Adobe Target product manager Shannon Hamilton and I co-presented in a session titled “Adobe Sensei in Adobe Target: Automating A/B Testing and Personalization.” We wanted to deepen attendees’ understanding of artificial intelligence (AI) and machine learning. Shannon recently wrote a post that described one aspect of that session — how to augment the data set available to use in AI personalization, and how Adobe Target gets that data ready to feed our machine-learning personalization models, such as the ones built using Auto-Target, and Automated Personalization, two Adobe Sensei-driven capabilities of Adobe Target.

I want to continue this AI deep dive by going into detail about the algorithms that Adobe Target uses in its Auto-Target and Automated Personalization activities. To set the stage for that discussion, I first want to define some key AI terminology. I’ll then tie that into the discussions of the algorithms that Adobe Target uses, and how they actually work. By giving you a peek behind the curtain of AI for personalization in Adobe Target, I hope you’ll better understand how it works, feel more comfortable with it, and use it more.

Time to enter the classroom for AI 101…

The machine-learning algorithm and the model it builds

You probably know that the AI, or more specifically, the machine-learning capabilities in Adobe Target rely on algorithms. An algorithm is a specific technique for solving a problem. With an Auto-Target or Automated Personalization activity, the “problem” we want to solve is determining that best experience or offer for each visitor. An example of an algorithm is the Random Forest algorithm, which takes a specific approach to using a set of training data to build a model that’s designed to help solve a problem.

Training data is just the data you provide the algorithm, so the values in that data can obviously differ depending on the data set you provide. You can probably see that you could build many models by processing different data sets through the very same algorithm.

Once a model is built, you can flow more data into it, and in the case of Auto-Target or Automated Personalization, let it use that data to determine the best experience or offer to show each visitor. That’s a simplified explanation, because as you’ll read later, the model may continuously adjust as you feed it more training data while simultaneously using it to predict.

Supervised versus unsupervised machine learning

Machine learning can be divided into two types, supervised and unsupervised. Supervised machine learning includes a target feature — something about which we’re trying to understand relationships based on other data. Unsupervised machine learning lacks a focused goal — instead, it tries to cluster together like records, such as visitors, or like features of your data.

Often, supervised machine learning has a goal of predicting something — for example, which visitor attributes lead them to convert more for specific offers. Unlike unsupervised machine learning, supervised learning can use data with past information about the target feature like data about users, the offers shown to them, and whether or not they converted. Auto-Target and Automated Personalization both use supervised machine learning.

You can further divide supervised machine learning into a single model or an ensemble model. Examples of a single model include deep learning, decision trees, logistic regression, and linear regression. An ensemble model is a collection of single models that combine to intelligently predict together. While single models can work very well, depending on the business problem they’re trying to solve and the specific data set used with them, ensemble models typically do better because they tend to reduce model bias and variance.

The Random Forest algorithm builds an ensemble model, and is one of the algorithms that Adobe Target uses in its Auto-Target and Automated Personalization activities. Our data scientists selected Random Forest because their research and research in academia shows that it has great predictive power without being overly sensitive to the specific data set used with it.


Scoring is the value that the model believes a given individual will have for a target feature. In our example above, where we’re trying to predict how well our experiences or offers will work for a given visitor, the score is the predicted value of each experience or offer for a given individual. These scores determine which experience or offer is the best to deliver a new visitor to the activity, whether it’s on a website page, app, set top box, kiosk, or even a voice assistant response.

Now let’s jump into how Adobe Target uses a wide range of data science approaches and machine learning, including the Random Forest algorithm, in its Adobe Sensei-driven personalization. To simplify the discussion, instead of talking about personalizing “experiences and offers,” I’ll more generically talk about personalizing “content.”

Understanding how Adobe Target uses machine learning

Adobe Target uses data science and machine learning in four main ways: to build the model, score the model, serve the content, and interpret the model. The first three happen sequentially, and are the topic of this post. The fourth, which I’ll discuss in an upcoming post, helps you overcome the “black box” issue of AI in which you don’t know why the algorithm made the choices that it made.

With that, let’s start with the first step.

Step 1: Model Building. In this step, Adobe Target uses your training data set — that’s all the behavioral data you have from your control traffic — to build a personalization model using the Random Forest algorithm.

An ensemble algorithm, Random Forest is a collection of “trees.” Each tree is trained on a different subsample of the training data. The number of trees you have determines the number of subsamples of the training data you will have. Each tree has a subsample of the rows and columns of the sample data, and as a result will have learned something a little different about the relationship of the target feature to the training data. The diagram at the top of this article provides a good visual of these trees.

Step 2: Model Scoring. At this point, Adobe Target scores the affinities for each visitor for each piece of content. Target then asks each tree in the forest, “Is Sarah more likely to convert for Experience A?” Let’s say you have 100 trees in your forest — 63 say yes and 37 say no, which gives that visitor a score of 63/100, or 0.63, for that particular piece of content. The majority vote and score says, “Yes, Sarah is likely to convert for that content.” With Random Forest, this is how the prediction happens.

This approach is powerful because while some trees may make mistakes about some users — perhaps they pick up on incorrect patterns — with a majority vote, for the mistake to happen for the entire forest, 51 trees have to make the exact same mistake. The mistake of a few trees is typically cancelled out by the ensemble, making the Random Forest a very robust and powerful personalization model.

Step 3: Content Serving. Once the model has been built and affinity scores for each visitor and piece of content are determined, Adobe Target needs to figure out what specific content to show each visitor.

If we were only doing this for a single point in time for one visitor, we could just apply the model scoring to deliver the best piece of content to that visitor. But in reality, many visitors continually come to your digital property and take different actions while there. The data is constantly flowing in, and things change — holiday seasons occur, the weather changes, politics change, the visitor buys something or reads an article and is no longer interested in it, and so on. The content that works best for a visitor at one point in time may not always be what works best at some other point in time. And by sheer bad luck, a great piece of content may not have yet emerged as the winner it really is. So do you explore the data further or exploit what you know about it right now?

This conundrum is often referred to as the multi-armed bandit problem. A “one-armed bandit” is a gambling slot machine, and often if you play the slot machines, you will first put the same amount of money into several machines. If one machine pays off better than the others, you might continue to put your money into that machine. However, you may wonder if one or more of the other machines was actually even better, but just didn’t pay out as well on that first round. You’d never know unless you explored those machines more. This is the classic “explore versus exploit” question.

You have to decide how often to exploit the knowledge you have about your visitors’ behavior versus forgoing that immediate reward to explore a possibly even higher rewarding, but not-yet-explored direction. Target uses two different strategies to address this conundrum — the Epsilon Greedy and Thompson Sampling approaches.

So once Adobe Target has built the machine-learning models and a new visitor arrives at your digital touchpoint (website, mobile app, gaming console, etc.), Adobe Target first determines if the visitor is in your control or non-control group. If in the control group, Target will randomly serve them one of the content pieces in your activity. If the visitor is in your non-control group, the multi-armed bandit decides whether to show the overall winning piece of content as determined by Thompson Sampling or the personalized winner as determined by Random Forest.

Deciding how much traffic to give to the control versus the algorithm

With any of the algorithms, you’ll need to decide how much traffic to divert to the control group versus the non-control group that’s delivered personalized content via the algorithm. Here’s some guidance for making that decision:

If the goal of your activity is to evaluate the algorithm, allocate 50 percent to the control. This will give you the most accurate view of your lift and can statistically prove smaller differences between your control and personalized traffic. The tradeoff? With less traffic to personalized experiences, you reduce the overall benefit of the activity for revenue, conversion, and other key metrics.

However, if the goal of your activity is to maximize the benefit of the activity, allocate anywhere from 10 percent to 30 percent of the traffic to the control. That means you benefit from the personalized experiences being delivered to a greater portion of your traffic, but you’re still letting the model learn new visitor trends. The tradeoff is that you have relatively lower accuracy of the lift and can only statistically prove large differences between the control and personalized traffic.

AI for personalization — just apply math and computer science to your marketing

As Shannon wrote in her earlier post, using AI for personalization doesn’t need to be mysterious or feel like magic. It really is just applying math and computer science to help solve your marketing challenges.

In my next post, I’ll go into detail about the approach we’ve taken to give you those valuable insights from your AI-driven personalization activities with Adobe Target. These learnings are provided through the Personalization Insights reports that will soon be generally available to Adobe Target Premium users, but are already out in beta right now. For many of you, these insights are key for getting stakeholder and leadership buy-in. They’ll let you explain why the algorithm made the decision it did when delivering a specific piece of content to a given visitor.