Closed florin-stats closed 2 years ago
Currently, we haven't supported dynamically adding user/item cause the focus is still on the controlled experiment. Having said that it's still an important feature that we're looking into.
Just to clarify, the use of init_params
and trainable
is more for model saving/loading.
Hi!
Is it possible to have online/streaming updates to the models in Cornac? More exactly, is it possible to update a Cornac model WITHOUT retraining the entire thing when new users and new items are coming in? Initially I thought that init_params entry can be used for that, since maybe I can use pre-existing user/item latent factors to be able to "append" new data, but that is not the case. Maybe I mis-understood what these parameters do? Waht exactly is the trainable parameter for?
I've made a jupyter notebook, testing init_params and trainable=True/False, but they don't seem to do anything. Is this a bug ? The latent item/user factors remain the same. The train/test procedure was made so that i re-train on completely new items and users, but even though I do a random sampling train/test split the results are the same. Shapes and values of user/item latent factors remain the same.
I am not sure whether this is a bug or the feature of online/streaming updates is not yet implemented.
Below is an ASCII excerpt from a jupyter notebook that I've made to test my claims.
I've obfuscated any personal data that might pop-up, if you need more clarity, please let me know!
Thanks!