SlideShare a Scribd company logo
1 of 47
Download to read offline
Achieving Spatial Adaptivity in
Approximate Nearest Neighbor Search

     Jonathan Derryberry, Don Sheehy,
     Daniel Sleator, and Maverick Woo
p is a c-approximate nearest
neighbor of q if
d(q, p) < c d(q, NN(q)).
p is a c-approximate nearest
neighbor of q if
d(q, p) < c d(q, NN(q)).


Goals
 • O(log n) queries
p is a c-approximate nearest
neighbor of q if
d(q, p) < c d(q, NN(q)).


Goals
 • O(log n) queries
 • O(d3/2)-approximation
p is a c-approximate nearest
neighbor of q if
d(q, p) < c d(q, NN(q)).


Goals
 • O(log n) queries
 • O(d3/2)-approximation
 • Spatially Adaptive
Dynamic Finger Property:
Query time is O(log(δ(p, q)))
• where p is the previous query
result.
• q is the current query.
• δ(p,q) is the number of input points
between p and q.
Finger search pretty well solved in 1D
  [pointer machine: Brodal et al],[RAM, Andersson & Thorup]
Skip lists work.


Finger search pretty well solved in 1D
  [pointer machine: Brodal et al],[RAM, Andersson & Thorup]
Previous Work in 2D

•   Proximate Point Search [Demaine, Iacono, and Langerman,
    ’02/’04]

•   Proximate Point Location [Iacono and Langerman ’03]
This work.

• O(d3/2) ANN in Rd

• O(d lg(δ(p,q))) queries. (Finger Search!)
      2


• O(dn) space.
• O(d n lg n) preprocessing time
      2
This work.

• O(d3/2) ANN in Rd

• O(d lg(δ(p,q))) queries. (Finger Search!)
      2


• O(dn) space.
• O(d n lg n) preprocessing time
      2




          ?
8d |p-q|
8d |p-q|




δ(p, q) = # of input points in this box.
The placement
 of the origin
   matters.
A classic O(d3/2)-ANN Algorithm:
        [Bern93, Chan98, Liao01 et al]

     Put the input points in your favorite
   1-dimensional data structure, ordered by
                 the Z-order.

  Construct d+1 of these data structures, such
that all points inserted into the ith are shifted by
    (i/d+1) x diameter in every coordinate.

 For each query, search all d+1 data structures
 for a nearest neighbor in the shifted Z-order.
      Return the one that is closest in Rd.
Lemma [Chan]: With at least d+1 shifts, at
  most 1 is “bad” for each dimension.
Lemma [Chan]: With at least d+1 shifts, at
  most 1 is “bad” for each dimension.

   So x and NNx share a small QT cell.
Are we done?

Z-order reduces d-dimensions to 1-dimension.

             It works for ANN.

   Finger Search in 1-dimension is solved.
Making it work.

1. Use 2d+1 1D data structures that support finger
search.
2. Run all 2d+1 searches in parallel.
3. Stop when d+1 are finished.
4. Return the best answer among the d+1 that
finished.
5. Manually update the finger pointers in all 2d+1
structures.
If q and NNq are in a
small QT box relative to
 their distance then the
 approximation is good.
If q and NNq are in a    If p and q are in a small
small QT box relative to   QT box relative to their
 their distance then the       distance then the
 approximation is good.        runtime is good.
If q and NNq are in a      If p and q are in a small
    small QT box relative to     QT box relative to their
     their distance then the         distance then the
     approximation is good.          runtime is good.

             We apply the Chan Lemma twice.
• Since at most d are bad for p and q, we can stop after all
           but d finish and the runtime is good.
•    Since d+1 are left over, at least one will be a good
                      approximation.
Summary

A new data structure.

•  O(d3/2) ANN in Rd

• O(d lg(δ(p,q))) queries. (Finger Search!)
       2


• O(dn) space.
• O(d n lg n) preprocessing time
       2
Thank you.
Thank you.
  Questions?

