Computing Persistent Homology Afra Zomorodian and Gunnar Carlsson.

Post on 01-Apr-2015

258 views 4 download

Transcript of Computing Persistent Homology Afra Zomorodian and Gunnar Carlsson.

Computing Persistent Homology Afra Zomorodian and Gunnar

Carlsson

Motivation•Persistence complexes arise naturally whenever one is attempting to study topological invariants of a space computationally.•Given a complex K, we are interested in it’s kth homology and it’s persistence.•Computers are needed to handle high dimensional spaces.•This presentation will demonstrate an algorithm for computing persistent homology over a field.

Filtered Complex•A filtration of a complex K is a nested sequence of subcomplexes, ∅ = K0 ⊆ K1 ⊆ K2 ⊆ . . . ⊆ Km = K.

Persistence Complex•A filtered simplicial complex, along with its associated chain and boundary maps.

Boundary Operator

Cycles and Boundaries•A chain is a cycle when its boundary is zero•The cycles form a subgroup Zk(К) of chain group Ck(К), which is the kernel of boundary operator: Zk(К) =ker(∂k)

•The elements in Im(∂k+1) are called boundaries.•The k-boundary group of К is the set of boundaries of (k+1)-chains in К, i.e. Its the Image of the (k+1)-chain group• Bk(К)= Im(∂k+1)

Cycles and Boundaries

Homology•A certain general procedure used to associate Modules with a Topological Space

•The kth homology Module is .

•Also depicts the “holes” in the shape created by the Complex K.

/k k kH Z B

Modules•Module over a ring is a generalization of the notion of vector space, wherein the corresponding scalars are allowed to lie in an arbitrary ring.

r(x + y) = rx + ry(r + s)x = rx + sx

(rs)x = r(sx)1Rx = x if R has multiplicative identity 1R

, , ,r s R x y M

Standard matrix representation (1)•The boundary operator performs the following manipulation on the vertices of k-simplices in K

•Which can be written in the form of a matrix with entries {-1,0,1}.

Standard matrix representation (2)• has columns and rows representing the number k and k-1 simplices in K.•The null space (Kernel) of corresponds to . •The Range space corresponds to .•Linear operations on the matrix rows cause basis change in

kmkM 1km

kM kZ

1kB

1kC

Standard matrix representation (3)•The reduction algorithm transforms into its diagonal form with the elementary operations:

•The above mentioned operators also work on columns that correspond to a base change in .

kC

,

1

i j

i i

i j i

r r i j

r r

r zr r z

kM

Algorithm – Methodology•The homology of a Complex K is a vector space of rank=β.

•The standard method for computing homology is the reduction algorithm for the representing matrix .

•Exploring the properties of the Matrices will allow us to deduct the properties of the topological space.

kM

kM

Algorithm – principles•The oriented k-simplices form the standard basis for the kth complex in the chain C.

• Matrix representation reduction.

•Matrix rank Betti numbers

kC

k

Example of a basis•The two solid 1-cycles form a basis for the first homology class of the torus.•The two solid 1-cycles form a basis for the first homology class of the torus

Diagonal form (1)•After reduction we get the following form of the matrix M, now called :•

kM

ˆk k kl rank M rank M

Diagonal form (2)•The basis spans the kernel Z, whereas spans the range B.

| 1i k ke l i m

ˆ |1i i kb e i l

1k k k k k k krank H rankZ rankB m l l

Example (1)

Example (2)•Matrix representation of .•This is the matrix that takes us from 1-simplices to 0-simplices (vertices) in K.

1

Example (3)•The reduced representation for , where:

1M

11

2

0

ad bc cd ab

ac bc ab

, ,

zZ span

z

B span d c c b b a

Algorithm downsides•The reduction algorithm requires elementary operations, where m is the number of simplices in K.

•The entries of the intermediate matrices may become extremely large while maintaining exact values (requires long integer storage word).

•We need to simplify the process

3O m

Homology of Filtration•Given a filtered complex, the ith complex has associated boundary operators , matrices , and groups for all i, k ≥0.

•i is called the filtration index.

iKik

ikM

, , ,i i i ik k k kC Z B H

Persistence•assuming a k-cycle z, created at time i with the arrival of simplex σ into the complex.•The homology class of this cycle, [z], is an element of .•arrival of simplex τ at time j ≥ I, merges [z] with an older class, turning a cycle z’ in [z] into a boundary. •Rank of homology group decreases.

ikH

' ikz B

P Interval•A P-interval is an ordered pair (i, j) with 0 ≤ i < j ∈ Z∞ = Z ∪ {+∞}.

•Describes the the appearance time of a simplex, i, and the disappear time j-1.

