Topics

Homology for huge dataset

nukpezah@...
 

Hi Dmitry
I wanted to find if the latest release of Dionysus is optimized for computing persistence homology for huge data sets. I have a huge dataset of morphology metrics (3 dimensions) of 20,000 cells, that is 20,000 points in 3D space. I was trying to calculate the persistence diagrams on a 16 core processor linux machine but the computation kept crushing. My assumption was that it could not handle the millions of simplexes it needs to calculate? Is there a workaround this if this is the issue? Thanks
Jonathan

Dmitriy Morozov
 

What filtration are you using? I.e., what are you trying to compute?
If you have points in 3D, alpha shapes is a natural choice. 20K points
is nothing for alpha shapes, 20M would be doable on a laptop.

You can compute an alpha shape filtration using diode:
https://github.com/mrzv/diode

If you are after something else, you'll have to explain what it is.

Dmitriy

On Sat, Oct 5, 2019 at 10:45 AM <nukpezah@...> wrote:

Hi Dmitry
I wanted to find if the latest release of Dionysus is optimized for computing persistence homology for huge data sets. I have a huge dataset of morphology metrics (3 dimensions) of 20,000 cells, that is 20,000 points in 3D space. I was trying to calculate the persistence diagrams on a 16 core processor linux machine but the computation kept crushing. My assumption was that it could not handle the millions of simplexes it needs to calculate? Is there a workaround this if this is the issue? Thanks
Jonathan

nukpezah@...
 

Hi Dmitri
I was using the rips filtration and trying to compute the persistence bar codes by passing the rips filtration to the dionysus.homology_persistence class and then using the dionysus.init_diagrams on the persistence and the rips filtration to obtain the bar codes. If I understand you right, I should use diode to compute the alpha shape filtration and then pass that into dionysus.homology_persistence class to compute the persistence homology? Thanks
Jonathan

Dmitriy Morozov
 

Again, this depends on the specifics of your application, but if your
data is in 3D, then yes, you can most likely just replace the rips
step with the alpha shapes. In other words, you understood be
correctly.

On Sat, Oct 5, 2019 at 6:30 PM <nukpezah@...> wrote:

Hi Dmitri
I was using the rips filtration and trying to compute the persistence bar codes by passing the rips filtration to the dionysus.homology_persistence class and then using the dionysus.init_diagrams on the persistence and the rips filtration to obtain the bar codes. If I understand you right, I should use diode to compute the alpha shape filtration and then pass that into dionysus.homology_persistence class to compute the persistence homology? Thanks
Jonathan

nukpezah@...
 

Hi Dmitry
Thanks for the clarification. 
Sincerely
Jonathan