More Related Content

What's hot

A Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsA Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsMatt Parker
 
The discrete fourier transform (dsp) 4
The discrete fourier transform  (dsp) 4The discrete fourier transform  (dsp) 4
The discrete fourier transform (dsp) 4HIMANSHU DIWAKAR
 
Box-fitting algorithm presentation
Box-fitting algorithm presentationBox-fitting algorithm presentation
Box-fitting algorithm presentationRidlo Wibowo
 
Can recurrent neural networks warp time
Can recurrent neural networks warp timeCan recurrent neural networks warp time
Can recurrent neural networks warp timeDanbi Cho
 
DFT and its properties
DFT and its propertiesDFT and its properties
DFT and its propertiesssuser2797e4
 
NFA DFA Equivalence theorem
NFA DFA Equivalence theorem NFA DFA Equivalence theorem
NFA DFA Equivalence theorem niveditJain
 
Ch06b entropy
Ch06b entropyCh06b entropy
Ch06b entropysuresh301
 
Algorithm Design and Complexity - Course 7
Algorithm Design and Complexity - Course 7Algorithm Design and Complexity - Course 7
Algorithm Design and Complexity - Course 7Traian Rebedea
 
Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...
Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...
Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...Tomonari Masada
 
Noisy optimization --- (theory oriented) Survey
Noisy optimization --- (theory oriented) SurveyNoisy optimization --- (theory oriented) Survey
Noisy optimization --- (theory oriented) SurveyOlivier Teytaud
 
Discrete fourier transform
Discrete fourier transformDiscrete fourier transform
Discrete fourier transformMOHAMMAD AKRAM
 

What's hot (19)

Biconnectivity
BiconnectivityBiconnectivity
Biconnectivity
 
A Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable FunctionsA Commutative Alternative to Fractional Calculus on k-Differentiable Functions
A Commutative Alternative to Fractional Calculus on k-Differentiable Functions
 
The discrete fourier transform (dsp) 4
The discrete fourier transform  (dsp) 4The discrete fourier transform  (dsp) 4
The discrete fourier transform (dsp) 4
 
Box-fitting algorithm presentation
Box-fitting algorithm presentationBox-fitting algorithm presentation
Box-fitting algorithm presentation
 
discrete-hmm
discrete-hmmdiscrete-hmm
discrete-hmm
 
Dft
DftDft
Dft
 
Can recurrent neural networks warp time
Can recurrent neural networks warp timeCan recurrent neural networks warp time
Can recurrent neural networks warp time
 
DFT and its properties
DFT and its propertiesDFT and its properties
DFT and its properties
 
Transforms
TransformsTransforms
Transforms
 
NFA DFA Equivalence theorem
NFA DFA Equivalence theorem NFA DFA Equivalence theorem
NFA DFA Equivalence theorem
 
Ch06b entropy
Ch06b entropyCh06b entropy
Ch06b entropy
 
Radix-2 DIT FFT
Radix-2 DIT FFT Radix-2 DIT FFT
Radix-2 DIT FFT
 
Algorithm Design and Complexity - Course 7
Algorithm Design and Complexity - Course 7Algorithm Design and Complexity - Course 7
Algorithm Design and Complexity - Course 7
 
Cpsc125 ch6sec3
Cpsc125 ch6sec3Cpsc125 ch6sec3
Cpsc125 ch6sec3
 
Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...
Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...
Accelerating Collapsed Variational Bayesian Inference for Latent Dirichlet Al...
 
Noisy optimization --- (theory oriented) Survey
Noisy optimization --- (theory oriented) SurveyNoisy optimization --- (theory oriented) Survey
Noisy optimization --- (theory oriented) Survey
 
Kumegawa russia
Kumegawa russiaKumegawa russia
Kumegawa russia
 
Scalable Link Discovery for Modern Data-Driven Applications
Scalable Link Discovery for Modern Data-Driven ApplicationsScalable Link Discovery for Modern Data-Driven Applications
Scalable Link Discovery for Modern Data-Driven Applications
 
