Paper 2

PPP-Codes for Large-scale Similarity Searching

Authors: David Novak and Pavel Zezula

Volume 24 (2016)

Abstract

Many current applications need to organize data with respect to mutual similarity between data objects. A typical general strategy to retrieve objects similar to a given sample is to access and then re fine a candidate set of objects. We propose an indexing and search technique that can signi ficantly reduce the candidate set size by combination of several space partitionings. Specifi cally, we propose a mapping of objects from a generic metric space onto main memory codes using several pivot spaces; our search algorithm fi rst ranks objects within each pivot space and then aggregates these rankings producing a candidate set reduced by two orders of magnitude while keeping the same answer quality. Our approach is designed to well exploit contemporary HW: (1) larger main memories allow us to use rich and fast index, (2) multi-core CPUs well suit our parallel search algorithm, and (3) SSD disks without mechanical seeks enable ecient selective retrieval of candidate objects. The gain of the signi ficant candidate set reduction is paid by the overhead of the can- didate ranking algorithm and thus our approach is more advantageous for datasets with expensive candidate set refi nement, i.e. large data ob- jects or expensive similarity function. On real-life datasets, the search time speedup achieved by our approach is by factor of two to fi ve.