11
22

Sampling from a kk-DPP without looking at all items

Daniele Calandriello
Michal Derezinski
Michal Valko
Abstract

Determinantal point processes (DPPs) are a useful probabilistic model for selecting a small diverse subset out of a large collection of items, with applications in summarization, stochastic optimization, active learning and more. Given a kernel function and a subset size kk, our goal is to sample kk out of nn items with probability proportional to the determinant of the kernel matrix induced by the subset (a.k.a. kk-DPP). Existing kk-DPP sampling algorithms require an expensive preprocessing step which involves multiple passes over all nn items, making it infeasible for large datasets. A na\"ive heuristic addressing this problem is to uniformly subsample a fraction of the data and perform kk-DPP sampling only on those items, however this method offers no guarantee that the produced sample will even approximately resemble the target distribution over the original dataset. In this paper, we develop an algorithm which adaptively builds a sufficiently large uniform sample of data that is then used to efficiently generate a smaller set of kk items, while ensuring that this set is drawn exactly from the target distribution defined on all nn items. We show empirically that our algorithm produces a kk-DPP sample after observing only a small fraction of all elements, leading to several orders of magnitude faster performance compared to the state-of-the-art.

View on arXiv
Comments on this paper