Transcript
Page 1: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 2: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 3: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 4: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 5: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 6: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 7: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 8: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 9: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 10: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 11: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

A filtration is a growing sequence of spaces.

Page 12: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

A filtration is a growing sequence of spaces.

A persistence diagram describes the topological changes over time.

Page 13: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

A filtration is a growing sequence of spaces.

Dea

th

Birth

A persistence diagram describes the topological changes over time.

Page 14: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

Page 15: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

Page 16: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

Page 17: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

Page 18: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

Page 19: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

Page 20: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

R! is the powerset 2P .

Page 21: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Vietoris-Rips Filtration encodes the topology of a metric space when viewed at different scales.

Input: A finite metric space (P,d).Output: A sequence of simplicial complexes {R!}such that ! ! R! i! d(p, q) " 2" for all p, q ! !.

R! is the powerset 2P .

This is too big!

Page 22: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Linear-Size Approximations to the Vietoris-Rips Filtration

Don SheehyGeometrica Group

INRIA Saclay

Page 23: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 24: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 25: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 26: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 27: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 28: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Previous Approaches at subsampling:

Page 29: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Previous Approaches at subsampling:Witness Complexes [dSC04, BGO07]

Page 30: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Previous Approaches at subsampling:Witness Complexes [dSC04, BGO07]Persistence-based Reconstruction [CO08]

Page 31: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Previous Approaches at subsampling:Witness Complexes [dSC04, BGO07]Persistence-based Reconstruction [CO08]

Other methods:

Page 32: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Previous Approaches at subsampling:Witness Complexes [dSC04, BGO07]Persistence-based Reconstruction [CO08]

Other methods:Meshes in Euclidean Space [HMSO10]

Page 33: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Previous Approaches at subsampling:Witness Complexes [dSC04, BGO07]Persistence-based Reconstruction [CO08]

Other methods:Meshes in Euclidean Space [HMSO10]Topological simplification [Z10, ALS11]

Page 34: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration
Page 35: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Two tricks:

Page 36: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Two tricks:1 Embed the zigzag in a topologically equivalent filtration.

Page 37: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Two tricks:

!! Q! "" Q" !! Q# ""

!! R̂! !! R̂" !! R̂# !!

!! !! !!

1 Embed the zigzag in a topologically equivalent filtration.

Zigzag filtration

Standard filtration

Page 38: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Two tricks:

2 Perturb the metric so the persistence module does not zigzag.

!! Q! "" Q" !! Q# ""

!! R̂! !! R̂" !! R̂# !!

!! !! !!

1 Embed the zigzag in a topologically equivalent filtration.

Zigzag filtration

Standard filtration

Page 39: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Two tricks:

2 Perturb the metric so the persistence module does not zigzag.

