Creating a Better Recommendations Engine
Creating a Better Recommendations Engine
Netflix, which enables subscribers to stream their favourite content to their Smart TVs and internet connected devices, finished the year 2018 with 139m paid members and $16 billion in profit. A driver of this stellar performance is a sophisticated, proprietary algorithm that recommends content to the users. In 2017, it was reported that 80 percent of watched content is based on algorithmic recommendations.
Systems similar to the one used by Netflix are simply called ‘recommendation engines’. Recommendation engines can add value businesses from a variety of sectors from e-commerce to events management.
At Acrotrend, we work with a range of organisations in different industries to build recommendation systems and believe every organisation can benefit from offering personalised recommendations to their customers. Data science and advanced analytics are key elements in the quest to produce robust recommendations, but it doesn’t stop there. The success really depends on what approach you take and how you tackle the issues on the way. In this article we share some insights into when you should consider using a recommendations engine, the different types of engine and avoiding common mistakes.
When Should a Recommendations Engine Be Used?
Recommendation engines help a business by driving:
Personalised Customer Experiences: Recommendation systems combine information about user demographics, known user tastes, preferences and behaviour with data about other similar users to identify products or content to “recommend”. As a result, users get recommendations specifically tailored for them, which increases the chance that they will engage with that content or buy that product.
For example, a recommendation system could be employed by an event organiser to suggest specific exhibitors or products to event attendees based on information shared at the time of registration and their activity (content downloads from event website etc.) before the event.
Improved Product Visibility: Whether your recommendation is about a product or the relevance of some content, once you get past the big, popular items with broad appeal, there might be thousands of different options each only relevant to small groups of people. Matching these “long tail” products to the small groups of potential customers can provide a lucrative strategy that drives up overall sales / consumption.
Recommendation systems facilitate this strategy by identifying people interested in those (and similar) niches and suggesting the products to them. This provides benefits to both the consumer, especially those interested in products outside the mainstream, by highlighting truly relevant products amid the clutter and reducing time spent on searching relevant products, as well as the seller.
Cross-sell Opportunities: Recommendation systems open cross-sell opportunities in industries such as e-commerce by showing products frequently bought together or showing customers what those similar to them are buying. Likewise, recommendation systems can help unlock value by directing attendees to exhibitors meeting their ancillary requirements as well.
Types of Recommendation Engine
While recommendation engines increased in complexity and sophistication since their beginning in early 2000s, there are only two basic approaches to recommendations systems:
Content-based filtering– as the name suggests the matching is done based on the product attributes that the customer is looking for. This approach works if you are just starting to match on minimum data and if the visitor base is not actively engaged on your products. If you have rich data-set on usage of products, and other behavioural information, then you might want to use more nuanced matchmaking approach of collaborative-filtering.
Collaborative filtering – works on co-usage and the similarities of one customer to other customers who display related interests. This approach can include similarities and proximity in products/services as well. The output is based on the assumption that two visitors who liked the same products in the past will probably like the same ones now or in the future. This approach is less restrictive than content-based and aids discovery of more and new products with diverse and varied recommendations on matches. At the same time, it can be slightly difficult to explain the matches, without proper data science validation techniques.
Avoiding Common Mistakes
During our work with clients, we have found that there are a few common stumbling blocks:
The Quality & Quantity of Data is a Key Driver of Results
This might sound obvious, but here is where the make or the break happens. You might be already collecting some data about your customers like gender, job titles, regions/country, interests, etc. You might also have the transaction history of your customers. You might even be floating surveys to get insights into your customer’s psychographics. The recommendations would be much more powerful if you can deduce interests and needs based on behavioural data – like browsing history and searches on a website and clicks (types of links/products) on promotion emails, social mentions and so on.
This digital footprint and keyword matching can go a long way in discovering needs and actually affirming the expressed interests as well. While you may be tempted to use all the data you get, it is also imperative that you keep an eye on the quality of the data. A dataset with too many missing values will do more damage than good and keep you from getting the best outcome from your efforts. Subjecting the data to extensive pre-processing before using it to build models is a good idea.
When you are starting out, it is advisable that you build the recommendation system using one or two datasets so that you are able to focus on getting results rather than dealing with complexity.
Measure What Matters
Once your recommendation system is deployed in the business, there is a multitude of questions that have to be answered –
- Did the customers find the recommendations useful?
- Did your recommendations influence customer behaviour?
- What was the revenue impact? What was the return on investment?
Measuring performance is essential for getting buy-in for your efforts from key stakeholders within your organisation as well as progressively improving on the system itself.
Depending on your objectives, you need to decide on the performance and effectiveness KPIs for the recommendation system you build and then devise a data collection and measurement strategy accordingly. There is a common set of metrics to measure the relevance of recommendations – one can work with Top-N accuracy metrics, which evaluates the accuracy of the top recommendations provided to a user. These results are compared to the items the user has actually interacted with in the test set.
Measuring revenue impact, ROI, and impact on customer behaviour is slightly trickier. You might have to determine appropriate baseline or have a control group against which to measure the impact. This might mean bringing A/B testing into the rollout and test strategy, and also enabling websites and other event applications to capture actions on recommendations like click throughs, meetings set etc.
Overfitting refers to a model that does too well on the training data. Overfitting happens when a model learns the detail and noise in the training data to the extent that it negatively impacts the performance of the model on new data. This means that the noise or random variations in the training data is picked up and learned as patterns by the model. The problem is that these patterns do not exist in the real data on which the model has to work. This negatively impacts the models ability to generalise. Overfitting is a problem because the evaluation of machine learning algorithms on training data is different from the evaluation we actually care the most about, namely how well the algorithm performs on unseen data.
There are two important techniques that you can use when evaluating machine learning algorithms to limit overfitting:
- Use a resampling technique to estimate model accuracy.
- Hold back a validation dataset.
A popular resampling technique is k-fold cross validation. It allows you to train and test your model k-times on different subsets of training data and build up an estimate of the performance of a machine learning model on unseen data.
On the other hand, a validation dataset is simply a subset of your training data that you hold back from your machine learning algorithms. After you have selected and tuned your machine learning algorithms on your training dataset you can evaluate the learned models on the validation dataset to get a final objective idea of how the models might perform on unseen data.
“Coldstart” is a challenge that needs most consideration while building recommendation engines. Cold start is when the recommendation engine doesn’t have enough information to produce the right recommendations, e.g. first-time customers with no registration information, or new products without a past history.
Collaborative filtering approach discussed above is prone to this coldstart problem when it comes to absence of product usage history, and hence new products may go unrecommended. Content-based filtering can work for such products. For new users without usage history, pushing content-based filtering might work. For anonymous users, generally popular products in certain categories might be the way to go. Or maybe, not doing anything and allowing the users some discovery time, fill in the registration data and create a minimum activity trail might be more efficient than letting random recommendations backfire. The approach should be definitely based on how the industry of the event works best.
A journey of a thousand miles begins with a single step – Lao Tzu
While these may be the most common problems, your specific data and business context can bring its own set of challenges. The key is to start small, implement quickly and demonstrate the results – you can even position it within your organisation as an experiment. It is better to start with a relatively simple use case for which data is easily available and the results easily demonstrable.
Whether your business is brand new to it or needs to take established processes to the next level, Acrotrend’s 80-strong, globally-operating customer analytics team is here to help.