  With ever-increasing amounts of online information available, modeling and
predicting individual preferences-for books or articles, for example-is
becoming more and more important. Good predictions enable us to improve advice
to users, and obtain a better understanding of the socio-psychological
processes that determine those preferences. We have developed a collaborative
filtering model, with an associated scalable algorithm, that makes accurate
predictions of individuals' preferences. Our approach is based on the explicit
assumption that there are groups of individuals and of items, and that the
preferences of an individual for an item are determined only by their group
memberships. Importantly, we allow each individual and each item to belong
simultaneously to mixtures of different groups and, unlike many popular
approaches, such as matrix factorization, we do not assume implicitly or
explicitly that individuals in each group prefer items in a single group of
items. The resulting overlapping groups and the predicted preferences can be
inferred with a expectation-maximization algorithm whose running time scales
linearly (per iteration). Our approach enables us to predict individual
preferences in large datasets, and is considerably more accurate than the
current algorithms for such large datasets.
