  Matrices of (approximate) low rank are pervasive in data science, appearing
in recommender systems, movie preferences, topic models, medical records, and
genomics. While there is a vast literature on how to exploit low rank structure
in these datasets, there is less attention on explaining why the low rank
structure appears in the first place. Here, we explain the effectiveness of low
rank models in data science by considering a simple generative model for these
matrices: we suppose that each row or column is associated to a (possibly high
dimensional) bounded latent variable, and entries of the matrix are generated
by applying a piecewise analytic function to these latent variables. These
matrices are in general full rank. However, we show that we can approximate
every entry of an $m \times n$ matrix drawn from this model to within a fixed
absolute error by a low rank matrix whose rank grows as $\mathcal O(\log(m +
n))$. Hence any sufficiently large matrix from such a latent variable model can
be approximated, up to a small entrywise error, by a low rank matrix.