Discrete fourier transform
Discrete fourier transformDiscrete fourier transform
Discrete fourier transform
 

Viewers also liked

Learning with Nets and Meshes
Learning with Nets and MeshesLearning with Nets and Meshes
Learning with Nets and MeshesDon Sheehy
 
Contrato Lobistas Pineda Ponce
Contrato Lobistas Pineda PonceContrato Lobistas Pineda Ponce
Contrato Lobistas Pineda Poncetony2706
 
The Centervertex Theorem (CCCG)
The Centervertex Theorem (CCCG)The Centervertex Theorem (CCCG)
The Centervertex Theorem (CCCG)Don Sheehy
 
Flips in Computational Geometry
Flips in Computational GeometryFlips in Computational Geometry
Flips in Computational GeometryDon Sheehy
 
Mark And Haleigh Slideshow
Mark And Haleigh SlideshowMark And Haleigh Slideshow
Mark And Haleigh SlideshowDavid Wenger
 
Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)
Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)
Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)Sport
 
Wedding Portfolio
Wedding PortfolioWedding Portfolio
Wedding PortfolioCarterphoto
 
Physician-patient interaction and the Internet: The Canadian Experience
Physician-patient interaction and the Internet: The Canadian ExperiencePhysician-patient interaction and the Internet: The Canadian Experience
Physician-patient interaction and the Internet: The Canadian ExperiencePat Rich
 
Proyecto id logistics
Proyecto id logisticsProyecto id logistics
Proyecto id logisticsMANUEL SILVA
 
Internet pour les DNL francophones
Internet pour les DNL francophonesInternet pour les DNL francophones
Internet pour les DNL francophonesCarmen Vera
 

Viewers also liked (12)

Learning with Nets and Meshes
Learning with Nets and MeshesLearning with Nets and Meshes
Learning with Nets and Meshes
 
Contrato Lobistas Pineda Ponce
Contrato Lobistas Pineda PonceContrato Lobistas Pineda Ponce
Contrato Lobistas Pineda Ponce
 
The Centervertex Theorem (CCCG)
The Centervertex Theorem (CCCG)The Centervertex Theorem (CCCG)
The Centervertex Theorem (CCCG)
 
Flips in Computational Geometry
Flips in Computational GeometryFlips in Computational Geometry
Flips in Computational Geometry
 
石川合宿
石川合宿石川合宿
石川合宿
 
Mark And Haleigh Slideshow
Mark And Haleigh SlideshowMark And Haleigh Slideshow
Mark And Haleigh Slideshow
 
Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)
Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)
Büyükşehir Belediyeleri Stratejik Planlarında Spor (2006-2011)
 
Wedding Portfolio
Wedding PortfolioWedding Portfolio
Wedding Portfolio
 
Physician-patient interaction and the Internet: The Canadian Experience
Physician-patient interaction and the Internet: The Canadian ExperiencePhysician-patient interaction and the Internet: The Canadian Experience
Physician-patient interaction and the Internet: The Canadian Experience
 
Insect pests 2012
Insect pests 2012Insect pests 2012
Insect pests 2012
 
Proyecto id logistics
Proyecto id logisticsProyecto id logistics
Proyecto id logistics
 
Internet pour les DNL francophones
Internet pour les DNL francophonesInternet pour les DNL francophones
Internet pour les DNL francophones
 

Similar to Achieving Spatial Adaptivity while Searching for Approximate Nearest Neighbors

ClosestPairClosestPairClosestPairClosestPair
ClosestPairClosestPairClosestPairClosestPairClosestPairClosestPairClosestPairClosestPair
ClosestPairClosestPairClosestPairClosestPairShanmuganathan C
 
Converting High Dimensional Problems to Low Dimensional Ones
Converting High Dimensional Problems to Low Dimensional OnesConverting High Dimensional Problems to Low Dimensional Ones
Converting High Dimensional Problems to Low Dimensional OnesStrand Life Sciences Pvt Ltd
 
