3 approaches to AI recommender engines

Phil Castiglione

Phil Castiglione

Software developer, machine learning and AI enthusiast. Definitely not building Skynet. Not at all.

The following blog is based on a talk by Cogent Designer, Will Rockel.

We used to use directory listings to find things, opening the yellow pages and thumbing through pages to Plumber was the first step in fixing your leaky tap. As the internet went mainstream, a paradigm shift took place and search took over as our primary mode of information seeking. Now, if we want to know something we just “Google” it. This works pretty well most of the time, when we know what we’re looking for, but how do we find things that we don’t know we’re looking for?

If you’re on Amazon ordering the second book in a great series, then it’s handy to have the third book recommended just below. This is just one example of the power of recommendation engines. A recommender can present information that is difficult or slow to find through search, in a contextually appropriate way. Amazon makes heavy use of recommendations to put products in front of customers that they’re likely to want. In fact, just about anyone with a product and a web presence can benefit from using recommendations alongside search and listings.

This isn’t a new approach. In 2009, Netflix held a competition with a million dollar prize for the team that produced the greatest improvement in their rating prediction system used for recommending movies to users (‘Because you watched..). The team that won had achieved more than a 10% improvement in the accuracy[1] of user rating predictions.


How they work

Recommender engines can use:

  1. Collaborative filtering:  recommendations are based on past behaviour and similarities between users,
  2. Content filtering: recommendations are based on finding products similar to other products, or
  3. a hybrid approach that incorporates both.

Each approach has different strengths.

Collaborative filtering is good at finding relationships between items that are implicit in user behaviour. If you’re going to purchase a torch, you might also want to buy batteries, because users who buy one often buy the other.

collaborative filltering

Or lollies, because you’re going camping!


Content filtering is good at finding relationships between products and recommending products similar to ones previously liked. If you’ve watched a lot of sci-fi thrillers, you might like other ones.


content filtering
No promise that they’re good sci-fi thrillers though.


Hybrid approaches use a combination of both approaches, aiming to provide high quality recommendations. However, these can suffer from low explicability. If you can’t explain why you’re recommending something to a user, it can be disturbing when the recommendation is a miss. Dog owners might buy both fitness and pet products, but that may not work for a pet-free user who searches for a yoga mat and gets recommended a leash.


Cogent Movie Match

At Cogent, we like to put our money where our mouth is so we’ve been experimenting with different types of recommendation engines to prove that you don’t need to be the scale of Netflix or Amazon Scale to take advantage of recommender engines. 

You might be keen to try out our prototype: Cogent AI Movie Match. If you’re interested in anything you’ve seen here and have questions about how to apply AI or machine learning to features or products effectively, then get in touch.

Find out more about AI at Cogent here.

Related posts

Anwesha Chatterjee

Remote Pairing – Do’s and Don’ts

Whilst pairing has been a fairly consistent part of my years as a software developer, Cogent was where I first started remote pairing. I’ve found the remote aspect of the experience amplifies certain challenges so in this post, I share some of the lessons I’ve learnt.

Read More
Sam Chalela

Deploying micro frontends with module federation and Next.js

Micro frontends are an architectural pattern that has become a hot topic in recent years for many good reasons. It has helped organisations break complex UI applications into smaller, more manageable pieces, as well as enabling teams to work end-to-end across a well-defined product or business domain whilst maintaining a consistent user experience across the entire app.

Read More