Matrix Factorization

Matrix Factorization (MF) is a class of algorithms that decompose a matrix into the product of two or more matrices, typically and (i.e., ). It is used to uncover latent structures, reduce dimensionality, and denoise data.

Core Mechanism

  • Decomposition: Breaks high-dimensional sparse matrices (e.g., user-item interaction matrices) into lower-dimensional dense representations.
  • Latent Features: The resulting matrices represent latent factors (hidden features) of users and items.
  • Optimization: Typically solved via gradient descent, alternating least squares (ALS), or stochastic gradient descent (SGD) to minimize reconstruction error (e.g., Mean Squared Error).

Key Applications

  • Recommendation Systems: Predicting missing entries in user-item interaction matrices (e.g., collaborative filtering in Collaborative Filtering).
  • Dimensionality Reduction: Similar to Principal Component Analysis but applicable to non-square matrices and missing data.
  • Topic Modeling: Latent Semantic Analysis and Latent Dirichlet Allocation variants use matrix decomposition to identify semantic structures in text.
  • Image Compression: Decomposing pixel matrices to separate content from noise or background.

Connection to Embeddings

Matrix factorization is a foundational method for generating Vector Embeddings. By factorizing interaction or co-occurrence matrices, entities (users, items, words) are mapped to continuous vector spaces where proximity implies semantic or behavioral similarity.

See also: Vector Embeddings: Semantic Representation for NLP and AI for a detailed overview of how these dense representations facilitate semantic search and NLP tasks.

  • Singular Value Decomposition
  • Non-negative Matrix Factorization
  • Neural Collaborative Filtering
  • Word2Vec