Low-rank matrix factorization is an effective tool for analysis of
``dyadic data,'' which aims at discovering and capturing the
interactions between two entities. Successful applications include topic
detection and keyword search (where the corresponding entities are
documents and terms), news personalization (users and stories), and
recommendation systems (users and items). I will talk about a novel
algorithm to approximately factor large matrices with millions of rows,
millions of columns, and billions of nonzero elements. Our approach
rests on stochastic gradient descent (SGD), an iterative stochastic
optimization algorithm; the idea is to exploit the special structure of
the matrix factorization problem to develop a new ``stratified'' SGD
variant that can be fully distributed and run on web-scale datasets
using MapReduce. The resulting distributed SGD factorization algorithm,
called DSGD, handles a wide variety of matrix factorizations, converges
significantly faster than alternative algorithms, and has better
scalability properties. My talk covers applications, algorithmic
aspects, and some experimental results.