IP Library Granted Patent US 12,488,002
Granted Patent B2
US 12,488,002 · App. 17/735,139 · Granted Dec 2, 2025

Associative graph search

Inventor: Avidan Akerib (Tel Aviv, IL)
Assignee: GSI Technology Inc.
G06F16/24553G06F16/2264
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,488,002
App. No.
17/735,139
Granted
Dec 2, 2025
Kind
B2
Abstract

An associative graph search system includes a KNN graph determiner to determine in advance W neighbors of each item in a dataset and to store each item and its neighbors in a KNN graph, a reduced dimension vector finder implemented on an associative processing unit (APU) to find a first number of first nearest neighbors of a query vector, the APU operating in a constant complexity irrespective of the size of the number, a result expander to find for each first nearest neighbor, W second nearest neighbors using the KNN graph thereby creating a group of neighbors, and a KNN full dimension vector re-ranker to find a final number of full dimension nearest neighbors of the full dimension query vector from the group of neighbors.

Claims (27)

1 . An associative graph search system comprising:

a K-nearest neighbor (KNN) KNN graph determiner to determine in advance W neighbors of each item in a full dimension vector dataset and to store each item and its neighbors in a KNN graph;

an associative processing unit (APU) comprising an associative memory array storing at least a dataset of reduced dimension vectors and activating a KNN search within said associative memory array on said dataset;

a reduced dimension vector finder to instruct said APU to find a first number of first nearest neighbors of a reduced dimension version of a full dimension query vector in said dataset, said APU operating in a constant complexity irrespective of the size of said first number;

a result expander to find for each first nearest neighbor, W second nearest neighbors using said KNN graph thereby creating a group of neighbors; and

a KNN full dimension vector re-ranker to find a final number of full dimension nearest neighbors of said full dimension query vector from said group of neighbors.

2 . The associative graph search system of claim 1 , said reduced dimension vector finder to use a similarity search method which is one of: Hamming distance, L1, L2, and Tanimoto.

3 . The associative graph search system of claim 1 said associative graph search system to expand said group of neighbors by activating said result expander on said second nearest neighbors.

4 . A method comprising:

a host processor providing a received a full dimension query vector to an associative processing unit (APU) comprising an associative memory array storing at least a dataset of reduced dimension vectors;

in said APU, reducing a dimension of said query vector to generate a reduced dimension query vector;

said APU activating a first K nearest neighbor (KNN) algorithm within said associative memory array to find a small number of nearest neighbors of said reduced dimension query vector in said dataset, said KNN algorithm operating in a constant complexity irrespective of the size of said small number;

expanding in said host processor said small number to a larger number of nearest neighbors by using a KNN graph;

fetching in said host processor full dimension vectors associated with said larger number of nearest neighbors; and

activating in said host processor a second K nearest neighbor (KNN) algorithm to find final K full dimension nearest neighbors of said query vector.

5 . The method of claim 4 wherein said activating a first K nearest neighbor (KNN) algorithm comprises using a similarity search method which is one of: Hamming distance, L1, L2, and Tanimoto.

6 . The method of claim 4 wherein said expanding is activated on said larger number of nearest neighbors to further expand the number of nearest neighbors.

7 . A method for associative graph search for finding a K nearest neighbors of a query object, the method comprising:

having a K-nearest neighbor (KNN) graph containing an index of an object to a database and W indexes of known neighbors of said object stored in a host processor, said database storing full dimension vectors of objects;

having a plurality of reduced dimension vectors stored in an associative memory array forming part of an associative processing unit (APU);

obtaining in said APU a reduced dimension query vector of said query object;

performing in said APU a first k nearest neighbor (KNN) algorithm to find a first set of nearest neighbor objects of said reduced dimension query vector in a dataset of reduced dimension vectors stored in said APU, said performing occurring in a constant complexity irrespective of the size of said first set;

obtaining in said host processor for each of said nearest neighbor object additional known neighbors from said KNN graph;

fetching in said host processor full dimension vectors of all said first neighbors and said additional known neighbors; and

performing in said host processor a second KNN search algorithm to find said K nearest neighbors of said query object out of said first neighbors and said additional known neighbors.

8 . The method of claim 7 wherein said performing a first K nearest neighbor (KNN) algorithm comprises using a similarity search method which is one of: Hamming distance, L1, L2, and Tanimoto.

9 . The method of claim 7 wherein said obtaining is activated on said known neighbors to further expand a number of said nearest neighbors.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 29, 2022
From: AKERIB, AVIDAN
To: GSI TECHNOLOGY INC.
Reel/Frame 061899/0964 →
Continuity (3)
Provisional Application 63192032 · May 23, 2021
Provisional Application 63334216 · Apr 25, 2022
Related Publication 20220374432A1 · Nov 24, 2022
References Cited (10)
US 10929751B2 · Ehrman et al. · 2021 [cited by applicant]
US 11409752B1 · Qadrud-Din · 2022 [cited by examiner]
US 20130230255A1 · Wang · 2013 [cited by examiner]
US 20140059037A1 · Swaminathan · 2014 [cited by examiner]
US 20180217836A1 · Johnson · 2018 [cited by examiner]
US 20180285685A1 · Singh · 2018 [cited by examiner]
US 20190087692A1 · Ding · 2019 [cited by examiner]
US 20190272344A1 · Lu · 2019 [cited by examiner]
US 20200410003A1 · Simhadri · 2020 [cited by examiner]
US 20210042357A1 · Wang · 2021 [cited by examiner]