Faster Approx. Top-K: Harnessing the Full Power of Two Stages
By: Yashas Samaga , Varun Yerram , Spandana Raj Babbula and more
Potential Business Impact:
Finds the biggest numbers much faster.
We consider the Top-$K$ selection problem, which aims to identify the largest-$K$ elements from an array. Top-$K$ selection arises in many machine learning algorithms and often becomes a bottleneck on accelerators, which are optimized for dense matrix multiplications. To address this problem, \citet{chern2022tpuknnknearestneighbor} proposed a fast two-stage \textit{approximate} Top-$K$ algorithm: (i) partition the input array and select the top-$1$ element from each partition, (ii) sort this \textit{smaller subset} and return the top $K$ elements. In this paper, we consider a generalized version of this algorithm, where the first stage selects top-$K'$ elements, for some $1 \leq K' \leq K$, from each partition. Our contributions are as follows: (i) we derive an expression for the expected recall of this generalized algorithm and show that choosing $K' > 1$ with fewer partitions in the first stage reduces the input size to the second stage more effectively while maintaining the same expected recall as the original algorithm, (ii) we derive a bound on the expected recall for the original algorithm in \citet{chern2022tpuknnknearestneighbor} that is provably tighter by a factor of $2$ than the one in that paper, and (iii) we implement our algorithm on Cloud TPUv5e and achieve around an order of magnitude speedups over the original algorithm without sacrificing recall on real-world tasks.
Similar Papers
Differentiable Fast Top-K Selection for Large-Scale Recommendation
Machine Learning (CS)
Makes online suggestions show better results faster.
Finding a Fair Scoring Function for Top-$k$ Selection: From Hardness to Practice
Databases
Makes computer choices fair for everyone.
An improved approximation algorithm for k-Median
Data Structures and Algorithms
Finds best locations for services using less money.