In this repository we expolore the ATOL method for automatic feature generation for persistence diagrams (ATOL: Automatic Topologically-Oriented Learning). It is based on Martin Royer's paper and makes use of the corresponding source code(copyright INRIA). Have a look at our blog post for more information.
We also adapt the Perslay codebase to match the API from giotto-tda.
- giotto-tda
- scikit-learn
- joblib
- numpy
- GUDHI
The notebook contains an example of usage for the ATOL layer. We apply it to a graph classification problem and results are comparable to state-of-the-art algorithms.
The dataset we use in the notebook comes from from moleculenet.ai and it is called ClinTox. It contains 1478 drugs molecules labelled in 2 classes: toxic and safe.
Since we are going to use packages from both pip and conda you should have anaconda installed.
Then, in order to run the notebook you should follow these steps:
- Create a new environment with the needed packages
conda env create -f environment.yml
- Activate the environment
conda activate atol-env
Now you should be able to run the notebook!
Enjoy :)