! H(Q!) " H(Q") ! H(Q#) "

!! Q! "" Q" !! Q# ""

!! R̂! !! R̂" !! R̂# !!

!! !! !!

1 Embed the zigzag in a topologically equivalent filtration.

Zigzag filtration

Standard filtration

Page 40: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

!=

!=

Two tricks:

2 Perturb the metric so the persistence module does not zigzag.

! H(Q!) " H(Q") ! H(Q#) "

!! Q! "" Q" !! Q# ""

!! R̂! !! R̂" !! R̂# !!

!! !! !!

1 Embed the zigzag in a topologically equivalent filtration.

Zigzag filtration

Standard filtration

Page 41: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

!=

!=

Two tricks:

2 Perturb the metric so the persistence module does not zigzag.

! H(Q!) ! H(Q") ! H(Q#) !

!! Q! "" Q" !! Q# ""

!! R̂! !! R̂" !! R̂# !!

!! !! !!

1 Embed the zigzag in a topologically equivalent filtration.

Zigzag filtration

Standard filtration

Page 42: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

!=

!=

Two tricks:

2 Perturb the metric so the persistence module does not zigzag.

! H(Q!) ! H(Q") ! H(Q#) !

!! Q! "" Q" !! Q# ""

!! R̂! !! R̂" !! R̂# !!

!! !! !!

1 Embed the zigzag in a topologically equivalent filtration.

Zigzag filtration

Standard filtration

At the homology level, there is no zigzag.

Page 43: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Result:

Page 44: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Result:Given an n point metric (P, d), there exists a zigzag filtration of size O(n) whose persistence diagram (1+ ε)-approximates that of the Rips filtration.

Page 45: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Result:Given an n point metric (P, d), there exists a zigzag filtration of size O(n) whose persistence diagram (1+ ε)-approximates that of the Rips filtration.

(Big-O hides doubling dimension and approximation factor, ε)

Page 46: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Result:Given an n point metric (P, d), there exists a zigzag filtration of size O(n) whose persistence diagram (1+ ε)-approximates that of the Rips filtration.

(Big-O hides doubling dimension and approximation factor, ε)

Page 47: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Result:Given an n point metric (P, d), there exists a zigzag filtration of size O(n) whose persistence diagram (1+ ε)-approximates that of the Rips filtration.

(Big-O hides doubling dimension and approximation factor, ε)

Page 48: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

The Result:Given an n point metric (P, d), there exists a zigzag filtration of size O(n) whose persistence diagram (1+ ε)-approximates that of the Rips filtration.

(Big-O hides doubling dimension and approximation factor, ε)

A metric with doubling dimension d is one for which every ball of radius 2r can be covered by 2d balls of radius r for all r.

Page 49: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.

Page 50: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.Let tp be the time when point p is removed.

Page 51: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.

wp(!) =

!

"

#

0 if ! ! (1" ")tp!" (1" ")tp if (1" ")tp < ! < tp

"! if tp ! !

Let tp be the time when point p is removed.

Page 52: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.

wp(!) =

!

"

#

0 if ! ! (1" ")tp!" (1" ")tp if (1" ")tp < ! < tp

"! if tp ! !

tp(1! !)tp00

Let tp be the time when point p is removed.

Page 53: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.

d̂!(p, q) = d(p, q) + wp(!) + wq(!)

wp(!) =

!

"

#

0 if ! ! (1" ")tp!" (1" ")tp if (1" ")tp < ! < tp

"! if tp ! !

tp(1! !)tp00

Let tp be the time when point p is removed.

Page 54: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.

d̂!(p, q) = d(p, q) + wp(!) + wq(!)

wp(!) =

!

"

#

0 if ! ! (1" ")tp!" (1" ")tp if (1" ")tp < ! < tp

"! if tp ! !

tp(1! !)tp00

Let tp be the time when point p is removed.

! ! R! " d(p, q) # 2" for all p, q ! !Rips Complex:

Page 55: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.

d̂!(p, q) = d(p, q) + wp(!) + wq(!)

wp(!) =

!

"

#

0 if ! ! (1" ")tp!" (1" ")tp if (1" ")tp < ! < tp

"! if tp ! !

tp(1! !)tp00

Let tp be the time when point p is removed.

! ! R! " d(p, q) # 2" for all p, q ! !Rips Complex:

Relaxed Rips: ! ! R̂! " d̂!(p, q) # 2" for all p, q ! !

Page 56: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

How to perturb the metric.

d̂!(p, q) = d(p, q) + wp(!) + wq(!)

wp(!) =

!

"

#

0 if ! ! (1" ")tp!" (1" ")tp if (1" ")tp < ! < tp

"! if tp ! !

tp(1! !)tp00

Let tp be the time when point p is removed.

! ! R! " d(p, q) # 2" for all p, q ! !Rips Complex:

Relaxed Rips: ! ! R̂! " d̂!(p, q) # 2" for all p, q ! !

R !

1+"

! R̂! ! R!

Page 57: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Really getting rid of the zigzags.

Page 58: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Really getting rid of the zigzags.

X! =

!

"!!

Q!

Page 59: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Really getting rid of the zigzags.

X! =

!

"!!

Q!

This is (almost) the clique complex of a hierarchical spanner!

Page 60: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

Page 61: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

Page 62: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

Page 63: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

One leaf per point of P.

Page 64: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

One leaf per point of P.Each node u has a representative rep(u) in P and a radius rad(p).

Page 65: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

One leaf per point of P.Each node u has a representative rep(u) in P and a radius rad(p).Three properties:

Page 66: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

One leaf per point of P.Each node u has a representative rep(u) in P and a radius rad(p).Three properties:

1 Inheritance: Every nonleaf u has a child with the same rep.

Page 67: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

One leaf per point of P.Each node u has a representative rep(u) in P and a radius rad(p).Three properties:

1 Inheritance: Every nonleaf u has a child with the same rep.

2 Covering: Every heir is within ball(rep(u), rad(u))

Page 68: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

One leaf per point of P.Each node u has a representative rep(u) in P and a radius rad(p).Three properties:

1 Inheritance: Every nonleaf u has a child with the same rep.

2 Covering: Every heir is within ball(rep(u), rad(u))

3 Packing: Any children v,w of u have d(rep(v),rep(w)) > K rad(u)

Page 69: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Net-trees

One leaf per point of P.Each node u has a representative rep(u) in P and a radius rad(p).Three properties:

1 Inheritance: Every nonleaf u has a child with the same rep.

2 Covering: Every heir is within ball(rep(u), rad(u))

3 Packing: Any children v,w of u have d(rep(v),rep(w)) > K rad(u)

Let up be the ancestor of all nodes represented by p.

Time to remove p: tp = 1!(1!!)rad(parent(up))

Page 70: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Projection onto a net

Page 71: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Projection onto a net

N! = {p ! P : tp " !}

Page 72: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Projection onto a net

N! = {p ! P : tp " !}

Q! is the subcomplex of R̂! induced on N!.

Page 73: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Projection onto a net

N! = {p ! P : tp " !}

!!(p) = arg minq!N!

d̂(p, q)

Q! is the subcomplex of R̂! induced on N!.

Page 74: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

N! is a Delone set.

Projection onto a net

N! = {p ! P : tp " !}

!!(p) = arg minq!N!

d̂(p, q)

Q! is the subcomplex of R̂! induced on N!.

Page 75: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

N! is a Delone set.

Projection onto a net

N! = {p ! P : tp " !}

!!(p) = arg minq!N!

d̂(p, q)

For all p ! P , there is a q ! N!

such that d(p, q) " !(1# !)".1 Covering:

Q! is the subcomplex of R̂! induced on N!.

Page 76: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

N! is a Delone set.

Projection onto a net

N! = {p ! P : tp " !}

!!(p) = arg minq!N!

d̂(p, q)

For all p ! P , there is a q ! N!

such that d(p, q) " !(1# !)".1 Covering:

For all distinct p, q ! N!,d(p, q) " Kpack!(1# !)".

2 Packing:

Q! is the subcomplex of R̂! induced on N!.

Page 77: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

N! is a Delone set.

Projection onto a net

N! = {p ! P : tp " !}

!!(p) = arg minq!N!

d̂(p, q)

For all p, q ! P , d̂(!!(p), q) " d̂(p, q).Key Fact:

For all p ! P , there is a q ! N!

such that d(p, q) " !(1# !)".1 Covering:

For all distinct p, q ! N!,d(p, q) " Kpack!(1# !)".

2 Packing:

Q! is the subcomplex of R̂! induced on N!.

Page 78: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Why is the filtration only linear size?

Page 79: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Why is the filtration only linear size?

Standard trick from Euclidean geometry:

Page 80: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Why is the filtration only linear size?

Standard trick from Euclidean geometry:

1 Charge each simplex to its vertex with the earliest deletion time.

Page 81: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Why is the filtration only linear size?

Standard trick from Euclidean geometry:

1 Charge each simplex to its vertex with the earliest deletion time.

2 Apply a packing argument to the larger neighbors.

Page 82: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Why is the filtration only linear size?

Standard trick from Euclidean geometry:

1 Charge each simplex to its vertex with the earliest deletion time.

2 Apply a packing argument to the larger neighbors.

3 Conclude average O(1) simplices per vertex.

Page 83: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Why is the filtration only linear size?

Standard trick from Euclidean geometry:

1 Charge each simplex to its vertex with the earliest deletion time.

2 Apply a packing argument to the larger neighbors.

3 Conclude average O(1) simplices per vertex.

2O(d2)

Page 84: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Summary

Page 85: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Page 86: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Page 87: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Page 88: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

Page 89: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

The Future

Page 90: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

The FutureDistance to a measure?

Page 91: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

The FutureDistance to a measure?Other types of simplification.

Page 92: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

The FutureDistance to a measure?Other types of simplification.Construct the net-tree in O(n log n) time.

Page 93: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

The FutureDistance to a measure?Other types of simplification.Construct the net-tree in O(n log n) time.An implementation.

Page 94: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

The FutureDistance to a measure?Other types of simplification.Construct the net-tree in O(n log n) time.An implementation.

Thank You.

Page 95: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

SummaryApproximate the VR filtration with a Zigzag filtration.

Remove points using a hierarchical net-tree.

Perturb the metric to straighten out the zigzags.

Use packing arguments to get linear size.

The FutureDistance to a measure?Other types of simplification.Construct the net-tree in O(n log n) time.An implementation.

Thank You.Thank You.

Page 96: SOCG: Linear-Size Approximations to the Vietoris-Rips Filtration

Top Related