Continuous and Discrete-Time Analysis of SGD
Continuous and Discrete-Time Analysis of SGDContinuous and Discrete-Time Analysis of SGD
Continuous and Discrete-Time Analysis of SGDValentin De Bortoli
 
Solving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear AlgebraSolving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear Algebracseiitgn
 
Skiena algorithm 2007 lecture09 linear sorting
Skiena algorithm 2007 lecture09 linear sortingSkiena algorithm 2007 lecture09 linear sorting
Skiena algorithm 2007 lecture09 linear sortingzukun
 
1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptxpallavidhade2
 
The Persistent Homology of Distance Functions under Random Projection
The Persistent Homology of Distance Functions under Random ProjectionThe Persistent Homology of Distance Functions under Random Projection
The Persistent Homology of Distance Functions under Random ProjectionDon Sheehy
 
Approximate Nearest Neighbour in Higher Dimensions
Approximate Nearest Neighbour in Higher DimensionsApproximate Nearest Neighbour in Higher Dimensions
Approximate Nearest Neighbour in Higher DimensionsShrey Verma
 
Analysis and design of algorithms part 3
Analysis and design of algorithms part 3Analysis and design of algorithms part 3
Analysis and design of algorithms part 3Deepak John
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsPK Lehre
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsPer Kristian Lehre
 
Waveform_codingUNIT-II_DC_-PPT.pptx
Waveform_codingUNIT-II_DC_-PPT.pptxWaveform_codingUNIT-II_DC_-PPT.pptx
Waveform_codingUNIT-II_DC_-PPT.pptxKIRUTHIKAAR2
 

Similar to Achieving Spatial Adaptivity while Searching for Approximate Nearest Neighbors (20)

ClosestPairClosestPairClosestPairClosestPair
ClosestPairClosestPairClosestPairClosestPairClosestPairClosestPairClosestPairClosestPair
ClosestPairClosestPairClosestPairClosestPair
 
QMC Program: Trends and Advances in Monte Carlo Sampling Algorithms Workshop,...
QMC Program: Trends and Advances in Monte Carlo Sampling Algorithms Workshop,...QMC Program: Trends and Advances in Monte Carlo Sampling Algorithms Workshop,...
QMC Program: Trends and Advances in Monte Carlo Sampling Algorithms Workshop,...
 
Converting High Dimensional Problems to Low Dimensional Ones
Converting High Dimensional Problems to Low Dimensional OnesConverting High Dimensional Problems to Low Dimensional Ones
Converting High Dimensional Problems to Low Dimensional Ones
 
Continuous and Discrete-Time Analysis of SGD
Continuous and Discrete-Time Analysis of SGDContinuous and Discrete-Time Analysis of SGD
Continuous and Discrete-Time Analysis of SGD
 
Analysis of algo
Analysis of algoAnalysis of algo
Analysis of algo
 
Solving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear AlgebraSolving connectivity problems via basic Linear Algebra
Solving connectivity problems via basic Linear Algebra
 
Skiena algorithm 2007 lecture09 linear sorting
Skiena algorithm 2007 lecture09 linear sortingSkiena algorithm 2007 lecture09 linear sorting
Skiena algorithm 2007 lecture09 linear sorting
 
Lec36
Lec36Lec36
Lec36
 
Knn solution
Knn solutionKnn solution
Knn solution
 
LSH
LSHLSH
LSH
 
1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx1_Asymptotic_Notation_pptx.pptx
1_Asymptotic_Notation_pptx.pptx
 
The Persistent Homology of Distance Functions under Random Projection
The Persistent Homology of Distance Functions under Random ProjectionThe Persistent Homology of Distance Functions under Random Projection
The Persistent Homology of Distance Functions under Random Projection
 
COCOON14
COCOON14COCOON14
COCOON14
 
Approximate Nearest Neighbour in Higher Dimensions
Approximate Nearest Neighbour in Higher DimensionsApproximate Nearest Neighbour in Higher Dimensions
Approximate Nearest Neighbour in Higher Dimensions
 
