Collaborative Filtering Concept

Exactly. All users’ and movies’ parameters are trained under one cost function, so that user A and user B affect each other through their common movie C, and similarly, movie D and movie E affect each other through their common user F.

If they had been trained under different cost functions, meaning that we had one model for one user (or as you said: [1user x n_features] X [n_features x n_movies ]), then one immediate effect is a movie M would have different feature values among all user’s models. More precisely, a movie has a different base of feature vector in each user’s model. Consequently, it’s impossible for us to compare two users or to compare two movies.

Yes.

Collaborative filtering is less subjective because something about a movie is contributed by many users. It is also more useful because it produces weights that allow us to make user-user, user-movie, and movie-movie comparisons. It is one collaborative world instead of N user worlds.

Cheers,
Raymond

1 Like