3,462 research outputs found
Constrained Approximate Similarity Search on Proximity Graph
Search engines and recommendation systems are built to efficiently display
relevant information from those massive amounts of candidates. Typically a
three-stage mechanism is employed in those systems: (i) a small collection of
items are first retrieved by (e.g.,) approximate near neighbor search
algorithms; (ii) then a collection of constraints are applied on the retrieved
items; (iii) a fine-grained ranking neural network is employed to determine the
final recommendation. We observe a major defect of the original three-stage
pipeline: Although we only target to retrieve vectors in the final
recommendation, we have to preset a sufficiently large () for each
query, and ``hope'' the number of survived vectors after the filtering is not
smaller than . That is, at least vectors in the similar candidates
satisfy the query constraints.
In this paper, we investigate this constrained similarity search problem and
attempt to merge the similarity search stage and the filtering stage into one
single search operation. We introduce AIRSHIP, a system that integrates a
user-defined function filtering into the similarity search framework. The
proposed system does not need to build extra indices nor require prior
knowledge of the query constraints. We propose three optimization strategies:
(1) starting point selection, (2) multi-direction search, and (3) biased
priority queue selection. Experimental evaluations on both synthetic and real
data confirm the effectiveness of the proposed AIRSHIP algorithm. We focus on
constrained graph-based approximate near neighbor (ANN) search in this study,
in part because graph-based ANN is known to achieve excellent performance. We
believe it is also possible to develop constrained hashing-based ANN or
constrained quantization-based ANN
To Index or Not to Index: Optimizing Exact Maximum Inner Product Search
Exact Maximum Inner Product Search (MIPS) is an important task that is widely
pertinent to recommender systems and high-dimensional similarity search. The
brute-force approach to solving exact MIPS is computationally expensive, thus
spurring recent development of novel indexes and pruning techniques for this
task. In this paper, we show that a hardware-efficient brute-force approach,
blocked matrix multiply (BMM), can outperform the state-of-the-art MIPS solvers
by over an order of magnitude, for some -- but not all -- inputs.
In this paper, we also present a novel MIPS solution, MAXIMUS, that takes
advantage of hardware efficiency and pruning of the search space. Like BMM,
MAXIMUS is faster than other solvers by up to an order of magnitude, but again
only for some inputs. Since no single solution offers the best runtime
performance for all inputs, we introduce a new data-dependent optimizer,
OPTIMUS, that selects online with minimal overhead the best MIPS solver for a
given input. Together, OPTIMUS and MAXIMUS outperform state-of-the-art MIPS
solvers by 3.2 on average, and up to 10.9, on widely studied
MIPS datasets.Comment: 12 pages, 8 figures, 2 table
Starling: An I/O-Efficient Disk-Resident Graph Index Framework for High-Dimensional Vector Similarity Search on Data Segment
High-dimensional vector similarity search (HVSS) is gaining prominence as a
powerful tool for various data science and AI applications. As vector data
scales up, in-memory indexes pose a significant challenge due to the
substantial increase in main memory requirements. A potential solution involves
leveraging disk-based implementation, which stores and searches vector data on
high-performance devices like NVMe SSDs. However, implementing HVSS for data
segments proves to be intricate in vector databases where a single machine
comprises multiple segments for system scalability. In this context, each
segment operates with limited memory and disk space, necessitating a delicate
balance between accuracy, efficiency, and space cost. Existing disk-based
methods fall short as they do not holistically address all these requirements
simultaneously. In this paper, we present Starling, an I/O-efficient
disk-resident graph index framework that optimizes data layout and search
strategy within the segment. It has two primary components: (1) a data layout
incorporating an in-memory navigation graph and a reordered disk-based graph
with enhanced locality, reducing the search path length and minimizing disk
bandwidth wastage; and (2) a block search strategy designed to minimize costly
disk I/O operations during vector query execution. Through extensive
experiments, we validate the effectiveness, efficiency, and scalability of
Starling. On a data segment with 2GB memory and 10GB disk capacity, Starling
can accommodate up to 33 million vectors in 128 dimensions, offering HVSS with
over 0.9 average precision and top-10 recall rate, and latency under 1
millisecond. The results showcase Starling's superior performance, exhibiting
43.9 higher throughput with 98% lower query latency compared to
state-of-the-art methods while maintaining the same level of accuracy.Comment: This paper has been accepted by SIGMOD 202
- …