sorting
sortingsorting
sorting
 
Analysis and design of algorithms part 3
Analysis and design of algorithms part 3Analysis and design of algorithms part 3
Analysis and design of algorithms part 3
 
Deblurring in ct
Deblurring in ctDeblurring in ct
Deblurring in ct
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution Algorithms
 
Simplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution AlgorithmsSimplified Runtime Analysis of Estimation of Distribution Algorithms
Simplified Runtime Analysis of Estimation of Distribution Algorithms
 
Waveform_codingUNIT-II_DC_-PPT.pptx
Waveform_codingUNIT-II_DC_-PPT.pptxWaveform_codingUNIT-II_DC_-PPT.pptx
Waveform_codingUNIT-II_DC_-PPT.pptx
 

More from Don Sheehy

Some Thoughts on Sampling
Some Thoughts on SamplingSome Thoughts on Sampling
Some Thoughts on SamplingDon Sheehy
 
Characterizing the Distortion of Some Simple Euclidean Embeddings
Characterizing the Distortion of Some Simple Euclidean EmbeddingsCharacterizing the Distortion of Some Simple Euclidean Embeddings
Characterizing the Distortion of Some Simple Euclidean EmbeddingsDon Sheehy
 
Sensors and Samples: A Homological Approach
Sensors and Samples:  A Homological ApproachSensors and Samples:  A Homological Approach
Sensors and Samples: A Homological ApproachDon Sheehy
 
Persistent Homology and Nested Dissection
Persistent Homology and Nested DissectionPersistent Homology and Nested Dissection
Persistent Homology and Nested DissectionDon Sheehy
 
Geometric and Topological Data Analysis
Geometric and Topological Data AnalysisGeometric and Topological Data Analysis
Geometric and Topological Data AnalysisDon Sheehy
 
Geometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftGeometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftDon Sheehy
 
A New Approach to Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
A New Approach to Output-Sensitive Voronoi Diagrams and Delaunay TriangulationsA New Approach to Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
A New Approach to Output-Sensitive Voronoi Diagrams and Delaunay TriangulationsDon Sheehy
 
Optimal Meshing
Optimal MeshingOptimal Meshing
Optimal MeshingDon Sheehy
 
Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
Output-Sensitive Voronoi Diagrams and Delaunay Triangulations Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
Output-Sensitive Voronoi Diagrams and Delaunay Triangulations Don Sheehy
 
Mesh Generation and Topological Data Analysis
Mesh Generation and Topological Data AnalysisMesh Generation and Topological Data Analysis
Mesh Generation and Topological Data AnalysisDon Sheehy
 
SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips FiltrationSOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips FiltrationDon Sheehy
 
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...Don Sheehy
 
Minimax Rates for Homology Inference
Minimax Rates for Homology InferenceMinimax Rates for Homology Inference
Minimax Rates for Homology InferenceDon Sheehy
 
A Multicover Nerve for Geometric Inference
A Multicover Nerve for Geometric InferenceA Multicover Nerve for Geometric Inference
A Multicover Nerve for Geometric InferenceDon Sheehy
 
ATMCS: Linear-Size Approximations to the Vietoris-Rips Filtration
ATMCS: Linear-Size Approximations to the Vietoris-Rips FiltrationATMCS: Linear-Size Approximations to the Vietoris-Rips Filtration
ATMCS: Linear-Size Approximations to the Vietoris-Rips FiltrationDon Sheehy
 
New Bounds on the Size of Optimal Meshes
New Bounds on the Size of Optimal MeshesNew Bounds on the Size of Optimal Meshes
New Bounds on the Size of Optimal MeshesDon Sheehy
 
Beating the Spread: Time-Optimal Point Meshing
Beating the Spread: Time-Optimal Point MeshingBeating the Spread: Time-Optimal Point Meshing
Beating the Spread: Time-Optimal Point MeshingDon Sheehy
 
