One standard for comparing symbolic regression methods
Symbolic regression finds a mathematical formula that describes a set of data points. Its results are hard to compare: papers test methods on different problems, with different budgets and different criteria for success. srbf, the Symbolic Regression Benchmark Framework, fixes all three. Every method runs on the same 6,660 problems from 29 published problem sets, at a series of budgets, and every formula a method returns is checked by the same strict rules.
pip install srbf
One of the 6,660 problems · Feynman Lectures II.8.7
- Numeric Recovery: it reproduces 512 points it never saw, almost exactly
- Symbolic Recovery: it has the true formula's form, numbers aside
What srbf does
Published problems
29 problem sets with 6,660 problems: the Feynman equations, the classic benchmark sets, physics collections and machine-generated formulas, from the symbolic-data package. Because they come as one package, a method trained in advance can leave all of them out of its training data.
Any method
Each method runs in its own environment, with whatever PyTorch, Julia or NumPy version it needs. One small Python file connects it.
One judge
Every formula is checked the same way: on 512 points the method never saw, and against the true formula once both are simplified into a standard form.
Budgets and time
Each method runs at a series of budgets. A budget is how much it may search per problem, such as how many candidate formulas it may try, and each is twice the one before, so accuracy can be read against cost. Times are measured on one workstation, one method at a time.
Paired statistics
Methods are compared problem by problem, with 95 % intervals, paired tests and ranks.
Stated settings
Every method is labelled with who chose its settings: its own defaults, its authors, or the benchmark's maintainers. The people who run this benchmark also develop Flash-ANSR, one of the methods compared here.
The 2026-09 release
E2E, NeSymReS and Flash-ANSR are neural networks trained in advance on many machine-generated formulas; given a new problem, they propose formulas without further training. PySR is an evolutionary search. Flash-ANSR comes in three sizes and is also combined with PySR. A baseline, Flash-ANSR prior, ignores the data: it draws random formulas of the kind Flash-ANSR was trained on, fits their numbers and picks one the way Flash-ANSR does. It shows how much Flash-ANSR gains by reading the data. The number after a network's name is its size in millions of parameters (M); T8 is the version of the Flash-ANSR models.
Explore all results: every metric, problem set, budget and time, method by method.
Run it yourself
srbf is a Python package. A method plugs in with one small file, a YAML file describes the evaluation, and four commands take it from a first test to a report.
pip install srbf
srbf new mymethod # a template for your method
srbf check -c config.yaml # a few real problems, step by step
srbf run -c config.yaml -v # the evaluation
srbf analyze -c config.yaml -o report
Cite
srbf accompanies Saegert & Köthe 2026, Breaking the Simplification Bottleneck in Amortized Neural Symbolic Regression (ICML 2026), arXiv:2602.08885. If you publish numbers on a problem set, cite its source as well.
Free and open source, under the MIT licence.