# SVD in movie recommendation

Assume that there is a 5 $\times$ 6 matrix that records the ratings of six users on five movies.

I have computed the singular value decomposition (SVD) for such a matrix.

Suppose I add another movie so now it becomes 6 $\times$ 6 matrix.

However, I only have a rating of that movie for two people.

How can I estimate the ratings the other users would give to this new movie?

I would use a simple additive model, in which the rating of movie $i$ by person $j$ is approximated by the sum of two values, $a_i + b_j$. Least-squares estimates of $a_1,...,a_6$ and $b_1,...,b_6$ can be obtained based on all 32 ratings. There are many ways to do this; I identified the solution by imposing the constraint $\sum b_j=0$. Then, if movies 1,...,5 were rated by all 6 people and movie 6 was rated by only persons 1 & 2, inspection of the symbolic expressions for the estimated ratings $a_6 + b_j,\; j=3,4,5,6$, shows that each estimated rating is given by the sum of a common component plus a component that is specific to person $j$. The person-specific component is the average of person $j$'s ratings of movies 1,...5. The common component is the average rating of movie 6 by persons 1 & 2, minus the average ratings of movies 1,...,5 by persons 1 & 2.
• This isn't very effective for movie recommendation, since when user $i$ is asking for a movie to watch, your estimated ratings are all of the form $a_i + b_j$. Since $a_i$ is constant, your recommendations are the same for all users (just ordered by the $b_j$s). – Dougal Aug 20 '13 at 3:31