Ball Packings and Fat Voronoi Diagrams
Ball Packings and Fat Voronoi DiagramsBall Packings and Fat Voronoi Diagrams
Ball Packings and Fat Voronoi DiagramsDon Sheehy
 
On Nets and Meshes
On Nets and MeshesOn Nets and Meshes
On Nets and MeshesDon Sheehy
 
Topological Inference via Meshing
Topological Inference via MeshingTopological Inference via Meshing
Topological Inference via MeshingDon Sheehy
 

More from Don Sheehy (20)

Some Thoughts on Sampling
Some Thoughts on SamplingSome Thoughts on Sampling
Some Thoughts on Sampling
 
Characterizing the Distortion of Some Simple Euclidean Embeddings
Characterizing the Distortion of Some Simple Euclidean EmbeddingsCharacterizing the Distortion of Some Simple Euclidean Embeddings
Characterizing the Distortion of Some Simple Euclidean Embeddings
 
Sensors and Samples: A Homological Approach
Sensors and Samples:  A Homological ApproachSensors and Samples:  A Homological Approach
Sensors and Samples: A Homological Approach
 
Persistent Homology and Nested Dissection
Persistent Homology and Nested DissectionPersistent Homology and Nested Dissection
Persistent Homology and Nested Dissection
 
Geometric and Topological Data Analysis
Geometric and Topological Data AnalysisGeometric and Topological Data Analysis
Geometric and Topological Data Analysis
 
Geometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic LiftGeometric Separators and the Parabolic Lift
Geometric Separators and the Parabolic Lift
 
A New Approach to Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
A New Approach to Output-Sensitive Voronoi Diagrams and Delaunay TriangulationsA New Approach to Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
A New Approach to Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
 
Optimal Meshing
Optimal MeshingOptimal Meshing
Optimal Meshing
 
Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
Output-Sensitive Voronoi Diagrams and Delaunay Triangulations Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
Output-Sensitive Voronoi Diagrams and Delaunay Triangulations
 
Mesh Generation and Topological Data Analysis
Mesh Generation and Topological Data AnalysisMesh Generation and Topological Data Analysis
Mesh Generation and Topological Data Analysis
 
SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips FiltrationSOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
 
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
Linear-Size Approximations to the Vietoris-Rips Filtration - Presented at Uni...
 
Minimax Rates for Homology Inference
Minimax Rates for Homology InferenceMinimax Rates for Homology Inference
Minimax Rates for Homology Inference
 
A Multicover Nerve for Geometric Inference
A Multicover Nerve for Geometric InferenceA Multicover Nerve for Geometric Inference
A Multicover Nerve for Geometric Inference
 
ATMCS: Linear-Size Approximations to the Vietoris-Rips Filtration
ATMCS: Linear-Size Approximations to the Vietoris-Rips FiltrationATMCS: Linear-Size Approximations to the Vietoris-Rips Filtration
ATMCS: Linear-Size Approximations to the Vietoris-Rips Filtration
 
New Bounds on the Size of Optimal Meshes
New Bounds on the Size of Optimal MeshesNew Bounds on the Size of Optimal Meshes
New Bounds on the Size of Optimal Meshes
 
Beating the Spread: Time-Optimal Point Meshing
Beating the Spread: Time-Optimal Point MeshingBeating the Spread: Time-Optimal Point Meshing
Beating the Spread: Time-Optimal Point Meshing
 
Ball Packings and Fat Voronoi Diagrams
Ball Packings and Fat Voronoi DiagramsBall Packings and Fat Voronoi Diagrams
Ball Packings and Fat Voronoi Diagrams
 
On Nets and Meshes
On Nets and MeshesOn Nets and Meshes
On Nets and Meshes
 
Topological Inference via Meshing
Topological Inference via MeshingTopological Inference via Meshing
Topological Inference via Meshing
 

Recently uploaded

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

