Computing Persistent Homology

Slides:



Advertisements
Similar presentations
Vector Spaces A set V is called a vector space over a set K denoted V(K) if is an Abelian group, is a field, and For every element vV and K there exists.
Advertisements

5.4 Basis And Dimension.
CS 450: COMPUTER GRAPHICS LINEAR ALGEBRA REVIEW SPRING 2015 DR. MICHAEL J. REALE.
8.2 Kernel And Range.
Applied Informatics Štefan BEREŽNÝ
Lecture 19: Parallel Algorithms
Chapter 4 Systems of Linear Equations; Matrices
Linear Algebra Applications in Matlab ME 303. Special Characters and Matlab Functions.
Linear Equations in Linear Algebra
1.2 Row Reduction and Echelon Forms
Linear Equations in Linear Algebra
Solving Systems of Linear Equations Part Pivot a Matrix 2. Gaussian Elimination Method 3. Infinitely Many Solutions 4. Inconsistent System 5. Geometric.
Maths for Computer Graphics
THE DIMENSION OF A VECTOR SPACE
Chapter 2 Basic Linear Algebra
Computational Methods for Management and Economics Carla Gomes
1 Lecture 25: Parallel Algorithms II Topics: matrix, graph, and sort algorithms Tuesday presentations:  Each group: 10 minutes  Describe the problem,
Chapter 3 Determinants and Matrices
Linear Equations in Linear Algebra
Linear Systems and Matrices
Matrices Write and Augmented Matrix of a system of Linear Equations Write the system from the augmented matrix Solve Systems of Linear Equations using.
GROUPS & THEIR REPRESENTATIONS: a card shuffling approach Wayne Lawton Department of Mathematics National University of Singapore S ,
ECON 1150 Matrix Operations Special Matrices
 Row and Reduced Row Echelon  Elementary Matrices.
MA2213 Lecture 5 Linear Equations (Direct Solvers)
Systems of Linear Equation and Matrices
Presentation by: H. Sarper
ME 1202: Linear Algebra & Ordinary Differential Equations (ODEs)
Matrices. Definitions  A matrix is an m x n array of scalars, arranged conceptually as m rows and n columns.  m is referred to as the row dimension.
4.6: Rank. Definition: Let A be an mxn matrix. Then each row of A has n entries and can therefore be associated with a vector in The set of all linear.
Persistent Homology in Topological Data Analysis Ben Fraser May 27, 2015.
2009/9 1 Matrices(§3.8)  A matrix is a rectangular array of objects (usually numbers).  An m  n (“m by n”) matrix has exactly m horizontal rows, and.
Module #9: Matrices Rosen 5 th ed., §2.7 Now we are moving on to matrices, section 7.
Arab Open University Faculty of Computer Studies M132: Linear Algebra
MATH:7450 (22M:305) Topics in Topology: Scientific and Engineering Applications of Algebraic Topology Sept 9, 2013: Create your own homology. Fall 2013.
Linear Transformations
A filtered complex is an increasing sequence of simplicial complexes: C 0 C 1 C 2 … UUU.
Two dimensional arrays A two dimensional m x n array A is a collection of m. n elements such that each element is specified by a pair of integers (such.
4 4.5 © 2016 Pearson Education, Inc. Vector Spaces THE DIMENSION OF A VECTOR SPACE.
MATH:7450 (22M:305) Topics in Topology: Scientific and Engineering Applications of Algebraic Topology Sept 16, 2013: Persistent homology III Fall 2013.
1 1.2 Linear Equations in Linear Algebra Row Reduction and Echelon Forms © 2016 Pearson Education, Ltd.
Linear Algebra Engineering Mathematics-I. Linear Systems in Two Unknowns Engineering Mathematics-I.
Matrices, Vectors, Determinants.
 Matrix Operations  Inverse of a Matrix  Characteristics of Invertible Matrices …
Creating a cell complex = CW complex Building block: n-cells = { x in R n : || x || ≤ 1 } 2-cell = open disk = { x in R 2 : ||x || < 1 } Examples: 0-cell.
Sept 25, 2013: Applicable Triangulations.
7.3 Linear Systems of Equations. Gauss Elimination
PIVOTING The pivot or pivot element is the element of a matrix, or an array, which is selected first by an algorithm (e.g. Gaussian elimination, simplex.
3.1 Clustering Finding a good clustering of the points is a fundamental issue in computing a representative simplicial complex. Mapper does not place any.
Linear Equations in Linear Algebra
We propose a method which can be used to reduce high dimensional data sets into simplicial complexes with far fewer points which can capture topological.
3.1 Clustering Finding a good clustering of the points is a fundamental issue in computing a representative simplicial complex. Mapper does not place any.
Lecture 22: Parallel Algorithms
Fitting Curve Models to Edges
Linear Transformations
Linear Transformations
A filtered complex is an increasing sequence of simplicial complexes: C0 C1 C2 …
GROUPS & THEIR REPRESENTATIONS: a card shuffling approach
Linear Equations in Linear Algebra
Numerical Analysis Lecture 16.
Linear Equations in Linear Algebra
4.6: Rank.
1.3 Vector Equations.
Mathematics for Signals and Systems
Elementary Linear Algebra
Chapter 5: Morse functions and function-induced persistence
Linear Equations in Linear Algebra
NULL SPACES, COLUMN SPACES, AND LINEAR TRANSFORMATIONS
Chapter 3: Simplicial Homology Instructor: Yusu Wang
Chapter 4 Systems of Linear Equations; Matrices
Presentation transcript:

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 Persistence 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.

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

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

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 .

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.

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

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 :

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

Example (1)

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

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

Algorithm downsides We need to simplify the process 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

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.

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.

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.

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.

Mid-conclusion Add 3.3 from the paper.

Example’ (1) is the basis for Compute over . Persistence Module corresponds to . Definition: is the basis for

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

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

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

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.

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.

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.

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

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.

The algorithm stores the list of P-intervals for Hk in Lk. 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.

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

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)} and L1 = {(2, 5), (3, 4)}

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 .

L0 ={(0,∞), (0, 1), (1, 1), (1, 2)} L1 = {(2, 5), (3, 4)} Conclusion L0 ={(0,∞), (0, 1), (1, 1), (1, 2)} L1 = {(2, 5), (3, 4)}

Multidimensional Filtration COMPUTING MULTIDIMENSIONAL PERSISTENCE Gunnar Carlsson, Gurjeet Singh, and Afra Zomorodian

Sources COMPUTING MULTIDIMENSIONAL PERSISTENCE Gunnar Carlsson, Gurjeet Singh, and Afra Zomorodian