Applications: Data, Graphs & Dynamics

low-rank models & recommenders

When you have a giant table of users-by-items with most entries missing (no one rates every movie), the bet behind recommenders is that the table is secretly low-rank: a few hidden factors (genre, tone, era) explain most preferences. Find those factors and you can fill in the blanks.

Model the ratings matrix R as a product of two thin factors, R approx U V^T, where row u_i is user i's taste in a small k-dimensional latent space and row v_j is item j's profile in that same space. The predicted rating is the inner product <u_i, v_j>: high when a user's tastes align with an item's traits. The rank k is the number of latent factors.

If R were fully observed, the best rank-k factorization is exactly the truncated SVD (Eckart-Young), keeping the top k singular values. But R is mostly missing, so you instead minimize the squared error over observed entries only, plus a regularizer, solving it by alternating least squares or gradient descent. This matrix completion succeeds when the true matrix is low-rank and the observed entries are spread out enough.

Why it matters: this is the math under collaborative filtering for movies, products, and music, and the same factorization idea reappears in topic models and embeddings. The caveats: it inherits a cold-start problem (new users or items have no data), the completion guarantees assume incoherence and random sampling, and a pure low-rank fit can amplify popularity bias.

R approx U V^T, rank k; predicted rating = <u_i, v_j>; fit on observed entries only

Factor the sparse ratings matrix into thin user and item factors; predictions are inner products.

Eckart-Young is the guarantee: among all rank-k matrices, the truncated SVD is the best approximation in both the Frobenius and spectral norms. Recommenders are the missing-data version of that same best-low-rank idea.

Also called
matrix completioncollaborative filteringlatent factor models