Achieving Spatial Adaptivity while Searching for Approximate Nearest Neighbors

  • 1. Achieving Spatial Adaptivity in Approximate Nearest Neighbor Search Jonathan Derryberry, Don Sheehy, Daniel Sleator, and Maverick Woo
  • 2.
  • 3.
  • 4.
  • 5.
  • 6. p is a c-approximate nearest neighbor of q if d(q, p) < c d(q, NN(q)).
  • 7. p is a c-approximate nearest neighbor of q if d(q, p) < c d(q, NN(q)). Goals • O(log n) queries
  • 8. p is a c-approximate nearest neighbor of q if d(q, p) < c d(q, NN(q)). Goals • O(log n) queries • O(d3/2)-approximation
  • 9. p is a c-approximate nearest neighbor of q if d(q, p) < c d(q, NN(q)). Goals • O(log n) queries • O(d3/2)-approximation • Spatially Adaptive
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16. Dynamic Finger Property: Query time is O(log(δ(p, q))) • where p is the previous query result. • q is the current query. • δ(p,q) is the number of input points between p and q.
  • 17.
  • 18. Finger search pretty well solved in 1D [pointer machine: Brodal et al],[RAM, Andersson & Thorup]
  • 19. Skip lists work. Finger search pretty well solved in 1D [pointer machine: Brodal et al],[RAM, Andersson & Thorup]
  • 20. Previous Work in 2D • Proximate Point Search [Demaine, Iacono, and Langerman, ’02/’04] • Proximate Point Location [Iacono and Langerman ’03]
  • 21. This work. • O(d3/2) ANN in Rd • O(d lg(δ(p,q))) queries. (Finger Search!) 2 • O(dn) space. • O(d n lg n) preprocessing time 2
  • 22. This work. • O(d3/2) ANN in Rd • O(d lg(δ(p,q))) queries. (Finger Search!) 2 • O(dn) space. • O(d n lg n) preprocessing time 2 ?
  • 23.
  • 24.
  • 25.
  • 26.
  • 28. 8d |p-q| δ(p, q) = # of input points in this box.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33. The placement of the origin matters.
  • 34. A classic O(d3/2)-ANN Algorithm: [Bern93, Chan98, Liao01 et al] Put the input points in your favorite 1-dimensional data structure, ordered by the Z-order. Construct d+1 of these data structures, such that all points inserted into the ith are shifted by (i/d+1) x diameter in every coordinate. For each query, search all d+1 data structures for a nearest neighbor in the shifted Z-order. Return the one that is closest in Rd.
  • 35.
  • 36.
  • 37. Lemma [Chan]: With at least d+1 shifts, at most 1 is “bad” for each dimension.
  • 38. Lemma [Chan]: With at least d+1 shifts, at most 1 is “bad” for each dimension. So x and NNx share a small QT cell.
  • 39. Are we done? Z-order reduces d-dimensions to 1-dimension. It works for ANN. Finger Search in 1-dimension is solved.
  • 40.
  • 41. Making it work. 1. Use 2d+1 1D data structures that support finger search. 2. Run all 2d+1 searches in parallel. 3. Stop when d+1 are finished. 4. Return the best answer among the d+1 that finished. 5. Manually update the finger pointers in all 2d+1 structures.
  • 42. If q and NNq are in a small QT box relative to their distance then the approximation is good.
  • 43. If q and NNq are in a If p and q are in a small small QT box relative to QT box relative to their their distance then the distance then the approximation is good. runtime is good.
  • 44. If q and NNq are in a If p and q are in a small small QT box relative to QT box relative to their their distance then the distance then the approximation is good. runtime is good. We apply the Chan Lemma twice. • Since at most d are bad for p and q, we can stop after all but d finish and the runtime is good. • Since d+1 are left over, at least one will be a good approximation.
  • 45. Summary A new data structure. • O(d3/2) ANN in Rd • O(d lg(δ(p,q))) queries. (Finger Search!) 2 • O(dn) space. • O(d n lg n) preprocessing time 2
  • 47. Thank you. Questions?