Interpretable Machine Learning for Science with PySR and SymbolicRegression.jl
arXiv:2305.01582
Abstract
PySR is an open-source library for practical symbolic regression, a type of machine learning which aims to discover human-interpretable symbolic models. PySR was developed to democratize and popularize symbolic regression for the sciences, and is built on a high-performance distributed back-end, a flexible search algorithm, and interfaces with several deep learning packages. PySR's internal search algorithm is a multi-population evolutionary algorithm, which consists of a unique evolve-simplify-optimize loop, designed for optimization of unknown scalar constants in newly-discovered empirical expressions. PySR's backend is the extremely optimized Julia library SymbolicRegression.jl, which can be used directly from Julia. It is capable of fusing user-defined operators into SIMD kernels at runtime, performing automatic differentiation, and distributing populations of expressions to thousands of cores across a cluster. In describing this software, we also introduce a new benchmark, "EmpiricalBench," to quantify the applicability of symbolic regression algorithms in science. This benchmark measures recovery of historical empirical equations from original and synthetic datasets.
arXiv comment24 pages, 5 figures, 3 tables. Feedback welcome. Paper source found at https://github.com/MilesCranmer/pysr_paper ; PySR at https://github.com/MilesCranmer/PySR ; SymbolicRegression.jl at https://github.com/MilesCranmer/SymbolicRegression.jl
Cited by in corpus (26)
- KAN-ODEs: Kolmogorov-Arnold Network Ordinary Differential Equations for Learning Dynamical Systems and Hidden Physics
- Discovering interpretable elastoplasticity models via the neural polynomial method enabled symbolic regressions
- A Framework Based on Symbolic Regression Coupled with eXtended Physics-Informed Neural Networks for Gray-Box Learning of Equations of Motion from Data
- Learning Closed-form Equations for Subgrid-scale Closures from High-fidelity Data: Promises and Challenges
- Efficient Generator of Mathematical Expressions for Symbolic Regression
- A precise symbolic emulator of the linear matter power spectrum
- Machine-Learning-Assisted Photonic Device Development: A Multiscale Approach from Theory to Characterization
- TorchSISSO: A PyTorch-Based Implementation of the Sure Independence Screening and Sparsifying Operator for Efficient and Interpretable Model Discovery
- SymbolNet: Neural Symbolic Regression with Adaptive Dynamic Pruning for Compression
- How wavelength affects the hydrodynamic performance of two accelerating mirror-symmetric slender swimmers
- The Inefficiency of Genetic Programming for Symbolic Regression
- Adaptive Uncertainty-Guided Model Selection for Data-Driven PDE Discovery
- cp3-bench: A tool for benchmarking symbolic regression algorithms tested with cosmology
- Improving Genetic Programming for Symbolic Regression with Equality Graphs
- CTSR: Cartesian tensor-based sparse regression for data-driven discovery of high-dimensional invariant governing equations
- rEGGression: an Interactive and Agnostic Tool for the Exploration of Symbolic Regression Models
- Accelerating Graph-based Tracking Tasks with Symbolic Regression
- Numerical Simulation of Three-dimensional High-Lift Configurations Using Data-Driven Turbulence Model
- SINDyG: Sparse Identification of Nonlinear Dynamical Systems from Graph-Structured Data, with Applications to Stuart-Landau Oscillator Networks
- Dimension Reduction for Symbolic Regression
- Neural Infalling Cloud Equations (NICE): Increasing the Efficacy of Subgrid Models and Scientific Equation Discovery using Neural ODEs and Symbolic Regression
- Grammar-based Ordinary Differential Equation Discovery
- The Physics Behind ML-based Quark-Gluon Taggers
- Explainable Hierarchical Deep Learning Neural Networks (Ex-HiDeNN)
- Prompting Neural-Guided Equation Discovery Based on Residuals
- Experimental Design for Missing Physics