Inducing topological �features with PH
Python Course on Topological Methods in Data Analysis, Sebastian Damrich, IAL/HCI/IWR, 27.10.2020
PH on point clouds
Garin, A., & Tauzin, G. (2019).
Pun, C. S. et al. (2018).
PH on point clouds
PH on images
Figures from: Garin, A., & Tauzin, G. (2019).
PH on images - example
Figures from Clough et al. (2019)
Forward and Backward pass of PH
Figures adapted from Clough et al. (2019)
forward pass
Forward and Backward pass of PH
Figures adapted from Clough et al. (2019)
forward pass
loss
Forward and Backward pass of PH
Figures adapted from Clough et al. (2019)
forward pass
loss
backward pass
Forward and Backward pass of PH
Figures adapted from Clough et al. (2019)
forward pass
loss
backward pass
Backward pass PH
�
Figures adapted from Hu, X. et al. (2019).
Backward pass PH
�
Figures adapted from Hu, X. et al. (2019).
Images (current top, � desired bottom)
Persistence diagrams
Matching of diagrams
Backward pass PH
Identify points of birth / death of features�Update according to matched ground truth feature
Figures adapted from Hu, X. et al. (2019).
Backward pass with Gradient Descent
PH is differential�PH can provide gradient of global, topological feature
Use gradient descent to update data (e.g. induce topological feature in image)�Backpropagate to neural network generating the data
But:�Gradient is sparse�Localisation of feature might be unexpected�Pure topology is considered
Examples: CREMI instance segmentation
Use topological loss to guide the training of NN towards topologically relevant part
��Raw data from https://cremi.org/data/, NN by courtesy of Alberto Bailoni
raw
our NN boundary prediction
before topological loss finetuning
GT boundary
Examples: CREMI instance segmenation
Idea by Hu et al. (2019)
Left to right: Raw, optimisation of boundary prediction in conjunction with topological loss�Figure from Hu et al. (2019)
Toy Example: Restore topological features in image
x’ corrupted image�argminx||x-x’||2 + TopoLoss(x)
Loop is “thin” and non-smooth�Single low pixel inside the loop�but near-perfect persistence diagram
�Example adapted from Brüel-Gabrielsson, R. et al. (2019).
corrupted image and �persistence diagram
restored image and persistence diagram
Toy example: Regularise linear model
Y = X * βGT + ε
βOLS = argminβ || Y - X*β ||2
βtop = argminβ || Y - X*β ||2 + TopoLoss(β)
�
Example from Brüel-Gabrielsson, R. et al. (2019).
References
Mapper on scRNAseq data
Project proposal
What is scRNAseq data
scRNAseq stands for “single cell RNA sequencing”
RNA = ½ DNA
Gene expression:� gene: sequence of DNA / RNA responsible for biological behaviour� expression: process of generating a protein from a gene
Measure each cells’s expression strength for many different genes
What does scRNAseq data look like
1 0 0 0 0 34 0 0 2 0 … 4�:�:
What does scRNAseq data really look like?
Dentate Gyrus [1]� - 2999d data� - 24185 points�
�
2D UMAP
Endocrine pancreas [2]� - 3999d data� - 36351 points
� 2D UMAP
[1] A. Bastidas-Ponce et al. (2019)�[2] H. Hochgerner et al. (2018)
Extracting developmental trajectories
Figure from https://scvelo.readthedocs.io/ depicting Endocrine pancreas dataset
Waddington’s epigenetic landscape�Figure from Sandoval et al. (2014)
Project: Mapper on scRNAseq data
Apply Mapper to get graph representation, �ideally showing developmental trajectories
Need to choose filter function � (e.g. L2 distance of gene expression levels)�Perhaps subsample the dataset
��Visualise the graph overlayed on the 2D UMAP embedding
Figure from Nicolau et al. (2011)
References