liveBook · Manning

Approximate search algorithm

As explained in Advanced Algorithms and Data Structures

Approximate similarity search retrieves near-neighbor results while allowing bounded or practical deviations from the exact nearest results to improve performance.

Approximate similarity search retrieves sufficiently similar objects without insisting on the exact nearest result. It targets large, high-dimensional datasets—such as image collections—where exact tree searches become impractical because of the curse of dimensionality. section 10.0 section 10.4.3

Approximation exchanges some result accuracy for faster search through several complementary strategies:

  • Reduce dimensionality by projecting objects into a lower-dimensional space with PCA or the Discrete Fourier Transform. section 10.4.3
  • Traverse fewer branches by applying more aggressive pruning, accepting that the true nearest neighbor may be missed. section 10.4.3
  • Terminate early when a result passes a distance threshold or when further traversal is unlikely to improve it. section 10.4.3

Approximate image retrieval

Given an image query and an SS-tree, aggressive pruning can skip a branch containing the true nearest image when its region appears too distant. The search returns a faster, possibly nonoptimal neighbor instead. section 10.4.3

How Advanced Algorithms and Data Structures covers it

How deep it goes
Develops dimensionality reduction, aggressive pruning, and early termination, emphasizing the accuracy–performance trade-off.
Examples
Uses image retrieval, reduced-dimensional projections, pruned tree branches, and early stopping thresholds as concrete examples.
What it assumes
Assumes nearest-neighbor search and k-d tree concepts while extending them to R-trees, SS-trees, and approximate queries.
What you can do after
Apply via SS-trees or related indexing structures to trade search-result quality for improved practical performance.
How it connects
Connects nearest-neighbor search with k-d trees, R-trees, SS-trees, PCA, and the curse of dimensionality.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Advanced Algorithms and Data Structures. The section links point to the parts of the book it draws on.