lyst / lightfm

A Python implementation of LightFM, a hybrid recommendation algorithm.
Apache License 2.0
4.7k stars 688 forks source link

Use of database to scale; and comparison vs predictionio #60

Closed musicformellons closed 8 years ago

musicformellons commented 8 years ago

I have seen on youtube your excellent presentation on hybrid recommender systems, i.e. lightfm, in Amsterdam recently. I have a couple of questions: 1) You mention - when asked about a 'typical website with recommendation that needs to scale' - that you use lightfm with postgres and that Nearest Neighbour is done with C programming against postgres. My questions: This sounds not like very feasible for me to setup...; is that the only way to have this scale in production... any comments maybe? What exactly is programmed in C? 2) A popular open source recommender is predictionio. It also seems to support 'hybrid recommenders'. Could you tell what sets lightfm apart/ differences between lightfm and predictionio?

maciejkula commented 8 years ago

LightFM itself simply computes the model. How you serve it in production is a different matter, and one that will be specific to each application. For example, you could precompute recommendations for all users and save them somewhere for later retrieval.

I'm not very familiar with predictionIO so will not be able to comment there.

musicformellons commented 8 years ago

Ok thanks. Actually: 1) I found your article http://ceur-ws.org/Vol-1448/paper4.pdf which gives some clues regarding production setup. 2) From what I've seen it seems predictionio has 'hybrid' planned but not yet there.