1. Deeptime: a Python library for machine learning dynamical models from time series data
- Author
-
J. Nathan Kutz, Steven L. Brunton, Frank Noé, Andreas Mardt, Brian M. de Silva, Stefan Klus, Martin K. Scherer, Moritz Hoffmann, Tim Hempel, Brooke E. Husic, and Hao Wu
- Subjects
FOS: Computer and information sciences ,Computer Science - Machine Learning ,Theoretical computer science ,Computer science ,FOS: Physical sciences ,Machine Learning (stat.ML) ,Dynamical Systems (math.DS) ,01 natural sciences ,010305 fluids & plasmas ,Machine Learning (cs.LG) ,Markov state models ,Artificial Intelligence ,Statistics - Machine Learning ,0103 physical sciences ,FOS: Mathematics ,000 Informatik, Informationswissenschaft, allgemeine Werke::000 Informatik, Wissen, Systeme::004 Datenverarbeitung ,Informatik ,Mathematics - Dynamical Systems ,010306 general physics ,Hidden Markov model ,Mathematical Physics ,computer.programming_language ,system identification ,Markov chain ,business.industry ,Deep learning ,machine-learning ,metastable and coherent sets ,Mathematical Physics (math-ph) ,Python (programming language) ,Computational Physics (physics.comp-ph) ,Human-Computer Interaction ,transfer operators ,Range (mathematics) ,Flow (mathematics) ,Kernel (statistics) ,coarse graining ,time-series analysis ,Relaxation (approximation) ,Artificial intelligence ,business ,computer ,Physics - Computational Physics ,Software - Abstract
Generation and analysis of time-series data is relevant to many quantitative fields ranging from economics to fluid mechanics. In the physical sciences, structures such as metastable and coherent sets, slow relaxation processes, collective variables, dominant transition pathways or manifolds and channels of probability flow can be of great importance for understanding and characterizing the kinetic, thermodynamic and mechanistic properties of the system. Deeptime is a general purpose Python library offering various tools to estimate dynamical models based on time-series data including conventional linear learning methods, such as Markov state models (MSMs), Hidden Markov Models and Koopman models, as well as kernel and deep learning approaches such as VAMPnets and deep MSMs. The library is largely compatible with scikit-learn, having a range of Estimator classes for these different models, but in contrast to scikit-learn also provides deep Model classes, e.g. in the case of an MSM, which provide a multitude of analysis methods to compute interesting thermodynamic, kinetic and dynamical quantities, such as free energies, relaxation times and transition paths. The library is designed for ease of use but also easily maintainable and extensible code. In this paper we introduce the main features and structure of the deeptime software. Deeptime can be found under https://deeptime-ml.github.io/.
- Published
- 2021