An ALS based recommender template like the E-Com one will handle ratings, but…

Rating are not a good way to make recommendations. Netflix found this out after 
it popularized the idea and does not use ratings now to recommend. After all, 
would you rate all the movies you like at 10? Of course not but that is what a 
ratings based recommender will try to recommend. Also ratings are almost 
impossible to regularize, comedies tend to get lower ratings than indie 
releases, individuals rate in different scales—are these a meaningful 
distinctions to a recommender—these are noise in the ratings data that is very 
hard to remove. Then there is the question: what are high low ratings?  Is 5 
high or low? You are never going to recommend low or ambiguous movies and what 
is low?

The more modern way to detect a user’s preference is to see if they finished 
watching the movie. We call these watch-95 events, wathcing 95% of the movie 
(excluding credits etc.) is only going to happen if you liked it.

If you don’t know this (don’t have watch % data) then take the top few ratings 
and call these likes and discard the rest or use a multi-modal recommender like 
the Universal Recommender and feed it likes (ratings of 10-8) and dislikes 
(ratings of 1-3). See this blog post about how well this can work: 
https://developer.ibm.com/dwblog/2017/mahout-spark-correlated-cross-occurences/ 
<https://developer.ibm.com/dwblog/2017/mahout-spark-correlated-cross-occurences/>
 This is a case study of using dislikes to predict likes, using them together 
increased performance of a recommender.

I think the E-Com recommender will handle some simple business rules based on 
category. The Universal Recommender has a pretty flexible business rules engine 
and can also use this data for multi-modal preference input (like, dislike, 
categories-liked, categories-disliked).


On Jul 10, 2017, at 1:17 AM, Dan <[email protected]> wrote:

Hi,

I've just setup a predictionio and now I search solutions for me.
I build a some sort of movie recommendation system based on user rating.
I think about use recommendation engine, but there I have buy event which
not exists in my system. I wonder it's an important event to calculate
recommendation or validation accuracy engine.

My system situation.
I have a database of movies. 
Movies can be in many categories.
Users can rate movies (from 1 to 10).
I want to use predictionio to send user recommendation based on their
previous film rating.

Movies categories are (or should be) important data for prediction model?
Is Recommendation template good choice for this situation?
Or another template?

Can someone give me some advice/suggestion what way will be best?

Best regards

Dan


Reply via email to