The idea comes from the fact that the search engine of YouTube is pretty decent, but the recommendation one isn't.
If only we could used that search engine for recommendations...
That's where Algorithmic Reduction comes in. If we can express our recommendation problem as a search problem, then we can just use the search engine to get our recommendations.
What's a recommendation engine anyway? Basically (or mathematically), it's a function that takes a User
and returns an ordered list of Item
.
What's a search engine? Basically (or mathematically), it's a function that takes a SearchQuery
and returns an ordered list of Item
.
What if we could turn a User
into a SearchQuery
? Then the recommendation engine would simply be the composition of the transformer function and the search engine.
Given that most website collect statistics about their users, this shouldn't be such a daunting task. And given how search engines are usually more deterministic than recommendation engines, then even if that transformer function is a heuristic, this approach should give extremely satisfactory results.
Potential pitfalls:
- Recommendation engines nowadays have a very strong bias towards how recently an item has been visited by the user (you get more recommendations on the latest 15 videos you've watched). You might want to stray away from that tendency
Top comments (0)