I estimate ratings in a user-item matrix by decomposing the matrix into two matrices P
and Q
and then using gradient descent to minimize the error. Now, if I want to add a new user, the most obvious solution is to retrain the model. This, however, takes a lot of time even with a small number of steps.
Singular Value Decomposition allows to easily add a new user by computing:
user_k = Sigma^(-1) * Ut * user
Is there anything like that for matrix factorization? Can a new user be added without recomputing everything?