Generally, SVD doesn't capture the user and item biases that may exist in the data. One such method that goes by the name SVD++ considers user and item biases in the latent factorization method and has been very popular in competitions such as the Netflix challenge.
The most common way to carry out latent factor-based recommendation is to define the user profile and biases as ui ∈ Rk and bi ∈ R and the item profiles and biases as vi ∈ Rk and bj ∈ R. The rating provided by user i to item j is then defined to be as follows:
µ is the global mean of all the ratings.
The user profiles and the item profiles are then determined by minimizing the sum of the square of the errors in predicting the ratings for all the items rated by the users. The squared error loss to be optimized can be represented as follows:
Iij is an indicator function...