•The P interval is the lifetime (j-i-1) of this class in the filtration.

Persistent Homology

•The p-persistent kth homology group of is

•By increasing p sufficiently we “kill” short-term changes – the noise. Over-increasing p will cover the attributes of the space.

iK

,

, ,

/i p i i p ik k k k

i p i pk k

H Z B Z

rank H

Persistence Complex•Moving to the right increases filtration index.•Moving down decreases dimensions

Algorithm over fields•Simplify the standard reduction algorithm by using “The Persistence Module”.

•We compute the P-intervals directly over the field without computing the Persistence Module.

Omer
Define!!!

Mid-conclusion•Add 3.3 from the paper.

Example’ (1)•Compute over .•Persistence Module corresponds to .

•Definition: • is the basis for • is the basis for

2 2 t

ˆ

i

j

e

e1

k

k

C

C

Example’ (2)•Algorithm:•We start from the trivial case ofusing the standard basis to represent .•Extract the matrix rep. to

0 0 00, Z C

1

kM k

je

Example’ (3)•Degrees of simplices in the filtration.

•Where:

ˆdeg deg , degi k je M i j e

Example’ (4)•We bring the Matrix to column echelon form using Gaussian elimination.

1

1 2 22

ad cd t·bc t·ab

z = ac t ·bc t ·ab

zZ

Algorithm•Lemma 4.1 (Echelon Form) The pivots in column echelon form are the same as the diagonal elements in normal form. •Moreover, the degree of the basis elements on pivot rows is the same in both forms.•Let be the column-echelon form for ∂k relative to bases {ej} and for Ck and Zk−1, respectively.

kM ie

Meaning•If row i has pivot then it contributes a P-interval of to . •otherwise, the interval is

•In our case - giving an interval of (1,2) to the description of H0.

kM (i, j) tn

iˆ ˆdeg e , deg e ni 1kH

ˆdeg ,ie

1M (1, 1) = t

Example’ (5)•Next, we wish to find the k+1 matrix using the The base we computed for , since:•

•As we perform the column opertors on to get it to echelon form, we perform the same operators on rows in which causes rows to zero out.

1 10 0k k k kM M

kM

1kM

kZ

Example’ (6)•Since the corresponding rows even out, we might as well erase them manualy and replace the wors with the basis of :

1

1 2 22

ad cd t·bc t·ab

z = ac t ·bc t ·ab

zZ

1Z

Conclusions from example•Matrix in Echelon form gives us all the information we need.•Next dimension matrix is partly eliminated by column operators from the current dimension.

•There is no need for row operators

•There is no need for matrix representation

Data structure•From now on we work with an array T with a slot for each simplex.•we compute homology in all dimensions incrementally and concurrently.

COMPUTE INTERVALS (K)The algorithm stores the list of P-intervals for Hk in Lk.

COMPUTE INTERVALS (K)•New simplex is passed through “RPR” routine to check whether its boundary d corresponds to zero ( ) or pivot. If “zero” – we mark so corresponding row doesn’t get eliminated in k+1.•If is a pivot, we look for the pivot value (maxindex(d)).•We store index j and chain d representing the column in T[i].• •We then perform another pass through the filtration in search of infinite P-intervals: marked simplices whose slot is empty.

jkZ

j

j

int deg ,degi jP erval

REMOVE PIVOT ROWS

•If T[i] is non-empty, a pivot was already stored and we eliminate the row. Otherwise, we found a pivot

Gaussian elimination

Algorithm - results• For our example, the marked 0-simplices {a, b, c, d} and 1-simplices {ad, ac} generate P-intervals L0 = ={(0,∞), (0, 1), (1, 1), (1, 2)} andL1 = {(2, 5), (3, 4)}

,i j

Conclusion•When a 0-simplex is created – H0 is incremented.•When a 1-simplex is created, either H1 is increased or H0 is decreased. Etc…

•each P-interval (i, j) describes a basis element for the homology vector spaces starting at time i (in which he joins ) until time j − 1.•This basis element is a non-bounding k-cycle until filtration index j, till he joins .

jkB

jkZ

i i ik k krank Z rank B

Conclusion•L0 ={(0,∞), (0, 1), (1, 1), (1, 2)}

L1 = {(2, 5), (3, 4)}

Multidimensional FiltrationCOMPUTING MULTIDIMENSIONAL PERSISTENCE

Gunnar Carlsson, Gurjeet Singh, and Afra Zomorodian

SourcesCOMPUTING MULTIDIMENSIONAL PERSISTENCE

Gunnar Carlsson, Gurjeet Singh, and Afra Zomorodian