Multi-user Multi-feature collaborative filtering


I am trying to figure out how to best modify the recommender system algorithms provided in DL1 so that multiple users who are working on the same topic will be guided to the correct recommender system.

For example, take a recommender system for arxiv docs built by Andrew Mauboussin, that was fully explained in nlp-arxiv.pynb this is an amazing recommender system but it is really geared towards users interested in a single type of topic.

How would you modify this code to capture the interests of people (for example) interested in knitting?

Likewise, the imdb lesson was for multiple users, but just one explicit recommender function: good or bad.

I want to match x number of people to y (mostly) unrelated topics. The topics are recommended based on z possible features of each document.

The only way I can think of to do this is to be able to sample each user’s library of say 10 topics of interest and explicitly ask them to rate them 1 to 10 just like the imdb recommender. So now you have a vector of x people y topics with some topics and some ratings overlapping. You probably want to match the users whose topics and ratings match and then allow them to share their recommender systems.

How would you do this? I have heard the term “implicit feedback” thrown around, but have not found a valuable paper that explains how you would approach this problem.