socg: linear-size approximations to the vietoris-rips filtration

96

Upload: don-sheehy

Post on 11-May-2015

332 views

Category:

Documents


1 download

DESCRIPTION

The Vietoris-Rips filtration is a versatile tool in topological data analysis. Unfortunately, it is often too large to construct in full. We show how to construct an $O(n)$-size filtered simplicial complex on an $n$-point metric space such that the persistence diagram is a good approximation to that of the Vietoris-Rips filtration. The filtration can be constructed in $O(n\log n)$ time. The constants depend only on the doubling dimension of the metric space and the desired tightness of the approximation. For the first time, this makes it computationally tractable to approximate the persistence diagram of the Vietoris-Rips filtration across all scales for large data sets. Our approach uses a hierarchical net-tree to sparsify the filtration. We can either sparsify the data by throwing out points at larger scales to give a zigzag filtration, or sparsify the underlying graph by throwing out edges at larger scales to give a standard filtration. Both methods yield the same guarantees.

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