I would strongly recommend against using ratings. No one uses these as
input to recommenders anymore. Netflix doesn’t even show ratings. The best
input to a recommender is a conversion, buy, watch, listen, etc depending
on the item type. But the recommender you are using only allows one of
these as input. ALS is unimodal. There is no way to combine different
inputs with weighting that is valid with plain matrix factorization. So
ratings (if you choose to ignore my advice) and views cannot be mixed. For
one thing the math requires either implicit or explicit values for input,
but cannot really mix the 2 and for another thing—as I said—it is unimodal.
If there are instructions that say you can mix different data like ratings
and views it is wrong. A unimodal recommender can only find the user’s
intent from one type of signal at a time. If you train on views it will
recommend the user view something and this may be very different than
buying something. I know this because I’ve done experiments on this issue.

The Universal Recommender is the only multimodal recommender that I know of
that works with PIO. Factorization Machines are also multimodal but much
harder to use and there is no PIO template for them anyway.

To use the UR I would suggest using conversions (buy), high ratings = like,
low ratings = dislike, and views (I assume you are talking about detail
page views) as boolean “did view” input. The UR will find correlations
between this multimodal data and make the best recommendations based on
this.  You can also set “dislike” to filter out any recommendation where
the user has already expressed the fact that they dislike the item.

From: KRISH MEHTA <krish14011...@gmail.com> <krish14011...@gmail.com>
Reply: user@predictionio.apache.org <user@predictionio.apache.org>
Date: June 13, 2018 at 12:06:16 PM
To: user@predictionio.apache.org <user@predictionio.apache.org>
Subject:  Few Queries Regarding the Recommendation Template

I am new to PredictionIO and I have gone through the tutorial provided
regarding the customer buying and rating products. I encountered queries
regarding those.
1. What if I change the rating of the product? Will it update the result in
the database? Like will it use the most recent rating?
2. If I want to recommend a product with implicit as well as explicit
content? Is there a link which helps me to understand the same or anyone
can help me with it? I have gone through the tutorial and it says that for
implicit it adds the number of views to decide whether the viewer likes or
dislikes it. But what if I want to recommend a user with its likes and
dislikes as well as the number of views. For eg, Even if the user has
viewed it 1000’s of times but if it dislikes the product then it should
affect the recommendation. Can anyone suggest me with a simpler way or so I
have to make major changes in my code?

I hope my questions are genuine and not mundane.


Reply via email to