On Fri, Sep 6, 2013 at 9:33 AM, Pat Ferrel <[email protected]> wrote:
> One of the unique things about the Solr recommender is online recs. Two > scenarios come to mind: > 1) ask the user to pick from among a list of videos, taking the picks as > preferences and making recs. Make more and see if recs improve. > 2) watch the users' detail views during a browsing session and make recs > based on those in realtime. A sort of "are you looking for something like > this?" recommender. > > For #1 I've seen several examples (BTW very few give instant recs). Not > sure how they pick what to rate. It seems to me a mix of popular and the > videos with the most varying ratings would be best. Since we have thumbs up > and down it would be simple to find individual videos with a high degree of > both love and hate. Intuitively this would seem to help find the birds of a > feather among the reviewers and help put the user in with the right set > with the fewest preferences required. > For #1, Ken's suggestion of clustering seems quite reasonable. The only diff is that I would tend to pick something near the centroid of the cluster *and* that is very popular. You need to have something people will recognize. Clustering can be done by doing SVD or ALS on the user x thing matrix first or by directly clustering the columns of the user x thing matrix after some kind of IDF weighting. I think that only the streaming k-means currently does well on sparse vectors. > #2 seems straightforward. No idea if it will be useful. If #2 doesn't seem > useful is may be modified to become the typical, makes recs based on all > reviews but also includes recent reviews not yet in the training data. > That's OK since we'd want to do it anyway. > For #2, I think that this is a great example of multi-modal recommendations. You have browsing behavior and your tomatoes-reviews behavior. Combining that allows you to recommend for people who have only one kind of behavior. Of course, our viewing behavior will be very sparse to start.
