Holo-NN: Holographic Nearest Neighbor Search via Compressive Sensing
Organizations: Google
Abstract
In the age of AI, privacy-preserving approximate nearest neighbor (ANN) search over high-dimensional embeddings has emerged as a critical yet frustratingly challenging domain, dominated by tradeoffs between speed, privacy, and accuracy. Traditional tree and graph-based indexing structures (e.g., HNSW, ScaNN) rely fundamentally on non-linear operations that are computationally intractable under Fully Homomorphic Encryption (FHE) or blind server-side constraints. In this paper, we introduce Holo-NN (Holographic Nearest Neighbor Search), an algebraic framework that replaces data-dependent branching with a single linear projection. Our key observation is that while distances across a database are dense, neighborhood membership is inherently sparse: only a handful of points ever lie close to a query. By pairing locality-preserving feature transforms with Compressive Sensing, Holo-NN folds the entire database offline into a compact holographic sensing matrix. At query time, encrypted search reduces to a single, non-interactive matrix-vector multiplication---requiring no FHE bootstrapping, no multi-round interaction, and no client-side index state. This turns private retrieval into an embarrassingly parallel, accuracy-tunable computation that runs out of the box on both CPUs and GPUs, scaling efficiently to production databases. We offer a comparison against other state-of-the-art Private ANN algorithms to help situate the method in the broader context of production-grade private retrieval.
Figures & tables
| Dataset | Metric Space & Transform | Regime | Rec@1 | Rec@ | Rec@50 | ||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| SIFT-1M | Euclidean RFF | 1,000,000 | 128 | 16,384 | 75.0% | 380,100 | 38.01% | 8 | 62.00% | 94.10% | 99.20% |
| 85.0% | 445,200 | 44.52% | 11 | 67.60% | 98.00% | 99.80% | |||||
| 95.0% | 631,200 | 63.12% | 19 | 72.30% | 99.70% | 100.00% | |||||
| 99.9% | 1,294,900 | 129.49% | 50 | 82.10% | 100.00% | 100.00% | |||||
| MNIST-784 | Pixel Manifold RFF | 60,000 | 784 | 8,192 | 75.0% | 6,000 | 10.00% | 30 | 23.37% | 75.42% | 79.95% |
| 85.0% | 9,000 | 15.00% | 30 | 32.22% | 86.02% | 90.54% |
| Execution surface | Wire / query | Latency | Server keys |
|---|---|---|---|
| Plaintext (no encryption) | |||
| Holo-NN: LinPIR (CPU, BFV [ 31 ] exact-int.) | ( ) | ||
| Holo-NN: CKKS-CPU (OpenFHE [ 1 ] , 12-thr) | |||
| Holo-NN: CKKS-GPU (Phantom [ 45 ] , RTX 3090) | |||
| Holo-NN: HEIR-GPU (Cheddar [ 3 , 17 ] , RTX 3090) |
| Retrieval Quality | ||||||||||
| System | Mechanism & Hardware | RTT | Wire / query | Client / Server State | Latency | Benchmark ( ) | MRR@10 | 1-r@10 | 10-r@10 | 10-r@50 |
| SANNS (USENIX Sec ’20) [ 14 ] | AHE + DORAM + GC 2PC ( server-private DB, 32-thr) | Multi † | no offline hints | SIFT-1M ( ) | — | — | — | |||
| PRECO (IEEE S&P ’22) [ 40 ] | LSH + DPF ( 2 non-colluding servers , 32-thr) | 2-srv DB replica | SIFT-1M ( ) | — | — | — | ||||
| Tiptoe (SOSP ’23) [ 29 ] | LHE + PIR ( public DB, 45-srv CPU) | model+centroids | Common Crawl ( ) | — ∗ | — | — | — | |||
| Pacmann (ICLR ’25) [ 48 ] | Sublinear PIR ( public DB, CPU) | client ( init) | MS MARCO ( ) | — | — | — | ||||
| Pacmann (ICLR ’25) [ 48 ] | Sublinear PIR ( public DB, CPU) | client ( init) | SIFT ( ) | — | — | — | ||||
| Cheddar 32b | Cheddar GPU | CKKS 64b | LinPIR Wire | 1-r@1 | 1-r@10 | 10-r@10 | 10-r@50 | MRR@10 | |
|---|---|---|---|---|---|---|---|---|---|
Approximate Nearest Neighbor Search
Approximate nearest neighbor search finds close vectors without exhaustive comparisons, enabling scalable retrieval in high-dimensional datasets.
See all 43 papers