Summary
A missing rating supplies two indices: a user row and an item row. Matrix factorization shares learned rows across many observed ratings rather than storing an independent prediction per cell. Its low-rank assumption is a modeling choice, not a guarantee of matrix completion.
Let , , and . The shared coordinate count is , and . With zero biases, fixture rows and predict . These are chosen vectors, not a fitted solution for all displayed ratings.
Matching user and item coordinates multiply, then sum to the missing rating
Derivation
Which observation would be required to call five a recorded rating?
| Entry in user A’s row | Observation | Explicit-rating loss |
|---|---|---|
| Item 1 | Rating 5 | Included |
| Item 3 | Unknown | Excluded |
| Item 4 | Rating 1 | Included |
The objective
Minimize regularized squared error on observed ratings :
The observed set excludes unknown entries, and controls the stated L2 penalty. With biases, use , defining global mean and user/item offsets. Fit these together; adding afterward changes four to . That exceeds a 1-5 rating scale and is not automatically a calibrated prediction.
Change observed signal
New task: replace explicit ratings with clicks whose exposure is not fully observed.
Picture and change: a confidence-weighted implicit model uses
Here is an interaction indicator and is modeling confidence, not an identified exposure probability. Unlike explicit-rating loss, this objective includes all pairs, usually with lower confidence for unobserved interactions.
Check: a separate two-item fixture has scores , preferences , and confidences . Its unregularized loss is , not the positive-only value . A never-shown item’s weak zero preference remains an assumption, not evidence of dislike.
Use when: revise the objective and evaluation when observation semantics change.
Cold start
Change item availability
New task: score a new item without a trained ID row.
Picture and change: use a separately validated feature encoder or content/context fallback, rather than a nonexistent lookup row.
Check: if an encoder supplies , user A’s zero-bias score is . Increasing alone cannot produce a trained row for an unseen ID. An encoder can compute a vector without proving cold-item accuracy.
Use when: evaluate the cold-item slice and fallback separately from seen-ID performance.
Training
Squared-error factorization is nonconvex jointly, but convex in either factor when the other is fixed. ALS solves conditional ridge problems; SGD updates selected rows. For one pair’s squared residual and two-row L2 penalty, hold biases fixed and save both old rows. Set , then compute simultaneously
Using the updated user row for the item gradient changes this step. Sampling and regularization scaling must match the full objective.
Properties
For orthogonal , replacing with preserves predictions and L2 norms. The fixture rows can become and while retaining dot product four. Tune and regularization against matched baselines; coordinates are not uniquely identifiable tastes.
Connection to two-tower models
Two-tower retrieval replaces free rows with feature encoders . An ID-only tower still lacks trained parameters for new IDs. Sampled retrieval losses differ from squared-error ratings and all-pair implicit fitting.
When to use plain MF in 2026
MF can be a rating baseline, prototype, or embedding initializer. Choose architecture from task, latency, features, and measured validation, not a universal deployment-prevalence claim.
Common pitfalls
Dot-product prediction does not validate within-type cosine; normalization changes scores. Compare bias baselines and ranking metrics when top-K quality matters; RMSE answers a different question.
Can a PCA rotation identify unique causal tastes?
Answer
No. It chooses coordinates without removing equivalent factorizations or establishing causal meanings.
References: Koren et al. (2009), Hu et al. (2008).
Related
- Two-tower retrieval. Neural generalization.
- Embedding spaces. How the latent factors are used.