On a recent visit to Prague, I was fortunate enough to meet up with the development and product teams at Recombee. I learnt a lot and walked away with a number of ideas as to how we can build better sites for our clients.
Recombee is innovative company providing a content recommender service. In a nutshell their service allows for catalogues of content to be delivered in a personalised way to users based on their behaviour and preferences. This is done through the use of a number of algorithms based around similarity, popularity, recency and user affinity for the content.
Recombee is able to compare the browsing history of the user and compare that with the history of others to provide recommendations which in effect take into account “the wisdom of the crowd”. This approach breaks free of the constraints of purely editor curated content, where the all knowing author defines what the next best paths are to take. Recommender systems are therefore able to draw on other metrics to provide recommendations which may not have been considered by the content author.
Morpht has been working with Recombee APIs for a number of years. We have implemented the Recombee and Search API Recombee modules which integrate the service into Drupal sites. You can see these modules in use on the homepage of the Morpht site and also on the bottom of each article and case study.
The meeting with Recombee was quite insightful and got me thinking how Morpht could further take advantage of the capabilities on offer. We have made use of some fairly basic scenarios for User Items and Item Items queries. There are however a number of more sophisticated approaches which can be taken, opening the way to start conceptualising how many parts of a site can be altered to take advantage of the possibilities.
Common ways of navigating
Before jumping into taking a look at how a recommender system could be used, it is worth covering off a number of common patterns we see on sites for listing content. We can then use these base scenarios for comparison later.
Keywords
User enters keywords and content items are returned based on similarity with the search terms.
Example: Search page
Use case: A specific subject is in the mind of a user.
Type
User visits a listing page for a certain type. Content of that type is listed and generally is sorted by a relevant date.
Example: Blog
Use case: User wants to know the latest developments.
Subject
User visits an aggregating page. Content of that subject is listed and generally is sorted by a relevant date.
Example: Categories, Topics, Audiences
Use case: Editor has organised content for the convenience of users interested in domain specific subjects.
Editor picks
User visits the homepage and is shown a curated list of editor picks which are deemed to be of high enough importance to appear on the homepage. A limited number is shown and once again, sorted by a relevant date.
Example: Homepage recently added
Use case: Editor wishes to push important content onto the user.
Related: Hand picked
User visits a content item (article, event) and is shown related links which have been curated by an editor.
Example: Article Related content
Use case: Moving the user through to more relevant content.
Related: Solr More like this
User visits a content item (article, event) and is shown related links which have been selected by the "More Like This" feature of Solr which uses item similarity as the determining factor.
Example: Article Related content
Use case: Moving the user through to more relevant content.
Trending now
User with presented content which is popular on the site. Generally this feature is not available to users as it is hard to measure popularity in a cached world where it is hard to get real time metrics on page views. Oftentimes this is faked, or a social media feed may be included to pull in “popular” content items.
Example: Homepage trending now
Use case: Popularity considered to be an important signal for recommended content.
Through the lens of a recommender system
Each of the above use cases does have a counterpart in the capabilities of a recommender system such as Recombee. Through the use of “scenarios” it is possible to craft listings which are able to incorporate the metrics of recency, popularity, relevancy and similarity to personalise the results returned to the user.
We will now take a look at some scenario definitions in Recombee which can be used to implement the above.
Keywords
In the backend Recombee has semantically assessed each of the items in its index to be able to provide results which are similar in keywords and in meaning. The results returned are biassed towards the interests of the user based on their browsing history.
The use of a personalised search can be helpful for users who are searching widely for things they may be interested in. For example, movies or videos. However, if the search is likely to involve facets and filtering, it may be best to take a more traditional approach and use something like Solr.
Type
The item index in Recombee can be augmented with properties as needed. It is common practice to add “type” or even “subtype” properties to manage different types of content in the CMS. eg. article, event, case study. These types can then be used as a “filter” to return the required results. In the case of a type listing, a date field could also be used to provide a “recency” tilt to the content being returned.
Please note that the recommender system is not “sorting” the results in the traditional sense. Results will be returned in order of what is considered best and this will naturally involve the consideration of several competing factors. If it is important to have a strict sort order, then it may be better to go with a more traditional listing and not use a recommender system for this kind of page. The use case is for users who want to know what has changed, and in this case, an explicit sort may be a better fit.
Subject
Content within the Recombee item index can be augmented with property sets which can be used for filtering. For example, it is possible to add sets such as genre, topic or audience. Once this is in place, scenarios in Recombee can filter on the particular genre. This capability is particularly powerful for a catalogue listing scenario in which relevant, engaging content is essential. Such systems are in heavy use on sites such as Amazon, Spotify and Netflix.
Subject based listings can be tilted with recency or popularity, so that relevant results are returned depending on the use case at hand. This approach to personalising content can be very powerful when trying to engage users who may be interested in a particular subject. It brings together the worlds of content curation conducted by editors, and the recommendations coming from the recommender.
Editor picks
Editors know best sometimes. A piece of content may be naturally more important than another. In these cases editors can mark content as being important enough to feature on the homepage. This metric can then be used as an item property in the Recombee index and used to provide a tilt to the results which are returned. Typically this could be used on the homepage to highlight important content.
If the “editor pick” flag is not available, Recombee is still able to provide good general recommendations through its “popular” and “recent” scenario types which are able to operate off the date of the content or its popularity.
Related
Recombee supports a scenario type called “Items to Item”. This is where a source item provides a starting point for determining content similarity with other items in the corpus. Similar items can then be ranked in order of relevancy based on the users preferences for content. This provides a personalised tilt to the similar content. It can be considered superior to Solr’s “More like this” because the user preferences are also taken into account.
This approach is pioneered by Amazon when making item recommendations for users who purchased a particular item. It was attributed for much of the success of Amazon’s ability to keep users purchasing once they had made an initial purchase. It is the bread and butter of recommender systems and is certainly worth considering for content such as articles, products and media.
Trending now
Recommender systems track user interactions such as detailed view, partial view, purchase and others. Each interaction results in an item/user pair with a weighting which is stored in the backend. The system therefore has a very good knowledge of which content is popular and trending for certain time periods. This information can be used for “trending now” blocks. This kind of functionality is difficult to achieve with traditional systems but is easy when the data is available.
This kind of approach is useful for sites which have a flow of content, as is the case with social sites with lots or user generated content or with content sites which have a lot of alerts or updates each day.
Seeing it in action
Morpht has implemented many of these scenarios. On this site (Morpht website), we have used it to drive the personalised recommendation on the homepage as well as for articles and case studies. We have also released GovFlix, a POC site demonstrating how a recommender system can be used for on the SasS GovCMS platform.
Conclusion
Content recommendation systems bring a lot of power and functionality to sites. They are able to unlock hidden internal structures within the content and surface that to improve the user experience in a number of scenarios. It is important to consider the use cases in question when implementing such an approach. In some cases it may be better to use a more traditional approach such as where date sorts are important or there are demanding filtering and facetting needs. Notwithstanding these situations, the addition of a recommender system to a website can bring better user engagement and happier users as they discover more relevant content.
Want to know more
Morpht is experienced in building recommender websites in Drupal and GovCMS. We have a strong knowledge of the capabilities of Recombee and are able to bring that to life using modules and components we have developed. If you have any questions or would like to discuss the concept in general, please let us know.
For Government clients in Australia there is an easy path to procurement through the GovCMS DXP Panel where Morpht is able to provide the Recombee service as a Category 3 service. Please contact Morpht or GovCMS for more information.