MilesCranmer / symbolic_deep_learning

Code for "Discovering Symbolic Models from Deep Learning with Inductive Biases"

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

This repository is the official implementation of Discovering Symbolic Models from Deep Learning with Inductive Biases.

Miles Cranmer, Alvaro Sanchez-Gonzalez, Peter Battaglia, Rui Xu, Kyle Cranmer, David Spergel, Shirley Ho

Check out our Blog, Paper, Video, and Interactive Demo.

Requirements

For model:

Symbolic regression:

  • PySR, our new open-source Eureqa alternative

For simulations:

  • jax (simple N-body simulations)
  • quijote (Dark matter data; optional)
  • tqdm
  • matplotlib

Training

To train an example model from the paper, try out the demo.

Full model definitions are given in models.py. Data is generated from simulate.py.

Results

We train on simulations produced by the following equations: giving us time series:

We recorded performance for each model: and also measured how well each model's messages correlated with a linear combination of forces:

Finally, we trained on a dark matter simulation and extracted the following equations from the message function:

About

Code for "Discovering Symbolic Models from Deep Learning with Inductive Biases"

License:MIT License


Languages

Language:Python 100.0%