teaspoon: Topological Signal Processing in Python
The emerging field of topological signal processing brings methods from Topological Data Analysis (TDA) to create new tools for signal processing by incorporating aspects of shape. This python package, teaspoon for tsp or topological signal processing, brings together available software for computing persistent homology, the main workhorse of TDA, with modules that expand the functionality of teaspoon as a state-of-the-art topological signal processing tool. These modules include methods for incorporating tools from machine learning, complex networks, information, and parameter selection along with a dynamical systems library to streamline the creation and benchmarking of new methods. All code is open source with up to date documentation, making the code easy to use, in particular for signal processing experts with limited experience in topological methods.
![_images/takens_embedding_gif_v2.gif](_images/takens_embedding_gif_v2.gif)
Table of Contents
- 1. Getting Started
- 2. Modules
- 2.1. Make Data (MakeData) Module
- 2.2. Parameter Selection Module
- 2.2.1. Mutual Information (MI) for time delay (tau).
MI_DV()
MI_basic()
MI_for_delay()
MI_kraskov()
- 2.2.2. Auto-correlation for time delay (tau).
autoCorrelation_tau()
- 2.2.3. Statistical analysis of the Fourier spectrum for time delay (tau).
AbsFFT()
LMSforDelay()
MaximumFrequency()
- 2.2.4. Permutation Auto Mutual Information (PAMI) for time delay (tau).
PAMI_for_delay()
mutualPerm()
- 2.2.5. MsPE for time delay (tau) and dimension (n).
MsPE_n()
MsPE_tau()
- 2.2.6. False Nearest Neighbors (FNN) for dimension (n).
FNN_n()
- 2.3. Signal Processing (SP) Module
- 2.4. Topological Data Analaysis (TDA) Module
- 2.5. Machine Learning (ML) Module
- 3. Example Notebooks
- 4. Contributing
- 5. License
- 6. Citing
Collaborators
The code is a compilation of work done by Elizabeth Munch and Firas Khasawneh along with their students and collaborators. People who have contributed to teaspoon include: