KNN Graph Expansion for Accurate Low-I/O Neighbor Search
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing KNN search algorithms using reduced dimension vectors in Associative Processing Units (APUs) compromise accuracy and increase Input/Output operations due to the need for a large number of re-rank operations, leading to reduced performance.
Innovation Solution
Pre-calculating and storing a KNN graph that includes each object's W nearest neighbors, allowing the APU to perform a first KNN search with a reduced number of neighbors, and using this graph to expand the number of neighbors in the host processor, maintaining accuracy without increasing I/O operations.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Speed
If reduced dimension vectors are used in APU for KNN search, then search speed improves and memory utilization improves, but accuracy deteriorates and number of I/O operations increases
Solution Approach 1:
The patent pre-calculates and stores KNN graphs that map reduced dimension vectors to their nearest neighbor full dimension vectors before the actual search query. When a query arrives, the system performs a quick reduced dimension search in APU to find candidate neighbors, then uses the pre-built KNN graph to immediately retrieve accurate full dimension neighbors without requiring multiple re-rank I/O operations. This preliminary preparation resolves the contradiction by enabling fast reduced dimension search while maintaining accuracy through pre-computed neighbor relationships.
Solution Approach 2:
The patent introduces a KNN graph structure as an intermediary between the reduced dimension vector search in APU and the final accuracy requirement. The graph acts as a mediator that takes the approximate results from reduced dimension search and translates them into accurate full dimension neighbor results. This intermediary structure allows the system to benefit from fast reduced dimension comparison while ensuring final search accuracy without requiring numerous I/O operations for re-ranking.
2Quantity of substance
If reduced dimension vectors are used in APU, then memory utilization improves, but accuracy deteriorates requiring more re-rank operations
Solution Approach 1:
The system pre-computes and stores KNN graphs that capture the neighbor relationships between reduced and full dimension vectors. This preliminary action allows the system to store compact reduced dimension representations in APU memory while having ready-accessible full dimension neighbor information in the KNN graph. During search, the pre-built graph enables accurate result retrieval without requiring additional I/O operations for re-ranking, thus maintaining both memory efficiency and accuracy.
3Measurement precision
If larger number of reduced dimension neighbors are returned to maintain accuracy, then accuracy improves, but number of I/O operations increases reducing performance
Solution Approach 1:
The KNN graph serves as an intermediary structure that enables the system to return a small number of candidate neighbors from the fast APU reduced dimension search and then efficiently expand these to the final set of accurate full dimension neighbors using the pre-computed graph relationships. This mediator structure allows the system to maintain high accuracy while performing far fewer I/O operations than would be required without the graph, thus preserving performance.
Data Source
AI summary
A method for determining a K-Nearest Neighbor (KNN) graph for a dataset of full dimension vectors includes, for each record in a database of full dimension vectors, performing a K-Nearest Neighbor (KNN) search to locate W nearest neighbors of the record; and updating a KNN graph to include an index of the record and W indices of the W nearest neighbors located for the record. The updating includes creating a first node for the record, the first node comprising an index of the record, and creating W second-level nodes, each second-level node comprising an index of one of the W nearest neighbors.


