In topological inference, the goal is to extract information about a shape, given only a sample of points from it. There are many approaches to this problem, but the one we focus on is persistent homology. We get a view of the data at different scales by imagining the points are balls and consider different radii. The shape information we want comes in the form of a persistence diagram, which describes the components, cycles, bubbles, etc in the space that persist over a range of different scales.
To actually compute a persistence diagram in the geometric setting, previous work required complexes of size n^O(d). We reduce this complexity to O(n) (hiding some large constants depending on d) by using ideas from mesh generation.
This talk will not assume any knowledge of topology. This is joint work with Gary Miller, Benoit Hudson, and Steve Oudot.
21. Approximate Birth and Death times
Persistence Diagrams differ by a constant factor.
Bottleneck Distance
d∞ = max |pi − qi |∞
B
i
22. Approximate Birth and Death times
Persistence Diagrams differ by a constant factor.
Bottleneck Distance
d∞ = max |pi − qi |∞
B
i
This is just the bottleneck distance of the log-scale diagrams.
23. Approximate Birth and Death times
Persistence Diagrams differ by a constant factor.
Bottleneck Distance
d∞ = max |pi − qi |∞
B
i
This is just the bottleneck distance of the log-scale diagrams.
log a − log b < ε
a
log b < ε
a
b <1+ε
24. We need to build a filtered simplicial complex.
Associate a birth time with each simplex in complex K.
At time , we have a complex K consisting of all
simplices born at or before time .
time
25. There are two phases, one is geometric the
other is topological.
Geometry Topology
(linear algebra)
Build a filtration, i.e. Compute the
a filtered simplicial persistence diagram
complex. (Run the Persistence Algorithm).
26. There are two phases, one is geometric the
other is topological.
Geometry Topology
(linear algebra)
Build a filtration, i.e. Compute the
a filtered simplicial persistence diagram
complex. (Run the Persistence Algorithm).
We’ll focus on this side.
27. There are two phases, one is geometric the
other is topological.
Geometry Topology
(linear algebra)
Build a filtration, i.e. Compute the
a filtered simplicial persistence diagram
complex. (Run the Persistence Algorithm).
We’ll focus on this side. Running time: O(N3).
N is the size of the complex.
32. Idea 2: Connect up everything close.
Čech Filtration: Add a k-simplex for every k+1
points that have a smallest enclosing ball of
radius at most .
33. Idea 2: Connect up everything close.
Čech Filtration: Add a k-simplex for every k+1
points that have a smallest enclosing ball of
radius at most .
Rips Filtration: Add a k-simplex for every k+1
points that have all pairwise distances at
most .
34. Idea 2: Connect up everything close.
Čech Filtration: Add a k-simplex for every k+1
points that have a smallest enclosing ball of
radius at most .
Rips Filtration: Add a k-simplex for every k+1
points that have all pairwise distances at
most .
Still nd, but we can quit early.
37. Our Idea: Build a quality mesh.
2
We can build meshes of size 2 O(d )n.
38. Meshing Counter-intuition
Delaunay Refinement
can take less time and space than
Delaunay Triangulation.
39. Meshing Counter-intuition
Delaunay Refinement
can take less time and space than
Delaunay Triangulation.
Theorem [Hudson, Miller, Phillips, ’06]:
A quality mesh of a point set can
be constructed in O(n log ∆) time,
where ∆ is the spread.
40. Meshing Counter-intuition
Delaunay Refinement
can take less time and space than
Delaunay Triangulation.
Theorem [Hudson, Miller, Phillips, ’06]:
A quality mesh of a point set can
be constructed in O(n log ∆) time,
where ∆ is the spread.
Theorem [Miller, Phillips, Sheehy, ’08]:
A quality mesh of a well-paced
point set has size O(n).
41. The α-mesh filtration
1. Build a mesh M.
2. Assign birth times to
vertices based on distance to P
(special case points very close to P).
3. For each simplex s of Del(M),
let birth(s) be the min birth
time of its vertices.
4. Feed this filtered complex to
the persistence algorithm.
42. The α-mesh filtration
1. Build a mesh M.
2. Assign birth times to
vertices based on distance to P
(special case points very close to P).
3. For each simplex s of Del(M),
let birth(s) be the min birth
time of its vertices.
4. Feed this filtered complex to
the persistence algorithm.
43. The α-mesh filtration
1. Build a mesh M.
2. Assign birth times to
vertices based on distance to P
(special case points very close to P).
3. For each simplex s of Del(M),
let birth(s) be the min birth
time of its vertices.
4. Feed this filtered complex to
the persistence algorithm.
44. The α-mesh filtration
1. Build a mesh M.
2. Assign birth times to
vertices based on distance to P
(special case points very close to P).
3. For each simplex s of Del(M),
let birth(s) be the min birth
time of its vertices.
4. Feed this filtered complex to
the persistence algorithm.
45. The α-mesh filtration
1. Build a mesh M.
2. Assign birth times to
vertices based on distance to P
(special case points very close to P).
3. For each simplex s of Del(M),
let birth(s) be the min birth
time of its vertices.
4. Feed this filtered complex to
the persistence algorithm.
46. The α-mesh filtration
1. Build a mesh M.
2. Assign birth times to
vertices based on distance to P
(special case points very close to P).
3. For each simplex s of Del(M),
let birth(s) be the min birth
time of its vertices.
4. Feed this filtered complex to
the persistence algorithm.
47. The α-mesh filtration
1. Build a mesh M.
2. Assign birth times to
vertices based on distance to P
(special case points very close to P).
3. For each simplex s of Del(M),
let birth(s) be the min birth
time of its vertices.
4. Feed this filtered complex to
the persistence algorithm.
49. Approximation via interleaving.
Definition:
Two filtrations, {Pα } and {Qα } are
ε-interleaved if Pα−ε ⊆ Qα ⊆ Pα+ε
for all α.
50. Approximation via interleaving.
Definition:
Two filtrations, {Pα } and {Qα } are
ε-interleaved if Pα−ε ⊆ Qα ⊆ Pα+ε
for all α.
Theorem [Chazal et al, ’09]:
If {Pα } and {Qα } are ε-interleaved then
their persistence diagrams are ε-close in
the bottleneck distance.
55. The Voronoi filtration interleaves with the
offset filtration.
Theorem:
α/ρ αρ
For all α > rP ,
VM ⊂ P α ⊂ VM ,
where rP is minimum distance between
any pair of points in P .
56. The Voronoi filtration interleaves with the
offset filtration.
Theorem:
α/ρ αρ
For all α > rP ,
VM ⊂ P α ⊂ VM ,
where rP is minimum distance between
any pair of points in P .
Finer refinement yields
a tighter interleaving.
57. The Voronoi filtration interleaves with the
offset filtration.
Theorem:
α/ρ αρ
For all α > rP ,
VM ⊂ P α ⊂ VM ,
where rP is minimum distance between
any pair of points in P .
Finer refinement yields
a tighter interleaving.
Special case for
small scales.
60. The Results Approximation ratio Complex Size
1. Build a mesh M. Previous
Work
1 nO(d)
2. Assign birth times to Simple
vertices based on distance to P mesh
filtration
(special case points very close
to P).**
Over-refine
3. For each simplex s of Del(M), the mesh
let birth(s) be the min birth
time of its vertices.
Linear-Size
4. Feed this filtered complex to Meshing
the persistence algorithm.
61. The Results Approximation ratio Complex Size
1. Build a mesh M. Previous
Work
1 nO(d)
2. Assign birth times to Simple
vertices based on distance to P mesh ρ 2 O(d2 )
n log ∆
filtration
(special case points very close
to P).**
Over-refine
3. For each simplex s of Del(M), the mesh
let birth(s) be the min birth
time of its vertices.
Linear-Size
4. Feed this filtered complex to Meshing
the persistence algorithm.
62. The Results Approximation ratio Complex Size
1. Build a mesh M. Previous
Work
1 nO(d)
2. Assign birth times to Simple
vertices based on distance to P mesh ρ =~3 2 O(d2 )
n log ∆
filtration
(special case points very close
to P).**
Over-refine
3. For each simplex s of Del(M), the mesh
let birth(s) be the min birth
time of its vertices.
Linear-Size
4. Feed this filtered complex to Meshing
the persistence algorithm.
63. The Results Approximation ratio Complex Size
1. Build a mesh M. Previous
Over-refine it. Work
1 nO(d)
2. Assign birth times to Simple
vertices based on distance to P mesh ρ =~3 2 O(d2 )
n log ∆
filtration
(special case points very close
to P).**
Over-refine −O(d2 )
1+ε n log ∆
3. For each simplex s of Del(M),
ε
the mesh
let birth(s) be the min birth
time of its vertices.
Linear-Size
4. Feed this filtered complex to Meshing
the persistence algorithm.
64. The Results Approximation ratio Complex Size
1. Build a mesh M. Previous
Over-refine it. Work
1 nO(d)
Use linear-size meshing.
2. Assign birth times to Simple
vertices based on distance to P mesh ρ =~3 2 O(d2 )
n log ∆
filtration
(special case points very close
to P).**
Over-refine −O(d2 )
1+ε n log ∆
3. For each simplex s of Del(M),
ε
the mesh
let birth(s) be the min birth
time of its vertices.
Linear-Size −O(d2 )
1 + ε + 3θ (εθ) n
4. Feed this filtered complex to Meshing
the persistence algorithm.