zenogantner / MyMediaLite

recommender system library for the CLR (.NET)
http://mymedialite.net
499 stars 192 forks source link

Are there any models here that actually implement efficient incremental updates? #478

Closed doctorpangloss closed 5 years ago

doctorpangloss commented 5 years ago

Your docs mention incremental rating prediction as a more efficient way to add data to an existing model:

By incremental training we mean that after each update, the recommender does not perform a complete re-training using all data, but only a brief update procedure taking into account the update and only a subset of the existing training data. This interface does not prevent you from doing a complete re-training when implementing a new class. This makes sense e.g. for simple average-based models.

The question is: do any models actually do a brief update procedure, or do they all do a complete re-training in practice?

Here's my take, looking at implementations only and assuming one additional rating is added to the given model:

zenogantner commented 5 years ago

Hello, BPRMF does perform a brief update, however I would perform additional measurements to see whether everything is tuned correctly before deploying it for anything practical ...

Hint: Feel free to discuss further questions here: mymedialite@googlegroups.com

doctorpangloss commented 5 years ago

Thanks, I think maybe consider throwing NotImplementedException for the ones that definitely do not do incremental updates? Or document otherwise?