Real-time, AI-powered personalization is long seen as the holy grail of personalization initiatives, especially considering how interactions with businesses have shifted online over the last 12 months. But how can marketing teams and data science teams work together to make it happen?
Speaking at Adobe’s annual Adobe Summit that ran online last week, Akash Maharaj, a senior data scientist at Adobe outlined various strategies and tips for data scientists to drive machine learning into the realm of personalization.
Not an easy problem to solve
To be clear, combining the worlds of personalization with that of machine learning is “really, really hard”, notes Maharaj.
He described it as “marrying” the mindset of experimentation of the former with one of measuring and iterating inherent to the latter, and how it will necessitate the creation of custom machine learning models by the data science team.
“[One big area] that is not often discussed is that personalization practitioners and data science teams are often in two different worlds that are fast colliding. But we still speak different vocabularies, we sit in different departments, and we don't always have the same incentives.”
One way to start bridging the gap between personalization practitioners and data scientists would be to start at the root of the challenge. He said: “[Begin by identifying] the key dimensions of your personalization use case, including the experiences, the segments we wish to consider, the targeting strategy we want to use, as well as the goal metrics that we want to optimize.”
Closing the gap
To illustrate his point, Maharaj pointed to the classic use case of personalizing a website. In this example, visitors to the website would be the segment, and an A/B test between two image banners is the targeting strategy. The conversion rate or reduction in churn would be business metrics that data scientists will want to improve or optimize.
To enable personalization through machine learning, it is necessary to first identify the experiences, what number of experiences there are, and the metrics to support, says Maharaj. For the latter, the number of experiences has a huge effect on the type of machine learning task that is chosen and the scoring system and operationalizing framework used.
“Most real-time personalization problems are formally reinforcement learning problems. But when it is a low cardinality problem, you can either use pure reinforcement learning, say, using Bandits or Contextual Bandits, or you can use more traditional classification or regression models,” he explained.
In the case of high cardinality where there might be hundreds to millions of items to rank, then some form of pre-computation or approximate decisioning will be required – effectively bringing the problem into the realm of recommendation engines. Obviously, implementing this will require a radically different architecture, says Maharaj.
Pitfalls to watch for
What are some common pitfalls to training machine learning models for personalization? Optimizing for the wrong metric is one, according to Maharaj. When a personalization team engages with a data science team, it is vital that both teams agree on the metric that they are optimizing against. Of course, the reality is a bit more complex.
“Often, our true business metric cannot be directly optimized against. So, you must find proxy metrics instead. If you get this wrong, then your model may be optimizing for the wrong thing, and you may end up not providing any [business] lift.”
Success on this front boils down to identifying evaluation metrics that correlate with the real business metric. Unsurprisingly, this calls for “a lot” of careful data analyses.
Not doing any exploration is another common pitfall. Because personalization problems are essentially reinforcement learning problems, it is necessary to do both exploration and exploitation, says Maharaj.
“When you're [making] decisions under uncertainty… we are uncertain about what the best experience is for a user at a given time. [Therefore] we must either explore, which is to try new options, or exploit, which is to use our past knowledge, to choose the best option that we know about right now.”
Maharaj reiterated the importance of A/B testing and keeping tabs on a new machine learning model to make sure that it works. “It's crazy, but a lot of ML model comparisons often ignore these kinds of basic A/B testing. So please remember your experiment basics.”
Finally, the novelty of a new AI-powered feature can skew the initial results. “[Watch] out for the novelty effect. Whenever you are deploying a new algorithm, you should be careful that users don't just respond well [initially] before reverting to their original behavior.”
Paul Mah is the editor of DSAITrends. A former system administrator, programmer, and IT lecturer, he enjoys writing both code and prose. You can reach him at [email protected].
Image credit: iStockphoto/Rawpixel