I'm considering using PredictionIO
for building a music recommendation system.
However, in the user-item interaction, only the following actions are supported: like, dislike, view, conversion, and rate (scale 1 - 5).
My existing data consists only of views (users listen to songs).
How should I translate my data to PredictionIO
input? Can I have multiple view records for the same user-item (more views = more weight) or will PredictionIO
look at the most recent one based on timestamp?
I only use Mahout and so don't know how PredictionIO translates your data into input and algorithm choice.
For Mahout you'd use the item-based recommender using a boolean input and input your "listen" as the action with a value of 1 and the similarity metric SIMILARITY_LOGLIKELIHOOD. LLR ignores the weights anyway. Weights are used in old-style recommenders that try to predict a user's ratings. Most people these days are more interested in ranking better and the above config will give you the best results.